From 17ee2523c0413440898ab6de6893dc56e9c3472d Mon Sep 17 00:00:00 2001 From: Elias Naur Date: Tue, 15 Feb 2005 11:05:36 +0000 Subject: [PATCH] The Big Generator. All OpenGL and OpenAL java and native source files are now generated from templates. See doc/generator.txt for a detailed description. --- SignatureDump.java | 109 - build.xml | 104 +- doc/generator.txt | 155 + src/java/org/lwjgl/BufferChecks.java | 5 + src/java/org/lwjgl/BufferUtils.java | 25 +- src/java/org/lwjgl/generator/ALTypeMap.java | 215 + src/java/org/lwjgl/generator/ALboolean.java | 48 + src/java/org/lwjgl/generator/ALbyte.java | 48 + src/java/org/lwjgl/generator/ALenum.java | 48 + src/java/org/lwjgl/generator/ALfloat.java | 48 + src/java/org/lwjgl/generator/ALint.java | 48 + src/java/org/lwjgl/generator/ALshort.java | 48 + src/java/org/lwjgl/generator/ALsizei.java | 48 + src/java/org/lwjgl/generator/ALubyte.java | 48 + src/java/org/lwjgl/generator/ALuint.java | 48 + src/java/org/lwjgl/generator/ALvoid.java | 48 + src/java/org/lwjgl/generator/Auto.java | 48 + src/java/org/lwjgl/generator/AutoSize.java | 52 + src/java/org/lwjgl/generator/AutoType.java | 51 + src/java/org/lwjgl/generator/BufferKind.java | 46 + .../org/lwjgl/generator/BufferObject.java | 50 + .../org/lwjgl/generator/CachedResult.java | 46 + src/java/org/lwjgl/generator/Check.java | 48 + src/java/org/lwjgl/generator/Code.java | 47 + src/java/org/lwjgl/generator/Const.java | 46 + src/java/org/lwjgl/generator/Constant.java | 47 + src/java/org/lwjgl/generator/Extension.java | 49 + .../org/lwjgl/generator/FieldsGenerator.java | 75 + src/java/org/lwjgl/generator/GLTypeMap.java | 266 ++ src/java/org/lwjgl/generator/GLbitfield.java | 48 + src/java/org/lwjgl/generator/GLboolean.java | 48 + src/java/org/lwjgl/generator/GLbyte.java | 48 + src/java/org/lwjgl/generator/GLchar.java | 48 + src/java/org/lwjgl/generator/GLcharARB.java | 48 + src/java/org/lwjgl/generator/GLclampd.java | 48 + src/java/org/lwjgl/generator/GLclampf.java | 48 + src/java/org/lwjgl/generator/GLdouble.java | 48 + src/java/org/lwjgl/generator/GLenum.java | 48 + src/java/org/lwjgl/generator/GLfloat.java | 48 + src/java/org/lwjgl/generator/GLhalf.java | 48 + src/java/org/lwjgl/generator/GLhandleARB.java | 48 + src/java/org/lwjgl/generator/GLint.java | 48 + src/java/org/lwjgl/generator/GLintptr.java | 48 + src/java/org/lwjgl/generator/GLintptrARB.java | 48 + src/java/org/lwjgl/generator/GLshort.java | 48 + src/java/org/lwjgl/generator/GLsizei.java | 48 + src/java/org/lwjgl/generator/GLsizeiptr.java | 48 + .../org/lwjgl/generator/GLsizeiptrARB.java | 48 + src/java/org/lwjgl/generator/GLubyte.java | 48 + src/java/org/lwjgl/generator/GLuint.java | 48 + src/java/org/lwjgl/generator/GLushort.java | 48 + src/java/org/lwjgl/generator/GLvoid.java | 48 + .../org/lwjgl/generator/GenerateAutos.java | 46 + .../generator/GeneratorProcessorFactory.java | 131 + .../org/lwjgl/generator/GeneratorVisitor.java | 242 + src/java/org/lwjgl/generator/Indirect.java | 49 + .../lwjgl/generator/JNITypeTranslator.java | 135 + .../lwjgl/generator/JavaMethodsGenerator.java | 416 ++ .../lwjgl/generator/JavaTypeTranslator.java | 136 + src/java/org/lwjgl/generator/Mode.java | 47 + .../generator/NativeMethodStubsGenerator.java | 215 + src/java/org/lwjgl/generator/NativeType.java | 50 + .../lwjgl/generator/NativeTypeTranslator.java | 210 + .../org/lwjgl/generator/NoErrorCheck.java | 49 + .../org/lwjgl/generator/NullTerminated.java | 49 + src/java/org/lwjgl/generator/Platform.java | 82 + .../lwjgl/generator/PlatformDependent.java | 51 + .../lwjgl/generator/PostfixTranslator.java | 187 + .../generator/RegisterStubsGenerator.java | 120 + src/java/org/lwjgl/generator/Result.java | 49 + .../lwjgl/generator/SignatureTranslator.java | 145 + src/java/org/lwjgl/generator/Signedness.java | 46 + .../org/lwjgl/generator/StripPostfix.java | 50 + src/java/org/lwjgl/generator/TypeInfo.java | 216 + src/java/org/lwjgl/generator/TypeMap.java | 67 + .../lwjgl/generator/TypedefsGenerator.java | 93 + src/java/org/lwjgl/generator/Utils.java | 236 + src/java/org/lwjgl/openal/AL10.java | 2197 ++++----- .../org/lwjgl/openal/OpenALException.java | 7 + src/java/org/lwjgl/openal/Util.java | 55 + .../org/lwjgl/opengl/ARBBufferObject.java | 298 +- .../org/lwjgl/opengl/ARBColorBufferFloat.java | 82 +- .../org/lwjgl/opengl/ARBDepthTexture.java | 63 +- src/java/org/lwjgl/opengl/ARBDrawBuffers.java | 85 +- .../org/lwjgl/opengl/ARBFragmentProgram.java | 85 +- .../org/lwjgl/opengl/ARBFragmentShader.java | 61 +- .../org/lwjgl/opengl/ARBHalfFloatPixel.java | 50 +- src/java/org/lwjgl/opengl/ARBImaging.java | 1272 +++-- .../org/lwjgl/opengl/ARBMatrixPalette.java | 126 +- src/java/org/lwjgl/opengl/ARBMultisample.java | 52 +- .../org/lwjgl/opengl/ARBMultitexture.java | 154 +- .../org/lwjgl/opengl/ARBOcclusionQuery.java | 124 +- .../lwjgl/opengl/ARBPixelBufferObject.java | 56 +- .../org/lwjgl/opengl/ARBPointParameters.java | 50 +- src/java/org/lwjgl/opengl/ARBPointSprite.java | 53 +- src/java/org/lwjgl/opengl/ARBProgram.java | 340 +- .../org/lwjgl/opengl/ARBShaderObjects.java | 558 +-- .../lwjgl/opengl/ARBShadingLanguage100.java | 47 +- src/java/org/lwjgl/opengl/ARBShadow.java | 45 +- .../org/lwjgl/opengl/ARBShadowAmbient.java | 41 +- .../lwjgl/opengl/ARBTextureBorderClamp.java | 41 +- .../lwjgl/opengl/ARBTextureCompression.java | 309 +- .../org/lwjgl/opengl/ARBTextureCubeMap.java | 61 +- .../lwjgl/opengl/ARBTextureEnvCombine.java | 79 +- .../org/lwjgl/opengl/ARBTextureEnvDot3.java | 43 +- .../org/lwjgl/opengl/ARBTextureFloat.java | 90 +- .../opengl/ARBTextureMirroredRepeat.java | 39 +- .../org/lwjgl/opengl/ARBTextureRectangle.java | 72 +- .../org/lwjgl/opengl/ARBTransposeMatrix.java | 61 +- src/java/org/lwjgl/opengl/ARBVertexBlend.java | 244 +- .../lwjgl/opengl/ARBVertexBufferObject.java | 80 +- .../org/lwjgl/opengl/ARBVertexProgram.java | 215 +- .../org/lwjgl/opengl/ARBVertexShader.java | 174 +- src/java/org/lwjgl/opengl/ARBWindowPos.java | 51 +- src/java/org/lwjgl/opengl/ATIDrawBuffers.java | 83 +- .../org/lwjgl/opengl/ATIElementArray.java | 93 +- .../org/lwjgl/opengl/ATIEnvmapBumpmap.java | 88 +- .../org/lwjgl/opengl/ATIFragmentShader.java | 303 +- .../org/lwjgl/opengl/ATIMapObjectBuffer.java | 57 +- src/java/org/lwjgl/opengl/ATIPnTriangles.java | 58 +- .../org/lwjgl/opengl/ATISeparateStencil.java | 46 +- .../opengl/ATITextureCompression3DC.java | 40 +- .../org/lwjgl/opengl/ATITextureFloat.java | 65 +- .../lwjgl/opengl/ATITextureMirrorOnce.java | 41 +- .../lwjgl/opengl/ATIVertexArrayObject.java | 215 +- .../opengl/ATIVertexAttribArrayObject.java | 60 +- .../org/lwjgl/opengl/ATIVertexStreams.java | 116 +- .../org/lwjgl/opengl/BufferObjectTracker.java | 30 +- src/java/org/lwjgl/opengl/EXTAbgr.java | 39 +- src/java/org/lwjgl/opengl/EXTBgra.java | 48 +- .../opengl/EXTBlendEquationSeparate.java | 42 +- .../lwjgl/opengl/EXTBlendFuncSeparate.java | 44 +- .../org/lwjgl/opengl/EXTBlendSubtract.java | 48 +- src/java/org/lwjgl/opengl/EXTCgShader.java | 44 +- .../lwjgl/opengl/EXTCompiledVertexArray.java | 44 +- .../org/lwjgl/opengl/EXTDepthBoundsTest.java | 51 +- .../lwjgl/opengl/EXTDrawRangeElements.java | 81 +- src/java/org/lwjgl/opengl/EXTFogCoord.java | 67 +- .../lwjgl/opengl/EXTFramebufferObject.java | 295 +- .../org/lwjgl/opengl/EXTMultiDrawArrays.java | 43 +- .../org/lwjgl/opengl/EXTPackedPixels.java | 47 +- .../org/lwjgl/opengl/EXTPalettedTexture.java | 225 +- .../lwjgl/opengl/EXTPixelBufferObject.java | 57 +- .../org/lwjgl/opengl/EXTPointParameters.java | 51 +- .../org/lwjgl/opengl/EXTRescaleNormal.java | 41 +- .../org/lwjgl/opengl/EXTSecondaryColor.java | 91 +- .../opengl/EXTSeparateSpecularColor.java | 45 +- .../lwjgl/opengl/EXTSharedTexturePalette.java | 41 +- .../org/lwjgl/opengl/EXTStencilTwoSide.java | 38 +- src/java/org/lwjgl/opengl/EXTStencilWrap.java | 41 +- .../opengl/EXTTextureCompressionS3TC.java | 47 +- .../lwjgl/opengl/EXTTextureEnvCombine.java | 80 +- .../org/lwjgl/opengl/EXTTextureEnvDot3.java | 41 +- .../opengl/EXTTextureFilterAnisotropic.java | 43 +- .../org/lwjgl/opengl/EXTTextureLODBias.java | 43 +- .../lwjgl/opengl/EXTTextureMirrorClamp.java | 49 +- .../org/lwjgl/opengl/EXTTextureRectangle.java | 47 +- .../org/lwjgl/opengl/EXTVertexShader.java | 625 ++- .../org/lwjgl/opengl/EXTVertexWeighting.java | 77 +- src/java/org/lwjgl/opengl/GL11.java | 3004 ++++++------ src/java/org/lwjgl/opengl/GL12.java | 271 +- src/java/org/lwjgl/opengl/GL13.java | 615 ++- src/java/org/lwjgl/opengl/GL14.java | 237 +- src/java/org/lwjgl/opengl/GL15.java | 389 +- src/java/org/lwjgl/opengl/GL20.java | 1100 ++--- src/java/org/lwjgl/opengl/GLBufferChecks.java | 49 +- src/java/org/lwjgl/opengl/GLContext.java | 2 +- .../org/lwjgl/opengl/NVCopyDepthToColor.java | 43 +- src/java/org/lwjgl/opengl/NVDepthClamp.java | 41 +- src/java/org/lwjgl/opengl/NVEvaluators.java | 179 +- src/java/org/lwjgl/opengl/NVFence.java | 86 +- src/java/org/lwjgl/opengl/NVFloatBuffer.java | 111 +- src/java/org/lwjgl/opengl/NVFogDistance.java | 45 +- .../org/lwjgl/opengl/NVFragmentProgram.java | 83 +- .../org/lwjgl/opengl/NVFragmentProgram2.java | 52 +- src/java/org/lwjgl/opengl/NVHalfFloat.java | 157 +- .../org/lwjgl/opengl/NVLightMaxExponent.java | 41 +- .../lwjgl/opengl/NVMultisampleFilterHint.java | 43 +- .../org/lwjgl/opengl/NVOcclusionQuery.java | 92 +- .../lwjgl/opengl/NVPackedDepthStencil.java | 43 +- .../org/lwjgl/opengl/NVPixelDataRange.java | 90 +- src/java/org/lwjgl/opengl/NVPointSprite.java | 52 +- .../org/lwjgl/opengl/NVPrimitiveRestart.java | 53 +- src/java/org/lwjgl/opengl/NVProgram.java | 160 +- .../org/lwjgl/opengl/NVRegisterCombiners.java | 232 +- .../lwjgl/opengl/NVRegisterCombiners2.java | 55 +- .../org/lwjgl/opengl/NVTexgenReflection.java | 41 +- .../lwjgl/opengl/NVTextureCompressionVTC.java | 52 +- .../lwjgl/opengl/NVTextureEnvCombine4.java | 47 +- .../lwjgl/opengl/NVTextureExpandNormal.java | 46 +- .../org/lwjgl/opengl/NVTextureRectangle.java | 47 +- .../org/lwjgl/opengl/NVTextureShader.java | 177 +- .../org/lwjgl/opengl/NVTextureShader2.java | 93 +- .../org/lwjgl/opengl/NVTextureShader3.java | 71 +- .../org/lwjgl/opengl/NVVertexArrayRange.java | 79 +- .../org/lwjgl/opengl/NVVertexArrayRange2.java | 39 +- .../org/lwjgl/opengl/NVVertexProgram.java | 577 +-- .../lwjgl/opengl/NVVertexProgram2Option.java | 46 +- .../org/lwjgl/opengl/NVVertexProgram3.java | 45 +- src/java/org/lwjgl/util/GL.java | 62 +- src/java/org/lwjgl/util/GLImpl.java | 60 +- src/java/org/lwjgl/util/IGL.java | 32 +- .../arb/org_lwjgl_opengl_ARBBufferObject.c | 293 +- .../org_lwjgl_opengl_ARBColorBufferFloat.c | 57 +- .../arb/org_lwjgl_opengl_ARBDrawBuffers.c | 62 +- .../common/arb/org_lwjgl_opengl_ARBImaging.c | 926 ++-- .../arb/org_lwjgl_opengl_ARBMatrixPalette.c | 165 +- .../arb/org_lwjgl_opengl_ARBMultisample.c | 57 +- .../arb/org_lwjgl_opengl_ARBMultitexture.c | 328 +- .../arb/org_lwjgl_opengl_ARBOcclusionQuery.c | 192 +- .../arb/org_lwjgl_opengl_ARBPointParameters.c | 80 +- .../common/arb/org_lwjgl_opengl_ARBProgram.c | 282 +- .../arb/org_lwjgl_opengl_ARBShaderObjects.c | 822 +--- .../org_lwjgl_opengl_ARBTextureCompression.c | 254 +- .../arb/org_lwjgl_opengl_ARBTransposeMatrix.c | 78 +- .../arb/org_lwjgl_opengl_ARBVertexBlend.c | 259 +- .../arb/org_lwjgl_opengl_ARBVertexProgram.c | 379 +- .../arb/org_lwjgl_opengl_ARBVertexShader.c | 115 +- .../arb/org_lwjgl_opengl_ARBWindowPos.c | 162 +- .../ati/org_lwjgl_opengl_ATIDrawBuffers.c | 61 +- .../ati/org_lwjgl_opengl_ATIElementArray.c | 119 +- .../ati/org_lwjgl_opengl_ATIEnvmapBumpmap.c | 112 +- .../ati/org_lwjgl_opengl_ATIFragmentShader.c | 326 +- .../ati/org_lwjgl_opengl_ATIMapObjectBuffer.c | 86 +- .../ati/org_lwjgl_opengl_ATIPnTriangles.c | 74 +- .../ati/org_lwjgl_opengl_ATISeparateStencil.c | 76 +- .../org_lwjgl_opengl_ATIVertexArrayObject.c | 293 +- ..._lwjgl_opengl_ATIVertexAttribArrayObject.c | 103 +- .../ati/org_lwjgl_opengl_ATIVertexStreams.c | 406 +- src/native/common/checkALerror.h | 9 - src/native/common/common_tools.c | 4 - src/native/common/common_tools.h | 11 +- ...rg_lwjgl_opengl_EXTBlendEquationSeparate.c | 56 +- .../org_lwjgl_opengl_EXTBlendFuncSeparate.c | 57 +- .../org_lwjgl_opengl_EXTCompiledVertexArray.c | 76 +- .../ext/org_lwjgl_opengl_EXTDepthBoundsTest.c | 56 +- .../org_lwjgl_opengl_EXTDrawRangeElements.c | 75 +- .../common/ext/org_lwjgl_opengl_EXTFogCoord.c | 98 +- .../org_lwjgl_opengl_EXTFramebufferObject.c | 390 +- .../ext/org_lwjgl_opengl_EXTMultiDrawArrays.c | 63 +- .../ext/org_lwjgl_opengl_EXTPalettedTexture.c | 133 +- .../ext/org_lwjgl_opengl_EXTPointParameters.c | 80 +- .../ext/org_lwjgl_opengl_EXTSecondaryColor.c | 124 +- .../ext/org_lwjgl_opengl_EXTStencilTwoSide.c | 56 +- .../ext/org_lwjgl_opengl_EXTVertexShader.c | 846 +--- .../ext/org_lwjgl_opengl_EXTVertexWeighting.c | 95 +- src/native/common/extal.h | 5 - src/native/common/extgl.h | 10 +- .../common/nv/org_lwjgl_opengl_NVEvaluators.c | 229 +- .../common/nv/org_lwjgl_opengl_NVFence.c | 171 +- .../nv/org_lwjgl_opengl_NVFragmentProgram.c | 79 +- .../common/nv/org_lwjgl_opengl_NVHalfFloat.c | 494 +- .../nv/org_lwjgl_opengl_NVOcclusionQuery.c | 175 +- .../nv/org_lwjgl_opengl_NVPixelDataRange.c | 78 +- .../nv/org_lwjgl_opengl_NVPointSprite.c | 80 +- .../nv/org_lwjgl_opengl_NVPrimitiveRestart.c | 76 +- .../common/nv/org_lwjgl_opengl_NVProgram.c | 228 +- .../nv/org_lwjgl_opengl_NVRegisterCombiners.c | 262 +- .../org_lwjgl_opengl_NVRegisterCombiners2.c | 78 +- .../nv/org_lwjgl_opengl_NVVertexArrayRange.c | 147 +- .../nv/org_lwjgl_opengl_NVVertexProgram.c | 540 +-- src/native/common/org_lwjgl_openal_AL10.c | 968 ++-- src/native/common/org_lwjgl_opengl_GL11.c | 4191 ++++++----------- src/native/common/org_lwjgl_opengl_GL12.c | 185 +- src/native/common/org_lwjgl_opengl_GL13.c | 518 +- src/native/common/org_lwjgl_opengl_GL14.c | 443 +- src/native/common/org_lwjgl_opengl_GL15.c | 453 +- src/native/common/org_lwjgl_opengl_GL20.c | 1633 ++----- src/native/linux/Makefile | 2 +- src/templates/org/lwjgl/openal/AL10.java | 1207 +++++ .../org/lwjgl/opengl/ARB_buffer_object.java | 127 + .../lwjgl/opengl/ARB_color_buffer_float.java | 77 + .../org/lwjgl/opengl/ARB_depth_texture.java | 54 + .../org/lwjgl/opengl/ARB_draw_buffers.java | 64 + .../lwjgl/opengl/ARB_fragment_program.java | 68 + .../org/lwjgl/opengl/ARB_fragment_shader.java | 54 + .../lwjgl/opengl/ARB_half_float_pixel.java | 44 + .../org/lwjgl/opengl/ARB_imaging.java | 298 ++ .../org/lwjgl/opengl/ARB_matrix_palette.java | 71 + .../org/lwjgl/opengl/ARB_multisample.java | 49 + .../org/lwjgl/opengl/ARB_multitexture.java | 101 + .../org/lwjgl/opengl/ARB_occlusion_query.java | 77 + .../lwjgl/opengl/ARB_pixel_buffer_object.java | 49 + .../lwjgl/opengl/ARB_point_parameters.java | 49 + .../org/lwjgl/opengl/ARB_point_sprite.java | 51 + .../org/lwjgl/opengl/ARB_program.java | 163 + .../org/lwjgl/opengl/ARB_shader_objects.java | 227 + .../opengl/ARB_shading_language_100.java | 39 + .../org/lwjgl/opengl/ARB_shadow.java | 38 + .../org/lwjgl/opengl/ARB_shadow_ambient.java | 36 + .../opengl/ARB_texture_border_clamp.java | 36 + .../lwjgl/opengl/ARB_texture_compression.java | 125 + .../lwjgl/opengl/ARB_texture_cube_map.java | 47 + .../lwjgl/opengl/ARB_texture_env_combine.java | 56 + .../lwjgl/opengl/ARB_texture_env_dot3.java | 37 + .../org/lwjgl/opengl/ARB_texture_float.java | 67 + .../opengl/ARB_texture_mirrored_repeat.java | 36 + .../lwjgl/opengl/ARB_texture_rectangle.java | 65 + .../lwjgl/opengl/ARB_transpose_matrix.java | 49 + .../org/lwjgl/opengl/ARB_vertex_blend.java | 117 + .../opengl/ARB_vertex_buffer_object.java | 64 + .../org/lwjgl/opengl/ARB_vertex_program.java | 134 + .../org/lwjgl/opengl/ARB_vertex_shader.java | 118 + .../org/lwjgl/opengl/ARB_window_pos.java | 49 + .../org/lwjgl/opengl/ATI_draw_buffers.java | 62 + .../org/lwjgl/opengl/ATI_element_array.java | 58 + .../org/lwjgl/opengl/ATI_envmap_bumpmap.java | 58 + .../org/lwjgl/opengl/ATI_fragment_shader.java | 177 + .../lwjgl/opengl/ATI_map_object_buffer.java | 57 + .../org/lwjgl/opengl/ATI_pn_triangles.java | 50 + .../lwjgl/opengl/ATI_separate_stencil.java | 45 + .../opengl/ATI_texture_compression_3dc.java | 39 + .../org/lwjgl/opengl/ATI_texture_float.java | 51 + .../lwjgl/opengl/ATI_texture_mirror_once.java | 37 + .../lwjgl/opengl/ATI_vertex_array_object.java | 91 + .../ATI_vertex_attrib_array_object.java | 46 + .../org/lwjgl/opengl/ATI_vertex_streams.java | 79 + src/templates/org/lwjgl/opengl/EXT_abgr.java | 36 + src/templates/org/lwjgl/opengl/EXT_bgra.java | 42 + .../opengl/EXT_blend_equation_separate.java | 45 + .../lwjgl/opengl/EXT_blend_func_separate.java | 43 + .../org/lwjgl/opengl/EXT_blend_subtract.java | 42 + .../org/lwjgl/opengl/EXT_cg_shader.java | 43 + .../opengl/EXT_compiled_vertex_array.java | 43 + .../lwjgl/opengl/EXT_depth_bounds_test.java | 51 + .../lwjgl/opengl/EXT_draw_range_elements.java | 52 + .../org/lwjgl/opengl/EXT_fog_coord.java | 57 + .../lwjgl/opengl/EXT_framebuffer_object.java | 164 + .../lwjgl/opengl/EXT_multi_draw_arrays.java | 43 + .../org/lwjgl/opengl/EXT_packed_pixels.java | 40 + .../lwjgl/opengl/EXT_paletted_texture.java | 98 + .../lwjgl/opengl/EXT_pixel_buffer_object.java | 49 + .../lwjgl/opengl/EXT_point_parameters.java | 48 + .../org/lwjgl/opengl/EXT_rescale_normal.java | 36 + .../org/lwjgl/opengl/EXT_secondary_color.java | 62 + .../opengl/EXT_separate_specular_color.java | 38 + .../opengl/EXT_shared_texture_palette.java | 36 + .../lwjgl/opengl/EXT_stencil_two_side.java | 41 + .../org/lwjgl/opengl/EXT_stencil_wrap.java | 37 + .../opengl/EXT_texture_compression_s3tc.java | 42 + .../lwjgl/opengl/EXT_texture_env_combine.java | 57 + .../lwjgl/opengl/EXT_texture_env_dot3.java | 37 + .../EXT_texture_filter_anisotropic.java | 37 + .../lwjgl/opengl/EXT_texture_lod_bias.java | 41 + .../opengl/EXT_texture_mirror_clamp.java | 44 + .../lwjgl/opengl/EXT_texture_rectangle.java | 39 + .../org/lwjgl/opengl/EXT_vertex_shader.java | 268 ++ .../lwjgl/opengl/EXT_vertex_weighting.java | 62 + src/templates/org/lwjgl/opengl/GL11.java | 1140 +++++ src/templates/org/lwjgl/opengl/GL12.java | 128 + src/templates/org/lwjgl/opengl/GL13.java | 243 + src/templates/org/lwjgl/opengl/GL14.java | 138 + src/templates/org/lwjgl/opengl/GL15.java | 174 + src/templates/org/lwjgl/opengl/GL20.java | 473 ++ .../lwjgl/opengl/NV_copy_depth_to_color.java | 37 + .../org/lwjgl/opengl/NV_depth_clamp.java | 36 + .../org/lwjgl/opengl/NV_evaluators.java | 90 + src/templates/org/lwjgl/opengl/NV_fence.java | 55 + .../org/lwjgl/opengl/NV_float_buffer.java | 85 + .../org/lwjgl/opengl/NV_fog_distance.java | 38 + .../org/lwjgl/opengl/NV_fragment_program.java | 64 + .../lwjgl/opengl/NV_fragment_program2.java | 43 + .../org/lwjgl/opengl/NV_half_float.java | 96 + .../lwjgl/opengl/NV_light_max_exponent.java | 37 + .../opengl/NV_multisample_filter_hint.java | 40 + .../org/lwjgl/opengl/NV_occlusion_query.java | 60 + .../lwjgl/opengl/NV_packed_depth_stencil.java | 37 + .../org/lwjgl/opengl/NV_pixel_data_range.java | 72 + .../org/lwjgl/opengl/NV_point_sprite.java | 47 + .../lwjgl/opengl/NV_primitive_restart.java | 54 + .../org/lwjgl/opengl/NV_program.java | 91 + .../lwjgl/opengl/NV_register_combiners.java | 122 + .../lwjgl/opengl/NV_register_combiners2.java | 46 + .../lwjgl/opengl/NV_texgen_reflection.java | 37 + .../opengl/NV_texture_compression_vtc.java | 47 + .../lwjgl/opengl/NV_texture_env_combine4.java | 40 + .../opengl/NV_texture_expand_normal.java | 41 + .../lwjgl/opengl/NV_texture_rectangle.java | 39 + .../org/lwjgl/opengl/NV_texture_shader.java | 105 + .../org/lwjgl/opengl/NV_texture_shader2.java | 63 + .../org/lwjgl/opengl/NV_texture_shader3.java | 52 + .../lwjgl/opengl/NV_vertex_array_range.java | 61 + .../lwjgl/opengl/NV_vertex_array_range2.java | 36 + .../org/lwjgl/opengl/NV_vertex_program.java | 272 ++ .../opengl/NV_vertex_program2_option.java | 40 + .../org/lwjgl/opengl/NV_vertex_program3.java | 40 + 386 files changed, 30503 insertions(+), 26177 deletions(-) delete mode 100644 SignatureDump.java create mode 100644 doc/generator.txt create mode 100644 src/java/org/lwjgl/generator/ALTypeMap.java create mode 100644 src/java/org/lwjgl/generator/ALboolean.java create mode 100644 src/java/org/lwjgl/generator/ALbyte.java create mode 100644 src/java/org/lwjgl/generator/ALenum.java create mode 100644 src/java/org/lwjgl/generator/ALfloat.java create mode 100644 src/java/org/lwjgl/generator/ALint.java create mode 100644 src/java/org/lwjgl/generator/ALshort.java create mode 100644 src/java/org/lwjgl/generator/ALsizei.java create mode 100644 src/java/org/lwjgl/generator/ALubyte.java create mode 100644 src/java/org/lwjgl/generator/ALuint.java create mode 100644 src/java/org/lwjgl/generator/ALvoid.java create mode 100644 src/java/org/lwjgl/generator/Auto.java create mode 100644 src/java/org/lwjgl/generator/AutoSize.java create mode 100644 src/java/org/lwjgl/generator/AutoType.java create mode 100644 src/java/org/lwjgl/generator/BufferKind.java create mode 100644 src/java/org/lwjgl/generator/BufferObject.java create mode 100644 src/java/org/lwjgl/generator/CachedResult.java create mode 100644 src/java/org/lwjgl/generator/Check.java create mode 100644 src/java/org/lwjgl/generator/Code.java create mode 100644 src/java/org/lwjgl/generator/Const.java create mode 100644 src/java/org/lwjgl/generator/Constant.java create mode 100644 src/java/org/lwjgl/generator/Extension.java create mode 100644 src/java/org/lwjgl/generator/FieldsGenerator.java create mode 100644 src/java/org/lwjgl/generator/GLTypeMap.java create mode 100644 src/java/org/lwjgl/generator/GLbitfield.java create mode 100644 src/java/org/lwjgl/generator/GLboolean.java create mode 100644 src/java/org/lwjgl/generator/GLbyte.java create mode 100644 src/java/org/lwjgl/generator/GLchar.java create mode 100644 src/java/org/lwjgl/generator/GLcharARB.java create mode 100644 src/java/org/lwjgl/generator/GLclampd.java create mode 100644 src/java/org/lwjgl/generator/GLclampf.java create mode 100644 src/java/org/lwjgl/generator/GLdouble.java create mode 100644 src/java/org/lwjgl/generator/GLenum.java create mode 100644 src/java/org/lwjgl/generator/GLfloat.java create mode 100644 src/java/org/lwjgl/generator/GLhalf.java create mode 100644 src/java/org/lwjgl/generator/GLhandleARB.java create mode 100644 src/java/org/lwjgl/generator/GLint.java create mode 100644 src/java/org/lwjgl/generator/GLintptr.java create mode 100644 src/java/org/lwjgl/generator/GLintptrARB.java create mode 100644 src/java/org/lwjgl/generator/GLshort.java create mode 100644 src/java/org/lwjgl/generator/GLsizei.java create mode 100644 src/java/org/lwjgl/generator/GLsizeiptr.java create mode 100644 src/java/org/lwjgl/generator/GLsizeiptrARB.java create mode 100644 src/java/org/lwjgl/generator/GLubyte.java create mode 100644 src/java/org/lwjgl/generator/GLuint.java create mode 100644 src/java/org/lwjgl/generator/GLushort.java create mode 100644 src/java/org/lwjgl/generator/GLvoid.java create mode 100644 src/java/org/lwjgl/generator/GenerateAutos.java create mode 100644 src/java/org/lwjgl/generator/GeneratorProcessorFactory.java create mode 100644 src/java/org/lwjgl/generator/GeneratorVisitor.java create mode 100644 src/java/org/lwjgl/generator/Indirect.java create mode 100644 src/java/org/lwjgl/generator/JNITypeTranslator.java create mode 100644 src/java/org/lwjgl/generator/JavaMethodsGenerator.java create mode 100644 src/java/org/lwjgl/generator/JavaTypeTranslator.java create mode 100644 src/java/org/lwjgl/generator/Mode.java create mode 100644 src/java/org/lwjgl/generator/NativeMethodStubsGenerator.java create mode 100644 src/java/org/lwjgl/generator/NativeType.java create mode 100644 src/java/org/lwjgl/generator/NativeTypeTranslator.java create mode 100644 src/java/org/lwjgl/generator/NoErrorCheck.java create mode 100644 src/java/org/lwjgl/generator/NullTerminated.java create mode 100644 src/java/org/lwjgl/generator/Platform.java create mode 100644 src/java/org/lwjgl/generator/PlatformDependent.java create mode 100644 src/java/org/lwjgl/generator/PostfixTranslator.java create mode 100644 src/java/org/lwjgl/generator/RegisterStubsGenerator.java create mode 100644 src/java/org/lwjgl/generator/Result.java create mode 100644 src/java/org/lwjgl/generator/SignatureTranslator.java create mode 100644 src/java/org/lwjgl/generator/Signedness.java create mode 100644 src/java/org/lwjgl/generator/StripPostfix.java create mode 100644 src/java/org/lwjgl/generator/TypeInfo.java create mode 100644 src/java/org/lwjgl/generator/TypeMap.java create mode 100644 src/java/org/lwjgl/generator/TypedefsGenerator.java create mode 100644 src/java/org/lwjgl/generator/Utils.java create mode 100644 src/java/org/lwjgl/openal/Util.java create mode 100644 src/templates/org/lwjgl/openal/AL10.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_buffer_object.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_color_buffer_float.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_depth_texture.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_draw_buffers.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_fragment_program.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_fragment_shader.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_half_float_pixel.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_imaging.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_matrix_palette.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_multisample.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_multitexture.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_occlusion_query.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_pixel_buffer_object.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_point_parameters.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_point_sprite.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_program.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_shader_objects.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_shading_language_100.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_shadow.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_shadow_ambient.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_texture_border_clamp.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_texture_compression.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_texture_cube_map.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_texture_env_combine.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_texture_env_dot3.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_texture_float.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_texture_mirrored_repeat.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_texture_rectangle.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_transpose_matrix.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_vertex_blend.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_vertex_buffer_object.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_vertex_program.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_vertex_shader.java create mode 100644 src/templates/org/lwjgl/opengl/ARB_window_pos.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_draw_buffers.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_element_array.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_envmap_bumpmap.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_fragment_shader.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_map_object_buffer.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_pn_triangles.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_separate_stencil.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_texture_compression_3dc.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_texture_float.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_texture_mirror_once.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_vertex_array_object.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_vertex_attrib_array_object.java create mode 100644 src/templates/org/lwjgl/opengl/ATI_vertex_streams.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_abgr.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_bgra.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_blend_equation_separate.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_blend_func_separate.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_blend_subtract.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_cg_shader.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_compiled_vertex_array.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_depth_bounds_test.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_draw_range_elements.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_fog_coord.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_framebuffer_object.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_multi_draw_arrays.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_packed_pixels.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_paletted_texture.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_pixel_buffer_object.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_point_parameters.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_rescale_normal.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_secondary_color.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_separate_specular_color.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_shared_texture_palette.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_stencil_two_side.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_stencil_wrap.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_texture_compression_s3tc.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_texture_env_combine.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_texture_env_dot3.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_texture_filter_anisotropic.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_texture_lod_bias.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_texture_mirror_clamp.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_texture_rectangle.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_vertex_shader.java create mode 100644 src/templates/org/lwjgl/opengl/EXT_vertex_weighting.java create mode 100644 src/templates/org/lwjgl/opengl/GL11.java create mode 100644 src/templates/org/lwjgl/opengl/GL12.java create mode 100644 src/templates/org/lwjgl/opengl/GL13.java create mode 100644 src/templates/org/lwjgl/opengl/GL14.java create mode 100644 src/templates/org/lwjgl/opengl/GL15.java create mode 100644 src/templates/org/lwjgl/opengl/GL20.java create mode 100644 src/templates/org/lwjgl/opengl/NV_copy_depth_to_color.java create mode 100644 src/templates/org/lwjgl/opengl/NV_depth_clamp.java create mode 100644 src/templates/org/lwjgl/opengl/NV_evaluators.java create mode 100644 src/templates/org/lwjgl/opengl/NV_fence.java create mode 100644 src/templates/org/lwjgl/opengl/NV_float_buffer.java create mode 100644 src/templates/org/lwjgl/opengl/NV_fog_distance.java create mode 100644 src/templates/org/lwjgl/opengl/NV_fragment_program.java create mode 100644 src/templates/org/lwjgl/opengl/NV_fragment_program2.java create mode 100644 src/templates/org/lwjgl/opengl/NV_half_float.java create mode 100644 src/templates/org/lwjgl/opengl/NV_light_max_exponent.java create mode 100644 src/templates/org/lwjgl/opengl/NV_multisample_filter_hint.java create mode 100644 src/templates/org/lwjgl/opengl/NV_occlusion_query.java create mode 100644 src/templates/org/lwjgl/opengl/NV_packed_depth_stencil.java create mode 100644 src/templates/org/lwjgl/opengl/NV_pixel_data_range.java create mode 100644 src/templates/org/lwjgl/opengl/NV_point_sprite.java create mode 100644 src/templates/org/lwjgl/opengl/NV_primitive_restart.java create mode 100644 src/templates/org/lwjgl/opengl/NV_program.java create mode 100644 src/templates/org/lwjgl/opengl/NV_register_combiners.java create mode 100644 src/templates/org/lwjgl/opengl/NV_register_combiners2.java create mode 100644 src/templates/org/lwjgl/opengl/NV_texgen_reflection.java create mode 100644 src/templates/org/lwjgl/opengl/NV_texture_compression_vtc.java create mode 100644 src/templates/org/lwjgl/opengl/NV_texture_env_combine4.java create mode 100644 src/templates/org/lwjgl/opengl/NV_texture_expand_normal.java create mode 100644 src/templates/org/lwjgl/opengl/NV_texture_rectangle.java create mode 100644 src/templates/org/lwjgl/opengl/NV_texture_shader.java create mode 100644 src/templates/org/lwjgl/opengl/NV_texture_shader2.java create mode 100644 src/templates/org/lwjgl/opengl/NV_texture_shader3.java create mode 100644 src/templates/org/lwjgl/opengl/NV_vertex_array_range.java create mode 100644 src/templates/org/lwjgl/opengl/NV_vertex_array_range2.java create mode 100644 src/templates/org/lwjgl/opengl/NV_vertex_program.java create mode 100644 src/templates/org/lwjgl/opengl/NV_vertex_program2_option.java create mode 100644 src/templates/org/lwjgl/opengl/NV_vertex_program3.java diff --git a/SignatureDump.java b/SignatureDump.java deleted file mode 100644 index b4f408bd..00000000 --- a/SignatureDump.java +++ /dev/null @@ -1,109 +0,0 @@ -import java.lang.reflect.*; - -public final class SignatureDump { - public final static void main(String[] args) { - String class_name = args[0]; - try { - Class clazz = Class.forName(class_name); - Method[] methods = clazz.getDeclaredMethods(); - System.out.println("\tJavaMethodAndExtFunction functions[] = {"); - for (int i = 0; i < methods.length; i++) { - Method method = methods[i]; - int modifiers = method.getModifiers(); - if (!Modifier.isNative(modifiers)) - continue; - System.out.print("\t\t"); - System.out.print("{\""); - System.out.print(method.getName()); - System.out.print("\", \""); - System.out.print(getMethodSignature(method)); - System.out.print("\", (void*)&"); - System.out.print(getMethodMangled(class_name, method)); - System.out.print(", "); - String gl_name = getExtFunctionName(method); - if (gl_name != null) { - System.out.print("\""); - System.out.print(gl_name); - System.out.print("\""); - } else - System.out.print("NULL"); - System.out.print(", "); - if (gl_name != null) { - System.out.print("(void*)&"); - System.out.print(gl_name); - } else - System.out.print("NULL"); - System.out.print("}"); - if (i != methods.length - 1) - System.out.print(","); - System.out.println(); - } - System.out.print("\t};"); - System.out.println(); - System.out.println("\tint num_functions = NUMFUNCTIONS(functions);"); - System.out.print("\tjclass clazz = ext_ResetClass(env, \""); - String class_name_mangled = clazz.getName().replaceAll("\\.", "/"); - System.out.print(class_name_mangled); - System.out.println("\");"); - System.out.println("\tif (extgl_Extensions.)"); - System.out.println("\t\text_InitializeClass(env, clazz, ext_set, , num_functions, functions);"); - } catch (ClassNotFoundException e) { - throw new RuntimeException(e); - } - } - - private final static String getExtFunctionName(Method method) { - String name = method.getName(); - if (name.charAt(0) == 'n') - name = name.substring(1); - if (name.endsWith("VBO")) - return null; - return name; - } - - private final static String getMethodMangled(String class_name, Method method) { - class_name = class_name.replaceAll("\\.", "_"); - String mangled = "Java_" + class_name + "_" + method.getName(); - return mangled; - } - - private final static String getMethodSignature(Method method) { - Class[] arg_types = method.getParameterTypes(); - String signature = "("; - for (int i = 0; i < arg_types.length; i++) - signature += getTypeSignature(arg_types[i]); - Class return_type = method.getReturnType(); - signature += ")"; - signature += getTypeSignature(return_type); - return signature; - } - - private final static String getTypeSignature(Class type) { - if (type.equals(Boolean.class)) - return "Z"; - else if (type.equals(int.class)) - return "I"; - else if (type.equals(float.class)) - return "F"; - else if (type.equals(short.class)) - return "S"; - else if (type.equals(double.class)) - return "D"; - else if (type.equals(boolean.class)) - return "Z"; - else if (type.equals(byte.class)) - return "B"; - else if (type.equals(void.class)) - return "V"; - else if (type.equals(char.class)) - throw new RuntimeException(); - else if (type.equals(long.class)) - throw new RuntimeException(); - else if (type.isArray()) - throw new RuntimeException(); - else { - String type_name = type.getName().replaceAll("\\.", "/"); - return "L" + type_name + ";"; - } - } -} diff --git a/build.xml b/build.xml index e60d886d..9b2eff20 100644 --- a/build.xml +++ b/build.xml @@ -6,6 +6,7 @@ + @@ -198,9 +199,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + diff --git a/doc/generator.txt b/doc/generator.txt new file mode 100644 index 00000000..a4c0ce2b --- /dev/null +++ b/doc/generator.txt @@ -0,0 +1,155 @@ +The binding generator +-------------------------------------------------------------------- + +OpenGL and OpenAL binding methods are now generated by the generator tool +located in org.lwjgl.generator.*. This includes the OpenGL java source files in +org.lwjgl.opengl.* and the OpenAL source files in org.lwjgl.openal.*. The +generator itself is based on the Annotation Processing +Tool, 'apt', bundled with the 1.5 JDK. The initial implementation is designed +to completely replace the manually generated java and native source, but not +introduce any new functionality. The user-visible bindings API will not +change. Later, having the source generated will make it much easier to +implement additional binding features. Examples include: + +1. Support for multiple contexts and consequently multiple function pointer +sets. This feature along with support for an AWT compatible OpenGL Canvas is +my primary motivation for the generator. +2. Support for java native arrays. +3. More extensive debugging and checking. +4. Changes in the naming convention (e.g., removing the 'gl' prefix). + +Note that all additional features can be enabled/disabled at build time, +according the performance and conformance requirements. + +You're invited to browse the generator source, the templates and the generated +source to get a feel of how the generator works. + +Requirements +------------ +The generator needs a JDK 1.5, since template files depend on annotations and +the generator itself works as an annotation processor in the APT framework. +Since we support Mac OS X which does not include java 1.5 yet, the generated +files are still in CVS and the generator is not invoked in a default build. + +How to use it +------------- +The generator is invoked from ant with 'ant generate-openal', 'ant +generate-opengl' or simply 'ant generate-all'. + +How it works +------------ +The generator reads template files from src/templates. Template files are +regular java interfaces containing zero or more constant fields and zero or +more annotated methods. Each interface will generate a java source file in +src/java and, if needed, a native source file in src/native/common. + +Template file format +-------------------- +A template file is a regular java interface with annotations describing the +information that cannot be represented in a regular java source file. An +example template file is listed here: + +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface EXT_blend_equation_separate { + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_BLEND_EQUATION_RGB_EXT = + 0x8009; + public static final int GL_BLEND_EQUATION_ALPHA_EXT + = 0x883D; + + public void glBlendEquationSeparateEXT(@GLenum + int modeRGB, @GLenum int modeAlpha); +} + +The template file is named after the extension name or GL*/AL*, and there is exactly one method +for each function symbol in the extension. The method name will be used to +look up the symbol in the driver, so make sure it is correct. + +Apart from the naming convention of the interface, the most notable annotation +group is the native types. As can be seen from the example, the modeRGB and +modeAlpha parameters is annotated with @GLenum to tell the generator which +native type the parameter has. If the native type is not specified the native +type is defaulted to the corresponding native type. For example, the +corresponding native type for 'int' is GLint when generating OpenGL source and +ALint when generating OpenAL source. + +Another important feature is the multityped methods. An example: + +public void glVertexPointer(int size, @AutoType("pointer") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLint + @GLfloat + Buffer + pointer); + +Note that the parameter 'pointer' is annotated with multiple native types and +is a java.nio.Buffer. This tells generator to generate multiple versions of +glVertexPointer, one for each native type. Additionally, the @AutoType +annotation tells the generator to automatically generate a type from the +Buffer type. The generated source looks like this: + +public static void glVertexPointer(int size, int stride, IntBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglVertexPointer(size, GL11.GL_INT, stride, pointer, pointer.position() << 2); +} +public static void glVertexPointer(int size, int stride, FloatBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglVertexPointer(size, GL11.GL_FLOAT, stride, pointer, pointer.position() << 2); +} +private static native void nglVertexPointer(int size, int type, int stride, Buffer pointer, int pointer_position); + +Notice how the type parameter is not included in the public method and that +its value is pre-computed by the generator. @AutoSize specifies that the +remaining() of a Buffer argument should be inserted (In this case, a @Check is +not necessary). A more complex case is when both +the signed and unsigned native type mapping to one java type is specified. In +that case the generator creates an 'unsigned' boolean parameter that selects the +desired type. See GL11.glColorPointer for an example of this. + +The @BufferObject annotation is used to specify VBO or PBO support. It tells the generator that the +parameter can take an integer offset and a separate buffer object method +version should be created. The generated code looks like this: + +public static void glVertexPointer(int size, int type, int stride, int pointer_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglVertexPointerBO(size, type, stride, pointer_buffer_offset); +} +private static native void nglVertexPointerBO(int size, int type, int stride, int pointer_buffer_offset); + +The @Check annotation specify how a buffer argument is to be checked. @Check +with no value implies a simple BufferChecks.checkDirect() check, while a +non-empty value indicates a BufferChecks.checkBuffer() check. Additionally, +canBeNull can be specified to allow null arguments. The default value for +canBeNull is false. + +The @StripPostfix annotation is specified to strip the method of its postfix, +according the a specified parameter type. For example, + +@StripPostfix("values") +public void glGetPixelMapfv(@GLenum int map, @Check("256") @BufferObject(BufferKind.PackPBO) FloatBuffer values); + +Becomes: + +public static void glGetPixelMap(int map, FloatBuffer values) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(values, 256); + nglGetPixelMapfv(map, values, values.position()); +} +private static native void nglGetPixelMapfv(int map, FloatBuffer values, int values_position); +public static void glGetPixelMapfv(int map, int values_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetPixelMapfvBO(map, values_buffer_offset); +} +private static native void nglGetPixelMapfvBO(int map, int values_buffer_offset); + + - elias diff --git a/src/java/org/lwjgl/BufferChecks.java b/src/java/org/lwjgl/BufferChecks.java index 11a5b95d..c28230bc 100644 --- a/src/java/org/lwjgl/BufferChecks.java +++ b/src/java/org/lwjgl/BufferChecks.java @@ -67,6 +67,11 @@ public class BufferChecks { } } + public static void checkNotNull(Object o) { + if (o == null) + throw new IllegalArgumentException("Null argument"); + } + /** * Helper methods to ensure a buffer is direct or null. */ diff --git a/src/java/org/lwjgl/BufferUtils.java b/src/java/org/lwjgl/BufferUtils.java index 8b2b4979..e4c40a04 100644 --- a/src/java/org/lwjgl/BufferUtils.java +++ b/src/java/org/lwjgl/BufferUtils.java @@ -89,6 +89,22 @@ public final class BufferUtils { return createByteBuffer(size << 2).asFloatBuffer(); } + /** + * @return n, where buffer_element_size=2^n. + */ + public static int getElementSizeExponent(Buffer buf) { + if (buf instanceof ByteBuffer) + return 0; + else if (buf instanceof ShortBuffer || buf instanceof CharBuffer) + return 1; + else if (buf instanceof FloatBuffer || buf instanceof IntBuffer) + return 2; + else if (buf instanceof LongBuffer || buf instanceof DoubleBuffer) + return 3; + else + throw new IllegalStateException("Unsupported buffer type"); + } + /** * Construct a direct native-order doublebuffer with the specified number * of elements. @@ -105,14 +121,7 @@ public final class BufferUtils { * @return the position of the buffer, in BYTES */ public static int getOffset(Buffer buffer) { - if (buffer instanceof FloatBuffer || buffer instanceof IntBuffer) - return buffer.position() << 2; - else if (buffer instanceof ShortBuffer || buffer instanceof CharBuffer) - return buffer.position() << 1; - else if (buffer instanceof DoubleBuffer || buffer instanceof LongBuffer) - return buffer.position() << 3; - else - return buffer.position(); + return buffer.position() << getElementSizeExponent(buffer); } } diff --git a/src/java/org/lwjgl/generator/ALTypeMap.java b/src/java/org/lwjgl/generator/ALTypeMap.java new file mode 100644 index 00000000..84a38aa4 --- /dev/null +++ b/src/java/org/lwjgl/generator/ALTypeMap.java @@ -0,0 +1,215 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +/** + * $Id$ + * + * The OpenAL specific generator behaviour + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.io.*; +import java.util.*; +import java.nio.*; + +public class ALTypeMap implements TypeMap { + private final static Map native_types_to_primitive; + + static { + native_types_to_primitive = new HashMap(); + native_types_to_primitive.put(ALboolean.class, PrimitiveType.Kind.BOOLEAN); + native_types_to_primitive.put(ALbyte.class, PrimitiveType.Kind.BYTE); + native_types_to_primitive.put(ALenum.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(ALfloat.class, PrimitiveType.Kind.FLOAT); + native_types_to_primitive.put(ALint.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(ALshort.class, PrimitiveType.Kind.SHORT); + native_types_to_primitive.put(ALsizei.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(ALubyte.class, PrimitiveType.Kind.BYTE); + native_types_to_primitive.put(ALuint.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(ALvoid.class, PrimitiveType.Kind.BYTE); + } + + public PrimitiveType.Kind getPrimitiveTypeFromNativeType(Class native_type) { + PrimitiveType.Kind kind = native_types_to_primitive.get(native_type); + if (kind == null) + throw new RuntimeException("Unsupported type " + native_type); + return kind; + } + + public Signedness getSignednessFromType(Class type) { + if (ALuint.class.equals(type)) + return Signedness.UNSIGNED; + else if (ALint.class.equals(type)) + return Signedness.SIGNED; + else if (ALshort.class.equals(type)) + return Signedness.SIGNED; + else if (ALbyte.class.equals(type)) + return Signedness.SIGNED; + else + return Signedness.NONE; + } + + public String translateAnnotation(Class annotation_type) { + if (annotation_type.equals(ALuint.class)) + return "i"; + else if (annotation_type.equals(ALint.class)) + return "i"; + else if (annotation_type.equals(ALshort.class)) + return "s"; + else if (annotation_type.equals(ALbyte.class)) + return "b"; + else if (annotation_type.equals(ALfloat.class)) + return "f"; + else if (annotation_type.equals(ALboolean.class) || annotation_type.equals(ALvoid.class)) + return ""; + else + throw new RuntimeException(annotation_type + " is not allowed"); + } + + public Class getNativeTypeFromPrimitiveType(PrimitiveType.Kind kind) { + Class type; + switch (kind) { + case INT: + type = ALint.class; + break; + case FLOAT: + type = ALfloat.class; + break; + case SHORT: + type = ALshort.class; + break; + case BYTE: + type = ALbyte.class; + break; + case BOOLEAN: + type = ALboolean.class; + break; + default: + throw new RuntimeException(kind + " is not allowed"); + } + return type; + } + + private static Class[] getValidBufferTypes(Class type) { + if (type.equals(IntBuffer.class)) + return new Class[]{ALenum.class, ALint.class, ALsizei.class, ALuint.class}; + else if (type.equals(FloatBuffer.class)) + return new Class[]{ALfloat.class}; + else if (type.equals(ByteBuffer.class)) + return new Class[]{ALboolean.class, ALbyte.class, ALvoid.class}; + else if (type.equals(ShortBuffer.class)) + return new Class[]{ALshort.class}; + else if (type.equals(DoubleBuffer.class)) + return new Class[]{}; + else + return new Class[]{}; + } + + private static Class[] getValidPrimitiveTypes(Class type) { + if (type.equals(int.class)) + return new Class[]{ALenum.class, ALint.class, ALsizei.class, ALuint.class}; + else if (type.equals(double.class)) + return new Class[]{}; + else if (type.equals(float.class)) + return new Class[]{ALfloat.class}; + else if (type.equals(short.class)) + return new Class[]{ALshort.class}; + else if (type.equals(byte.class)) + return new Class[]{ALbyte.class}; + else if (type.equals(boolean.class)) + return new Class[]{ALboolean.class}; + else if (type.equals(void.class)) + return new Class[]{ALvoid.class}; + else + return new Class[]{}; + } + + public String getErrorCheckMethodName() { + return "Util.checkALError()"; + } + + public String getRegisterNativesFunctionName() { + return "extal_InitializeClass"; + } + + public String getTypedefPrefix() { + return "ALAPIENTRY"; + } + + public void printNativeIncludes(PrintWriter writer) { + writer.println("#include \"checkALerror.h\""); + writer.println("#include \"extal.h\""); + } + + public Class getStringElementType() { + return ALubyte.class; + } + + public Class[] getValidAnnotationTypes(Class type) { + Class[] valid_types; + if (Buffer.class.isAssignableFrom(type)) + valid_types = getValidBufferTypes(type); + else if (type.isPrimitive()) + valid_types = getValidPrimitiveTypes(type); + else if (type.equals(String.class)) + valid_types = new Class[]{ALubyte.class}; + else + valid_types = new Class[]{}; + return valid_types; + } + + public Class getVoidType() { + return ALvoid.class; + } + + public Class getInverseType(Class type) { + if (ALuint.class.equals(type)) + return ALint.class; + else if (ALint.class.equals(type)) + return ALuint.class; + else + return null; + } + + public String getAutoTypeFromAnnotation(AnnotationMirror annotation) { + return null; + } +} diff --git a/src/java/org/lwjgl/generator/ALboolean.java b/src/java/org/lwjgl/generator/ALboolean.java new file mode 100644 index 00000000..ccf0cab6 --- /dev/null +++ b/src/java/org/lwjgl/generator/ALboolean.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface ALboolean { +} diff --git a/src/java/org/lwjgl/generator/ALbyte.java b/src/java/org/lwjgl/generator/ALbyte.java new file mode 100644 index 00000000..b9361417 --- /dev/null +++ b/src/java/org/lwjgl/generator/ALbyte.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface ALbyte { +} diff --git a/src/java/org/lwjgl/generator/ALenum.java b/src/java/org/lwjgl/generator/ALenum.java new file mode 100644 index 00000000..d12626d5 --- /dev/null +++ b/src/java/org/lwjgl/generator/ALenum.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface ALenum { +} diff --git a/src/java/org/lwjgl/generator/ALfloat.java b/src/java/org/lwjgl/generator/ALfloat.java new file mode 100644 index 00000000..995cc7ce --- /dev/null +++ b/src/java/org/lwjgl/generator/ALfloat.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface ALfloat { +} diff --git a/src/java/org/lwjgl/generator/ALint.java b/src/java/org/lwjgl/generator/ALint.java new file mode 100644 index 00000000..21bd321d --- /dev/null +++ b/src/java/org/lwjgl/generator/ALint.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface ALint { +} diff --git a/src/java/org/lwjgl/generator/ALshort.java b/src/java/org/lwjgl/generator/ALshort.java new file mode 100644 index 00000000..aeda90b8 --- /dev/null +++ b/src/java/org/lwjgl/generator/ALshort.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface ALshort { +} diff --git a/src/java/org/lwjgl/generator/ALsizei.java b/src/java/org/lwjgl/generator/ALsizei.java new file mode 100644 index 00000000..25b4e0d0 --- /dev/null +++ b/src/java/org/lwjgl/generator/ALsizei.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface ALsizei { +} diff --git a/src/java/org/lwjgl/generator/ALubyte.java b/src/java/org/lwjgl/generator/ALubyte.java new file mode 100644 index 00000000..7675fa98 --- /dev/null +++ b/src/java/org/lwjgl/generator/ALubyte.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface ALubyte { +} diff --git a/src/java/org/lwjgl/generator/ALuint.java b/src/java/org/lwjgl/generator/ALuint.java new file mode 100644 index 00000000..790bcf4a --- /dev/null +++ b/src/java/org/lwjgl/generator/ALuint.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface ALuint { +} diff --git a/src/java/org/lwjgl/generator/ALvoid.java b/src/java/org/lwjgl/generator/ALvoid.java new file mode 100644 index 00000000..848c4562 --- /dev/null +++ b/src/java/org/lwjgl/generator/ALvoid.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface ALvoid { +} diff --git a/src/java/org/lwjgl/generator/Auto.java b/src/java/org/lwjgl/generator/Auto.java new file mode 100644 index 00000000..86e97f4a --- /dev/null +++ b/src/java/org/lwjgl/generator/Auto.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * AutoType and AutoSize is annotated with @Auto. + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.ANNOTATION_TYPE) +public @interface Auto { +} diff --git a/src/java/org/lwjgl/generator/AutoSize.java b/src/java/org/lwjgl/generator/AutoSize.java new file mode 100644 index 00000000..9b0ecb00 --- /dev/null +++ b/src/java/org/lwjgl/generator/AutoSize.java @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @AutoSize specifies that a parameter should be pre-computed + * according to the remaining() of a Buffer parameter. + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Auto +@Target(ElementType.PARAMETER) +public @interface AutoSize { + String value(); // The name of the Buffer parameter + String expression() default ""; // This value is added after the argument +} diff --git a/src/java/org/lwjgl/generator/AutoType.java b/src/java/org/lwjgl/generator/AutoType.java new file mode 100644 index 00000000..69eceb77 --- /dev/null +++ b/src/java/org/lwjgl/generator/AutoType.java @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * Indicates that a parameter should be pre-computed according + * to the type of a Buffer parameter. + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Auto +@Target(ElementType.PARAMETER) +public @interface AutoType { + String value(); // The parameter to get the type from +} diff --git a/src/java/org/lwjgl/generator/BufferKind.java b/src/java/org/lwjgl/generator/BufferKind.java new file mode 100644 index 00000000..401f0fcd --- /dev/null +++ b/src/java/org/lwjgl/generator/BufferKind.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +public enum BufferKind { + UnpackPBO, + PackPBO, + ElementVBO, + ArrayVBO +} diff --git a/src/java/org/lwjgl/generator/BufferObject.java b/src/java/org/lwjgl/generator/BufferObject.java new file mode 100644 index 00000000..bb20868c --- /dev/null +++ b/src/java/org/lwjgl/generator/BufferObject.java @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * This annotation implies that a Buffer parameter can be an + * integer VBO/PBO offset. + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.PARAMETER) +public @interface BufferObject { + BufferKind value(); +} diff --git a/src/java/org/lwjgl/generator/CachedResult.java b/src/java/org/lwjgl/generator/CachedResult.java new file mode 100644 index 00000000..f41e3ac5 --- /dev/null +++ b/src/java/org/lwjgl/generator/CachedResult.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.METHOD) +public @interface CachedResult { +} diff --git a/src/java/org/lwjgl/generator/Check.java b/src/java/org/lwjgl/generator/Check.java new file mode 100644 index 00000000..23f95bf1 --- /dev/null +++ b/src/java/org/lwjgl/generator/Check.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.PARAMETER) +public @interface Check { + String value() default ""; + boolean canBeNull() default false; +} diff --git a/src/java/org/lwjgl/generator/Code.java b/src/java/org/lwjgl/generator/Code.java new file mode 100644 index 00000000..958aba7c --- /dev/null +++ b/src/java/org/lwjgl/generator/Code.java @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.METHOD) +public @interface Code { + String value(); +} diff --git a/src/java/org/lwjgl/generator/Const.java b/src/java/org/lwjgl/generator/Const.java new file mode 100644 index 00000000..59fe7c31 --- /dev/null +++ b/src/java/org/lwjgl/generator/Const.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface Const { +} diff --git a/src/java/org/lwjgl/generator/Constant.java b/src/java/org/lwjgl/generator/Constant.java new file mode 100644 index 00000000..c10a3812 --- /dev/null +++ b/src/java/org/lwjgl/generator/Constant.java @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.PARAMETER) +public @interface Constant { + String value(); +} diff --git a/src/java/org/lwjgl/generator/Extension.java b/src/java/org/lwjgl/generator/Extension.java new file mode 100644 index 00000000..9565a4dd --- /dev/null +++ b/src/java/org/lwjgl/generator/Extension.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.TYPE) +public @interface Extension { + String className() default ""; + boolean isFinal() default true; + String postfix(); +} diff --git a/src/java/org/lwjgl/generator/FieldsGenerator.java b/src/java/org/lwjgl/generator/FieldsGenerator.java new file mode 100644 index 00000000..8a8c75e6 --- /dev/null +++ b/src/java/org/lwjgl/generator/FieldsGenerator.java @@ -0,0 +1,75 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.io.*; +import java.util.*; +import java.nio.*; + +public class FieldsGenerator { + private static void validateField(FieldDeclaration field) { + Collection modifiers = field.getModifiers(); + if (modifiers.size() != 3 || !modifiers.contains(Modifier.PUBLIC) || !modifiers.contains(Modifier.STATIC) || + !modifiers.contains(Modifier.FINAL)) + throw new RuntimeException("Field " + field.getSimpleName() + " is not declared public static final"); + TypeMirror field_type = field.getType(); + if (!(field_type instanceof PrimitiveType)) + throw new RuntimeException("Field " + field.getSimpleName() + " is not a primitive type"); + PrimitiveType field_type_prim = (PrimitiveType)field_type; + if (field_type_prim.getKind() != PrimitiveType.Kind.INT) + throw new RuntimeException("Field " + field.getSimpleName() + " is not of type 'int'"); + Integer field_value = (Integer)field.getConstantValue(); + if (field_value == null) + throw new RuntimeException("Field " + field.getSimpleName() + " has no initial value"); + } + + private static void generateField(PrintWriter writer, FieldDeclaration field) { + Integer field_value = (Integer)field.getConstantValue(); + validateField(field); + String field_value_string = Integer.toHexString(field_value.intValue()); + Utils.printDocComment(writer, field); + // Print field declaration + writer.println("\tpublic static final " + field.getType().toString() + " " + field.getSimpleName() + " = 0x" + field_value_string + ";"); + } + + public static void generateFields(PrintWriter writer, Collection fields) { + for (FieldDeclaration field : fields) + generateField(writer, field); + } + +} diff --git a/src/java/org/lwjgl/generator/GLTypeMap.java b/src/java/org/lwjgl/generator/GLTypeMap.java new file mode 100644 index 00000000..acdd5b33 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLTypeMap.java @@ -0,0 +1,266 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +/** + * $Id$ + * + * OpenGL sepcific generator behaviour + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.io.*; +import java.util.*; +import java.nio.*; + +public class GLTypeMap implements TypeMap { + private final static Map native_types_to_primitive; + + static { + native_types_to_primitive = new HashMap(); + native_types_to_primitive.put(GLbitfield.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLcharARB.class, PrimitiveType.Kind.BYTE); + native_types_to_primitive.put(GLclampf.class, PrimitiveType.Kind.FLOAT); + native_types_to_primitive.put(GLfloat.class, PrimitiveType.Kind.FLOAT); + native_types_to_primitive.put(GLint.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLshort.class, PrimitiveType.Kind.SHORT); + native_types_to_primitive.put(GLsizeiptr.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLuint.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLboolean.class, PrimitiveType.Kind.BOOLEAN); + native_types_to_primitive.put(GLchar.class, PrimitiveType.Kind.BYTE); + native_types_to_primitive.put(GLdouble.class, PrimitiveType.Kind.DOUBLE); + native_types_to_primitive.put(GLhalf.class, PrimitiveType.Kind.SHORT); + native_types_to_primitive.put(GLintptrARB.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLsizei.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLushort.class, PrimitiveType.Kind.SHORT); + native_types_to_primitive.put(GLbyte.class, PrimitiveType.Kind.BYTE); + native_types_to_primitive.put(GLclampd.class, PrimitiveType.Kind.DOUBLE); + native_types_to_primitive.put(GLenum.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLhandleARB.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLintptr.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLsizeiptrARB.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLubyte.class, PrimitiveType.Kind.BYTE); + native_types_to_primitive.put(GLvoid.class, PrimitiveType.Kind.BYTE); + } + + public PrimitiveType.Kind getPrimitiveTypeFromNativeType(Class native_type) { + PrimitiveType.Kind kind = native_types_to_primitive.get(native_type); + if (kind == null) + throw new RuntimeException("Unsupported type " + native_type); + return kind; + } + + public String getErrorCheckMethodName() { + return "Util.checkGLError()"; + } + + public String getRegisterNativesFunctionName() { + return "extgl_InitializeClass"; + } + + public Signedness getSignednessFromType(Class type) { + if (GLuint.class.equals(type)) + return Signedness.UNSIGNED; + else if (GLint.class.equals(type)) + return Signedness.SIGNED; + else if (GLushort.class.equals(type)) + return Signedness.UNSIGNED; + else if (GLshort.class.equals(type)) + return Signedness.SIGNED; + else if (GLubyte.class.equals(type)) + return Signedness.UNSIGNED; + else if (GLbyte.class.equals(type)) + return Signedness.SIGNED; + else + return Signedness.NONE; + } + + public String translateAnnotation(Class annotation_type) { + if (annotation_type.equals(GLuint.class)) + return "i"; + else if (annotation_type.equals(GLint.class)) + return "i"; + else if (annotation_type.equals(GLushort.class)) + return"s"; + else if (annotation_type.equals(GLshort.class)) + return "s"; + else if (annotation_type.equals(GLubyte.class)) + return "b"; + else if (annotation_type.equals(GLbyte.class)) + return "b"; + else if (annotation_type.equals(GLfloat.class)) + return "f"; + else if (annotation_type.equals(GLhalf.class)) + return "h"; + else if (annotation_type.equals(GLboolean.class) || annotation_type.equals(GLvoid.class)) + return ""; + else + throw new RuntimeException(annotation_type + " is not allowed"); + } + + public Class getNativeTypeFromPrimitiveType(PrimitiveType.Kind kind) { + Class type; + switch (kind) { + case INT: + type = GLint.class; + break; + case DOUBLE: + type = GLdouble.class; + break; + case FLOAT: + type = GLfloat.class; + break; + case SHORT: + type = GLshort.class; + break; + case BYTE: + type = GLbyte.class; + break; + case BOOLEAN: + type = GLboolean.class; + break; + default: + throw new RuntimeException(kind + " is not allowed"); + } + return type; + } + + public Class getVoidType() { + return GLvoid.class; + } + + public Class getStringElementType() { + return GLubyte.class; + } + + private static Class[] getValidBufferTypes(Class type) { + if (type.equals(IntBuffer.class)) + return new Class[]{GLbitfield.class, GLenum.class, GLhandleARB.class, GLint.class, GLintptrARB.class, GLintptrARB.class, + GLsizei.class, GLsizeiptrARB.class, GLsizeiptr.class, GLuint.class}; + else if (type.equals(FloatBuffer.class)) + return new Class[]{GLclampf.class, GLfloat.class}; + else if (type.equals(ByteBuffer.class)) + return new Class[]{GLboolean.class, GLbyte.class, GLcharARB.class, GLchar.class, GLubyte.class, GLvoid.class}; + else if (type.equals(ShortBuffer.class)) + return new Class[]{GLhalf.class, GLshort.class, GLushort.class}; + else if (type.equals(DoubleBuffer.class)) + return new Class[]{GLclampd.class, GLdouble.class}; + else + return new Class[]{}; + } + + private static Class[] getValidPrimitiveTypes(Class type) { + if (type.equals(int.class)) + return new Class[]{GLbitfield.class, GLenum.class, GLhandleARB.class, GLint.class, GLintptrARB.class, GLuint.class, + GLintptr.class, GLintptr.class, GLsizei.class, GLsizeiptrARB.class, GLsizeiptr.class}; + else if (type.equals(double.class)) + return new Class[]{GLclampd.class, GLdouble.class}; + else if (type.equals(float.class)) + return new Class[]{GLclampf.class, GLfloat.class}; + else if (type.equals(short.class)) + return new Class[]{GLhalf.class, GLshort.class, GLushort.class}; + else if (type.equals(byte.class)) + return new Class[]{GLbyte.class, GLcharARB.class, GLchar.class, GLubyte.class}; + else if (type.equals(boolean.class)) + return new Class[]{GLboolean.class}; + else if (type.equals(void.class)) + return new Class[]{GLvoid.class}; + else + return new Class[]{}; + } + + public String getTypedefPrefix() { + return "APIENTRY"; + } + + public void printNativeIncludes(PrintWriter writer) { + writer.println("#include \"extgl.h\""); + } + + public Class[] getValidAnnotationTypes(Class type) { + Class[] valid_types; + if (Buffer.class.isAssignableFrom(type)) + valid_types = getValidBufferTypes(type); + else if (type.isPrimitive()) + valid_types = getValidPrimitiveTypes(type); + else if (String.class.equals(type)) + valid_types = new Class[]{GLubyte.class}; + else + valid_types = new Class[]{}; + return valid_types; + } + + public Class getInverseType(Class type) { + if (GLuint.class.equals(type)) + return GLint.class; + else if (GLint.class.equals(type)) + return GLuint.class; + else if (GLushort.class.equals(type)) + return GLshort.class; + else if (GLshort.class.equals(type)) + return GLushort.class; + else if (GLubyte.class.equals(type)) + return GLbyte.class; + else if (GLbyte.class.equals(type)) + return GLubyte.class; + else + return null; + } + + public String getAutoTypeFromAnnotation(AnnotationMirror annotation) { + Class annotation_class = NativeTypeTranslator.getClassFromType(annotation.getAnnotationType()); + if (annotation_class.equals(GLint.class)) + return "GL11.GL_INT"; + else if (annotation_class.equals(GLbyte.class)) + return "GL11.GL_BYTE"; + else if (annotation_class.equals(GLshort.class)) + return "GL11.GL_SHORT"; + if (annotation_class.equals(GLuint.class)) + return "GL11.GL_UNSIGNED_INT"; + else if (annotation_class.equals(GLubyte.class)) + return "GL11.GL_UNSIGNED_BYTE"; + else if (annotation_class.equals(GLushort.class)) + return "GL11.GL_UNSIGNED_SHORT"; + else if (annotation_class.equals(GLfloat.class)) + return "GL11.GL_FLOAT"; + else + return null; + } +} diff --git a/src/java/org/lwjgl/generator/GLbitfield.java b/src/java/org/lwjgl/generator/GLbitfield.java new file mode 100644 index 00000000..b975434a --- /dev/null +++ b/src/java/org/lwjgl/generator/GLbitfield.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLbitfield { +} diff --git a/src/java/org/lwjgl/generator/GLboolean.java b/src/java/org/lwjgl/generator/GLboolean.java new file mode 100644 index 00000000..f721c40f --- /dev/null +++ b/src/java/org/lwjgl/generator/GLboolean.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLboolean { +} diff --git a/src/java/org/lwjgl/generator/GLbyte.java b/src/java/org/lwjgl/generator/GLbyte.java new file mode 100644 index 00000000..551a6daa --- /dev/null +++ b/src/java/org/lwjgl/generator/GLbyte.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLbyte { +} diff --git a/src/java/org/lwjgl/generator/GLchar.java b/src/java/org/lwjgl/generator/GLchar.java new file mode 100644 index 00000000..6bee2431 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLchar.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLchar { +} diff --git a/src/java/org/lwjgl/generator/GLcharARB.java b/src/java/org/lwjgl/generator/GLcharARB.java new file mode 100644 index 00000000..4fea867b --- /dev/null +++ b/src/java/org/lwjgl/generator/GLcharARB.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLcharARB { +} diff --git a/src/java/org/lwjgl/generator/GLclampd.java b/src/java/org/lwjgl/generator/GLclampd.java new file mode 100644 index 00000000..e1d80687 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLclampd.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLclampd { +} diff --git a/src/java/org/lwjgl/generator/GLclampf.java b/src/java/org/lwjgl/generator/GLclampf.java new file mode 100644 index 00000000..103a312e --- /dev/null +++ b/src/java/org/lwjgl/generator/GLclampf.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLclampf { +} diff --git a/src/java/org/lwjgl/generator/GLdouble.java b/src/java/org/lwjgl/generator/GLdouble.java new file mode 100644 index 00000000..04efe124 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLdouble.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLdouble { +} diff --git a/src/java/org/lwjgl/generator/GLenum.java b/src/java/org/lwjgl/generator/GLenum.java new file mode 100644 index 00000000..12c424dd --- /dev/null +++ b/src/java/org/lwjgl/generator/GLenum.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLenum { +} diff --git a/src/java/org/lwjgl/generator/GLfloat.java b/src/java/org/lwjgl/generator/GLfloat.java new file mode 100644 index 00000000..c6df9511 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLfloat.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLfloat { +} diff --git a/src/java/org/lwjgl/generator/GLhalf.java b/src/java/org/lwjgl/generator/GLhalf.java new file mode 100644 index 00000000..bd16b3ad --- /dev/null +++ b/src/java/org/lwjgl/generator/GLhalf.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLhalf { +} diff --git a/src/java/org/lwjgl/generator/GLhandleARB.java b/src/java/org/lwjgl/generator/GLhandleARB.java new file mode 100644 index 00000000..4fcb91b2 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLhandleARB.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLhandleARB { +} diff --git a/src/java/org/lwjgl/generator/GLint.java b/src/java/org/lwjgl/generator/GLint.java new file mode 100644 index 00000000..a56433f9 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLint.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLint { +} diff --git a/src/java/org/lwjgl/generator/GLintptr.java b/src/java/org/lwjgl/generator/GLintptr.java new file mode 100644 index 00000000..8c60f560 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLintptr.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLintptr { +} diff --git a/src/java/org/lwjgl/generator/GLintptrARB.java b/src/java/org/lwjgl/generator/GLintptrARB.java new file mode 100644 index 00000000..6b0629d4 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLintptrARB.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLintptrARB { +} diff --git a/src/java/org/lwjgl/generator/GLshort.java b/src/java/org/lwjgl/generator/GLshort.java new file mode 100644 index 00000000..b1ae19c3 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLshort.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLshort { +} diff --git a/src/java/org/lwjgl/generator/GLsizei.java b/src/java/org/lwjgl/generator/GLsizei.java new file mode 100644 index 00000000..5967c2c1 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLsizei.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLsizei { +} diff --git a/src/java/org/lwjgl/generator/GLsizeiptr.java b/src/java/org/lwjgl/generator/GLsizeiptr.java new file mode 100644 index 00000000..f6c2eaf0 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLsizeiptr.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLsizeiptr { +} diff --git a/src/java/org/lwjgl/generator/GLsizeiptrARB.java b/src/java/org/lwjgl/generator/GLsizeiptrARB.java new file mode 100644 index 00000000..915b69af --- /dev/null +++ b/src/java/org/lwjgl/generator/GLsizeiptrARB.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLsizeiptrARB { +} diff --git a/src/java/org/lwjgl/generator/GLubyte.java b/src/java/org/lwjgl/generator/GLubyte.java new file mode 100644 index 00000000..95190e0f --- /dev/null +++ b/src/java/org/lwjgl/generator/GLubyte.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLubyte { +} diff --git a/src/java/org/lwjgl/generator/GLuint.java b/src/java/org/lwjgl/generator/GLuint.java new file mode 100644 index 00000000..4042ceee --- /dev/null +++ b/src/java/org/lwjgl/generator/GLuint.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLuint { +} diff --git a/src/java/org/lwjgl/generator/GLushort.java b/src/java/org/lwjgl/generator/GLushort.java new file mode 100644 index 00000000..fd01ea97 --- /dev/null +++ b/src/java/org/lwjgl/generator/GLushort.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLushort { +} diff --git a/src/java/org/lwjgl/generator/GLvoid.java b/src/java/org/lwjgl/generator/GLvoid.java new file mode 100644 index 00000000..7fee92ca --- /dev/null +++ b/src/java/org/lwjgl/generator/GLvoid.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; +import com.sun.mirror.type.PrimitiveType; + +@NativeType +@Target({ElementType.PARAMETER, ElementType.METHOD}) +public @interface GLvoid { +} diff --git a/src/java/org/lwjgl/generator/GenerateAutos.java b/src/java/org/lwjgl/generator/GenerateAutos.java new file mode 100644 index 00000000..328fb248 --- /dev/null +++ b/src/java/org/lwjgl/generator/GenerateAutos.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.METHOD) +public @interface GenerateAutos { +} diff --git a/src/java/org/lwjgl/generator/GeneratorProcessorFactory.java b/src/java/org/lwjgl/generator/GeneratorProcessorFactory.java new file mode 100644 index 00000000..cc06278c --- /dev/null +++ b/src/java/org/lwjgl/generator/GeneratorProcessorFactory.java @@ -0,0 +1,131 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.util.Collection; +import java.util.Set; +import java.util.Iterator; +import java.util.Map; +import java.util.Arrays; + +import java.io.PrintWriter; +import java.io.IOException; +import java.io.File; + +import static java.util.Collections.*; +import static com.sun.mirror.util.DeclarationVisitors.*; + +/** + * $Id$ + * + * Generator tool for creating the java classes and native code + * from an annotated template java interface. + * + * @author elias_naur + * @version $Revision$ + */ +public class GeneratorProcessorFactory implements AnnotationProcessorFactory, RoundCompleteListener { + private static boolean first_round = true; + + // Process any set of annotations + private static final Collection supportedAnnotations = + unmodifiableCollection(Arrays.asList("*")); + + // No supported options + private static final Collection supportedOptions = + unmodifiableCollection(Arrays.asList("-Anativeoutdir")); + + public Collection supportedAnnotationTypes() { + return supportedAnnotations; + } + + public Collection supportedOptions() { + return supportedOptions; + } + + public void roundComplete(RoundCompleteEvent event) { + first_round = false; + } + + public AnnotationProcessor getProcessorFor(Set atds, AnnotationProcessorEnvironment env) { + // Only process the initial types, not the generated ones + if (first_round) { + env.addListener(this); + return new GeneratorProcessor(env); + } + return AnnotationProcessors.NO_OP; + } + + private static class GeneratorProcessor implements AnnotationProcessor { + private final AnnotationProcessorEnvironment env; + + GeneratorProcessor(AnnotationProcessorEnvironment env) { + this.env = env; + } + + public void process() { + Map options = env.getOptions(); + String typemap_classname = null; + boolean generate_error_checks = false; + for (String k : options.keySet()) { + int delimiter = k.indexOf('='); + if (delimiter != -1) { + if (k.startsWith("-Atypemap")) { + typemap_classname = k.substring(delimiter + 1); + } + } else if (k.equals("-Ageneratechecks")) { + generate_error_checks = true; + } + } + if (typemap_classname == null) + throw new RuntimeException("No TypeMap class name specified with -Atypemap="); + try { + TypeMap type_map = (TypeMap)(Class.forName(typemap_classname).newInstance()); + for (TypeDeclaration typedecl : env.getSpecifiedTypeDeclarations()) { + typedecl.accept(getDeclarationScanner(new GeneratorVisitor(env, type_map, generate_error_checks), NO_OP)); + } + } catch (IllegalAccessException e) { + throw new RuntimeException(e); + } catch (InstantiationException e) { + throw new RuntimeException(e); + } catch (ClassNotFoundException e) { + throw new RuntimeException(e); + } + } + } +} diff --git a/src/java/org/lwjgl/generator/GeneratorVisitor.java b/src/java/org/lwjgl/generator/GeneratorVisitor.java new file mode 100644 index 00000000..d22f4155 --- /dev/null +++ b/src/java/org/lwjgl/generator/GeneratorVisitor.java @@ -0,0 +1,242 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.util.*; + +import java.io.PrintWriter; +import java.io.IOException; +import java.io.File; + +import java.nio.*; +import java.lang.annotation.Annotation; + +/** + * $Id$ + * + * Generator visitor for the generator tool + * + * @author elias_naur + * @version $Revision$ + */ +public class GeneratorVisitor extends SimpleDeclarationVisitor { + private final static String STUB_INITIALIZER_NAME = "initNativeStubs"; + + private final AnnotationProcessorEnvironment env; + private final TypeMap type_map; + private final boolean generate_error_checks; + + public GeneratorVisitor(AnnotationProcessorEnvironment env, TypeMap type_map, boolean generate_error_checks) { + this.env = env; + this.type_map = type_map; + this.generate_error_checks = generate_error_checks; + } + + private void validateMethods(InterfaceDeclaration d) { + for (MethodDeclaration method : d.getMethods()) + validateMethod(method); + } + + private void validateMethod(MethodDeclaration method) { + if (method.isVarArgs()) + throw new RuntimeException("Method " + method.getSimpleName() + " is variadic"); + Collection modifiers = method.getModifiers(); + if (!modifiers.contains(Modifier.PUBLIC)) + throw new RuntimeException("Method " + method.getSimpleName() + " is not public"); + if (method.getThrownTypes().size() > 0) + throw new RuntimeException("Method " + method.getSimpleName() + " throws checked exceptions"); + validateParameters(method); + StripPostfix strip_annotation = method.getAnnotation(StripPostfix.class); + if (strip_annotation != null) { + String postfix_param_name = strip_annotation.value(); + ParameterDeclaration postfix_param = Utils.findParameter(method, postfix_param_name); + if (Utils.isParameterMultiTyped(postfix_param)) + throw new RuntimeException("Postfix parameter can't be the same as a multityped parameter in method " + method); + if (Utils.getNIOBufferType(postfix_param.getType()) == null) + throw new RuntimeException("Postfix parameter type must be a nio Buffer"); + } + if (Utils.getResultParameter(method) != null && !method.getReturnType().equals(env.getTypeUtils().getVoidType())) + throw new RuntimeException(method + " return type is not void but a parameter is annotated with Result"); + if (method.getAnnotation(CachedResult.class) != null && Utils.getNIOBufferType(Utils.getMethodReturnType(method)) == null) + throw new RuntimeException(method + " return type is not a Buffer, but is annotated with CachedResult"); + validateTypes(method, method.getAnnotationMirrors(), method.getReturnType()); + } + + private void validateType(MethodDeclaration method, Class annotation_type, Class type) { + Class[] valid_types = type_map.getValidAnnotationTypes(type); + for (int i = 0; i < valid_types.length; i++) + if (valid_types[i].equals(annotation_type)) + return; + throw new RuntimeException(type + " is annotated with invalid native type " + annotation_type + + " in method " + method); + } + + private void validateTypes(MethodDeclaration method, Collection annotations, TypeMirror type_mirror) { + for (AnnotationMirror annotation : annotations) { + NativeType native_type_annotation = NativeTypeTranslator.getAnnotation(annotation, NativeType.class); + if (native_type_annotation != null) { + Class annotation_type = NativeTypeTranslator.getClassFromType(annotation.getAnnotationType()); + Class type = Utils.getJavaType(type_mirror); + if (Buffer.class.equals(type)) + continue; + validateType(method, annotation_type, type); + } + } + } + + private void validateParameters(MethodDeclaration method) { + for (ParameterDeclaration param : method.getParameters()) { + validateTypes(method, param.getAnnotationMirrors(), param.getType()); + if (Utils.getNIOBufferType(param.getType()) != null) { + Check parameter_check_annotation = param.getAnnotation(Check.class); + NullTerminated null_terminated_annotation = param.getAnnotation(NullTerminated.class); + if (parameter_check_annotation == null && null_terminated_annotation == null) { + boolean found_auto_size_param = false; + for (ParameterDeclaration inner_param : method.getParameters()) { + AutoSize auto_size_annotation = inner_param.getAnnotation(AutoSize.class); + if (auto_size_annotation != null && + auto_size_annotation.value().equals(param.getSimpleName())) { + found_auto_size_param = true; + break; + } + } + if (!found_auto_size_param && param.getAnnotation(Result.class) == null) + throw new RuntimeException(param + " has no Check, Result nor Constant annotation and no other parameters has" + + " an @AutoSize annotation on it in method " + method); + } + if (param.getAnnotation(BufferObject.class) != null && param.getAnnotation(Result.class) != null) + throw new RuntimeException(param + " can't be annotated with both BufferObject and Result"); + if (param.getAnnotation(Constant.class) != null) + throw new RuntimeException("Buffer parameter " + param + " cannot be Constant"); + } else { + if (param.getAnnotation(BufferObject.class) != null) + throw new RuntimeException(param + " type is not a buffer, but annotated as a BufferObject"); + } + } + } + + private void generateMethodsNativePointers(PrintWriter writer, Collection methods) { + for (MethodDeclaration method : methods) + generateMethodNativePointers(writer, method); + } + + private static void generateMethodNativePointers(PrintWriter writer, MethodDeclaration method) { + writer.println("static " + method.getSimpleName() + TypedefsGenerator.TYPEDEF_POSTFIX + " " + method.getSimpleName() + ";"); + } + + private void generateJavaSource(InterfaceDeclaration d) throws IOException { + validateMethods(d); + PrintWriter java_writer = env.getFiler().createSourceFile(Utils.getQualifiedClassName(d)); + java_writer.println("/* MACHINE GENERATED FILE, DO NOT EDIT */"); + java_writer.println(); + java_writer.println("package " + d.getPackage().getQualifiedName() + ";"); + java_writer.println(); + java_writer.println("import org.lwjgl.LWJGLException;"); + java_writer.println("import org.lwjgl.BufferChecks;"); + java_writer.println("import java.nio.*;"); + java_writer.println(); + java_writer.print("public "); + Extension extension_annotation = d.getAnnotation(Extension.class); + boolean is_final = extension_annotation == null || extension_annotation.isFinal(); + if (is_final) + java_writer.write("final "); + java_writer.print("class " + Utils.getSimpleClassName(d)); + Collection super_interfaces = d.getSuperinterfaces(); + if (super_interfaces.size() > 1) + throw new RuntimeException(d + " extends more than one interface"); + if (super_interfaces.size() == 1) { + InterfaceDeclaration super_interface = super_interfaces.iterator().next().getDeclaration(); + java_writer.print(" extends " + Utils.getSimpleClassName(super_interface)); + } + java_writer.println(" {"); + FieldsGenerator.generateFields(java_writer, d.getFields()); + java_writer.println(); + if (is_final) { + // Write private constructor to avoid instantiation + java_writer.println("\tprivate " + Utils.getSimpleClassName(d) + "() {"); + java_writer.println("\t}"); + java_writer.println(); + } + if (d.getMethods().size() > 0) + java_writer.println("\tstatic native void " + STUB_INITIALIZER_NAME + "() throws LWJGLException;"); + JavaMethodsGenerator.generateMethodsJava(env, type_map, java_writer, d, generate_error_checks); + java_writer.println("}"); + java_writer.close(); + String qualified_interface_name = Utils.getQualifiedClassName(d); + env.getMessager().printNotice("Generated class " + qualified_interface_name); + } + + private void generateNativeSource(InterfaceDeclaration d) throws IOException { + String qualified_interface_name = Utils.getQualifiedClassName(d); + String qualified_native_name = Utils.getNativeQualifiedName(qualified_interface_name)+ ".c"; + PrintWriter native_writer = env.getFiler().createTextFile(Filer.Location.CLASS_TREE, "", new File(qualified_native_name), "UTF-8"); + native_writer.println("/* MACHINE GENERATED FILE, DO NOT EDIT */"); + native_writer.println(); + native_writer.println("#include "); + type_map.printNativeIncludes(native_writer); + native_writer.println(); + TypedefsGenerator.generateNativeTypedefs(type_map, native_writer, d.getMethods()); + native_writer.println(); + generateMethodsNativePointers(native_writer, d.getMethods()); + native_writer.println(); + NativeMethodStubsGenerator.generateNativeMethodStubs(env, type_map, native_writer, d, generate_error_checks); + native_writer.print("JNIEXPORT void JNICALL " + Utils.getQualifiedNativeMethodName(qualified_interface_name, STUB_INITIALIZER_NAME)); + native_writer.println("(JNIEnv *env, jclass clazz) {"); + native_writer.println("\tJavaMethodAndExtFunction functions[] = {"); + RegisterStubsGenerator.generateMethodsNativeStubBind(native_writer, d, generate_error_checks); + native_writer.println("\t};"); + native_writer.println("\tint num_functions = NUMFUNCTIONS(functions);"); + native_writer.print("\t"); + native_writer.print(type_map.getRegisterNativesFunctionName()); + native_writer.println("(env, clazz, num_functions, functions);"); + native_writer.println("}"); + native_writer.close(); + env.getMessager().printNotice("Generated C source " + qualified_interface_name); + } + + public void visitInterfaceDeclaration(InterfaceDeclaration d) { + try { + generateJavaSource(d); + if (d.getMethods().size() > 0) { + generateNativeSource(d); + } + } catch (IOException e) { + throw new RuntimeException(e); + } + } +} diff --git a/src/java/org/lwjgl/generator/Indirect.java b/src/java/org/lwjgl/generator/Indirect.java new file mode 100644 index 00000000..11312ba4 --- /dev/null +++ b/src/java/org/lwjgl/generator/Indirect.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * Implies that a parameter is indirect, and forces the native + * stub to use the indirection operator '&' on it. + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.PARAMETER) +public @interface Indirect { +} diff --git a/src/java/org/lwjgl/generator/JNITypeTranslator.java b/src/java/org/lwjgl/generator/JNITypeTranslator.java new file mode 100644 index 00000000..38a2a553 --- /dev/null +++ b/src/java/org/lwjgl/generator/JNITypeTranslator.java @@ -0,0 +1,135 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.util.Collection; +import java.util.Iterator; + +import java.io.PrintWriter; +import java.io.IOException; +import java.io.File; + +import java.lang.annotation.Annotation; + +/** + * $Id$ + * + * A TypeVisitor that translates TypeMirrors to JNI + * type strings. + * + * @author elias_naur + * @version $Revision$ + */ +public class JNITypeTranslator implements TypeVisitor { + private final StringBuilder signature = new StringBuilder(); + + public String getSignature() { + return signature.toString(); + } + + public void visitAnnotationType(AnnotationType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitArrayType(ArrayType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitClassType(ClassType t) { + signature.append("jobject"); + } + + public void visitDeclaredType(DeclaredType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitEnumType(EnumType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitInterfaceType(InterfaceType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitPrimitiveType(PrimitiveType t) { + String type; + switch (t.getKind()) { + case INT: + type = "jint"; + break; + case FLOAT: + type = "jfloat"; + break; + case SHORT: + type = "jshort"; + break; + case BYTE: + type = "jbyte"; + break; + case DOUBLE: + type = "jdouble"; + break; + case BOOLEAN: + type = "jboolean"; + break; + default: + throw new RuntimeException(t + " is not allowed"); + } + signature.append(type); + } + + public void visitReferenceType(ReferenceType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitTypeMirror(TypeMirror t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitTypeVariable(TypeVariable t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitVoidType(VoidType t) { + signature.append(t.toString()); + } + + public void visitWildcardType(WildcardType t) { + throw new RuntimeException(t + " is not allowed"); + } +} diff --git a/src/java/org/lwjgl/generator/JavaMethodsGenerator.java b/src/java/org/lwjgl/generator/JavaMethodsGenerator.java new file mode 100644 index 00000000..e8beff75 --- /dev/null +++ b/src/java/org/lwjgl/generator/JavaMethodsGenerator.java @@ -0,0 +1,416 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +/** + * $Id$ + * + * This class generates the methods in the generated java source files. + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.io.*; +import java.util.*; +import java.nio.*; + +public class JavaMethodsGenerator { + public static void generateMethodsJava(AnnotationProcessorEnvironment env, TypeMap type_map, PrintWriter writer, InterfaceDeclaration interface_decl, boolean generate_error_checks) { + for (MethodDeclaration method : interface_decl.getMethods()) + generateMethodJava(env, type_map, writer, interface_decl, method, generate_error_checks); + } + + private static void generateMethodJava(AnnotationProcessorEnvironment env, TypeMap type_map, PrintWriter writer, InterfaceDeclaration interface_decl, MethodDeclaration method, boolean generate_error_checks) { + writer.println(); + if (Utils.isMethodIndirect(generate_error_checks, method)) { + if (method.getAnnotation(GenerateAutos.class) != null) { + printMethodWithMultiType(env, type_map, writer, interface_decl, method, TypeInfo.getDefaultTypeInfoMap(method), Mode.AUTOS, generate_error_checks); + } + Collection> cross_product = TypeInfo.getTypeInfoCrossProduct(type_map, method); + for (Map typeinfos_instance : cross_product) { + printMethodWithMultiType(env, type_map, writer, interface_decl, method, typeinfos_instance, Mode.NORMAL, generate_error_checks); + } + } + printJavaNativeStub(writer, method, Mode.NORMAL, generate_error_checks); + if (Utils.hasMethodBufferObjectParameter(method)) { + printMethodWithMultiType(env, type_map, writer, interface_decl, method, TypeInfo.getDefaultTypeInfoMap(method), Mode.BUFFEROBJECT, generate_error_checks); + printJavaNativeStub(writer, method, Mode.BUFFEROBJECT, generate_error_checks); + } + } + + private static void printJavaNativeStub(PrintWriter writer, MethodDeclaration method, Mode mode, boolean generate_error_checks) { + if (Utils.isMethodIndirect(generate_error_checks, method)) { + writer.print("\tprivate static native "); + } else { + Utils.printDocComment(writer, method); + writer.print("\tpublic static native "); + } + printResultType(writer, method); + writer.print(" " + Utils.getSimpleNativeMethodName(method, generate_error_checks)); + if (mode == Mode.BUFFEROBJECT) + writer.print(Utils.BUFFER_OBJECT_METHOD_POSTFIX); + writer.print("("); + generateParametersJava(writer, method, TypeInfo.getDefaultTypeInfoMap(method), true, mode); + writer.println(");"); + } + + private static void generateParametersJava(PrintWriter writer, MethodDeclaration method, Map typeinfos_instance, + boolean native_stub, Mode mode) { + boolean first_parameter = true; + for (ParameterDeclaration param : method.getParameters()) { + AnnotationMirror auto_annotation_mirror = Utils.getParameterAutoAnnotation(param); + boolean hide_auto_parameter = mode == Mode.NORMAL && !native_stub && auto_annotation_mirror != null; + if (hide_auto_parameter) { + AutoType auto_type_annotation = param.getAnnotation(AutoType.class); + if (auto_type_annotation != null) { + ParameterDeclaration auto_parameter = Utils.findParameter(method, auto_type_annotation.value()); + TypeInfo auto_param_type_info = typeinfos_instance.get(auto_parameter); + if (auto_param_type_info.getSignedness() == Signedness.BOTH) { + if (!first_parameter) + writer.print(", "); + writer.print("boolean " + TypeInfo.UNSIGNED_PARAMETER_NAME); + } + } + } else if (param.getAnnotation(Result.class) == null && (native_stub || param.getAnnotation(Constant.class) == null) && + (getAutoTypeParameter(method, param) == null || mode != Mode.AUTOS)) { + TypeInfo type_info = typeinfos_instance.get(param); + first_parameter = generateParameterJava(writer, param, type_info, native_stub, first_parameter, mode); + } + } + TypeMirror result_type = Utils.getMethodReturnType(method); + if (Utils.getNIOBufferType(result_type) != null) { + writer.print(", int " + Utils.RESULT_SIZE_NAME); + if (method.getAnnotation(CachedResult.class) != null) { + writer.print(", "); + printResultType(writer, method); + writer.print(" " + Utils.CACHED_BUFFER_NAME); + } + } + } + + private static boolean generateParameterJava(PrintWriter writer, ParameterDeclaration param, TypeInfo type_info, boolean native_stub, boolean first_parameter, Mode mode) { + Class buffer_type = Utils.getNIOBufferType(param.getType()); + if (!first_parameter) + writer.print(", "); + BufferObject bo_annotation = param.getAnnotation(BufferObject.class); + if (bo_annotation != null && mode == Mode.BUFFEROBJECT) { + if (buffer_type == null) + throw new RuntimeException("type of " + param + " is not a nio Buffer parameter but is annotated as buffer object"); + writer.print("int " + param.getSimpleName() + Utils.BUFFER_OBJECT_PARAMETER_POSTFIX); + } else { + writer.print(type_info.getType().getSimpleName()); + writer.print(" " + param.getSimpleName()); + if (buffer_type != null && native_stub) + writer.print(", int " + param.getSimpleName() + NativeMethodStubsGenerator.BUFFER_POSITION_POSTFIX); + } + return false; + } + + private static void printBufferObjectCheck(PrintWriter writer, BufferKind kind, Mode mode) { + String bo_check_method_name = kind.toString(); + writer.print("\t\tGLBufferChecks.ensure" + bo_check_method_name); + if (mode == Mode.BUFFEROBJECT) + writer.print("enabled"); + else + writer.print("disabled"); + writer.println("();"); + } + + private static void printBufferObjectChecks(PrintWriter writer, MethodDeclaration method, Mode mode) { + EnumSet check_set = EnumSet.noneOf(BufferKind.class); + for (ParameterDeclaration param : method.getParameters()) { + BufferObject bo_annotation = param.getAnnotation(BufferObject.class); + if (bo_annotation != null) + check_set.add(bo_annotation.value()); + } + for (BufferKind kind : check_set) + printBufferObjectCheck(writer, kind, mode); + } + + private static void printMethodWithMultiType(AnnotationProcessorEnvironment env, TypeMap type_map, PrintWriter writer, InterfaceDeclaration interface_decl, MethodDeclaration method, Map typeinfos_instance, Mode mode, boolean generate_error_checks) { + Utils.printDocComment(writer, method); + writer.print("\tpublic static "); + printResultType(writer, method); + StripPostfix strip_annotation = method.getAnnotation(StripPostfix.class); + String method_name = method.getSimpleName(); + if (strip_annotation != null) { + ParameterDeclaration postfix_parameter = Utils.findParameter(method, strip_annotation.value()); + if (mode == Mode.NORMAL) + method_name = getPostfixStrippedName(type_map, interface_decl, method); + } + writer.print(" " + method_name + "("); + generateParametersJava(writer, method, typeinfos_instance, false, mode); + TypeMirror result_type = Utils.getMethodReturnType(method); + writer.println(") {"); + printBufferObjectChecks(writer, method, mode); + printParameterChecks(writer, method, mode); + Code code_annotation = method.getAnnotation(Code.class); + if (code_annotation != null) + writer.println(code_annotation.value()); + writer.print("\t\t"); + boolean has_result = !result_type.equals(env.getTypeUtils().getVoidType()); + if (has_result) { + printResultType(writer, method); + writer.print(" " + Utils.RESULT_VAR_NAME + " = "); + } + writer.print(Utils.getSimpleNativeMethodName(method, generate_error_checks)); + if (mode == Mode.BUFFEROBJECT) + writer.print(Utils.BUFFER_OBJECT_METHOD_POSTFIX); + writer.print("("); + printMethodCallArguments(writer, method, typeinfos_instance, mode); + writer.println(");"); + if (generate_error_checks && method.getAnnotation(NoErrorCheck.class) == null) + writer.println("\t\t" + type_map.getErrorCheckMethodName() + ";"); + if (has_result) + writer.println("\t\treturn " + Utils.RESULT_VAR_NAME + ";"); + writer.println("\t}"); + } + + private static String getExtensionPostfix(InterfaceDeclaration interface_decl) { + String interface_simple_name = interface_decl.getSimpleName(); + Extension extension_annotation = interface_decl.getAnnotation(Extension.class); + if (extension_annotation == null) { + int underscore_index = interface_simple_name.indexOf("_"); + if (underscore_index != -1) + return interface_simple_name.substring(0, underscore_index); + else + return ""; + } else + return extension_annotation.postfix(); + } + + private static ParameterDeclaration getAutoTypeParameter(MethodDeclaration method, ParameterDeclaration target_parameter) { + for (ParameterDeclaration param : method.getParameters()) { + AnnotationMirror auto_annotation = Utils.getParameterAutoAnnotation(param); + if (auto_annotation != null) { + Class annotation_type = NativeTypeTranslator.getClassFromType(auto_annotation.getAnnotationType()); + String parameter_name; + if (annotation_type.equals(AutoType.class)) + parameter_name = param.getAnnotation(AutoType.class).value(); + else if (annotation_type.equals(AutoSize.class)) + parameter_name = param.getAnnotation(AutoSize.class).value(); + else + throw new RuntimeException("Unkown annotation type " + annotation_type); + if (target_parameter.getSimpleName().equals(parameter_name)) + return param; + } + } + return null; + } + + private static boolean hasAnyParameterAutoTypeAnnotation(MethodDeclaration method, ParameterDeclaration target_param) { + for (ParameterDeclaration param : method.getParameters()) { + AutoType auto_type_annotation = param.getAnnotation(AutoType.class); + if (auto_type_annotation != null) { + ParameterDeclaration type_target_param = Utils.findParameter(method, auto_type_annotation.value()); + if (target_param.equals(type_target_param)) + return true; + } + } + return false; + } + + private static String getPostfixStrippedName(TypeMap type_map, InterfaceDeclaration interface_decl, MethodDeclaration method) { + StripPostfix strip_annotation = method.getAnnotation(StripPostfix.class); + ParameterDeclaration postfix_parameter = Utils.findParameter(method, strip_annotation.value()); + PostfixTranslator translator = new PostfixTranslator(type_map, postfix_parameter); + postfix_parameter.getType().accept(translator); + String postfix = translator.getSignature(); + String method_name = method.getSimpleName(); + String extension_postfix = getExtensionPostfix(interface_decl); + String result; + if (method_name.endsWith(postfix + "v" + extension_postfix)) + result = method_name.substring(0, method_name.length() - (postfix.length() + 1 + extension_postfix.length())); + else if (method_name.endsWith(postfix + extension_postfix)) + result = method_name.substring(0, method_name.length() - (postfix.length() + extension_postfix.length())); + else if (method_name.endsWith("v" + extension_postfix)) + result = method_name.substring(0, method_name.length() - (1 + extension_postfix.length())); + else + throw new RuntimeException(method + " is specified as being postfix stripped on parameter " + postfix_parameter + ", but it's postfix is not '" + postfix + "' nor 'v'"); + return result + extension_postfix; + } + + private static int getBufferElementSizeExponent(Class c) { + if (IntBuffer.class.equals(c)) + return 2; + else if (LongBuffer.class.equals(c)) + return 3; + else if (DoubleBuffer.class.equals(c)) + return 3; + else if (ShortBuffer.class.equals(c)) + return 1; + else if (ByteBuffer.class.equals(c)) + return 0; + else if (FloatBuffer.class.equals(c)) + return 2; + else + throw new RuntimeException(c + " is not allowed"); + } + + private static boolean printMethodCallArgument(PrintWriter writer, MethodDeclaration method, ParameterDeclaration param, Map typeinfos_instance, Mode mode, boolean first_parameter) { + if (!first_parameter) + writer.print(", "); + AnnotationMirror auto_annotation = Utils.getParameterAutoAnnotation(param); + Constant constant_annotation = param.getAnnotation(Constant.class); + if (constant_annotation != null) { + writer.print(constant_annotation.value()); + } else if (auto_annotation != null && mode == Mode.NORMAL) { + Class param_type = NativeTypeTranslator.getClassFromType(auto_annotation.getAnnotationType()); + if (AutoType.class.equals(param_type)) { + AutoType auto_type_annotation = param.getAnnotation(AutoType.class); + String auto_parameter_name = auto_type_annotation.value(); + ParameterDeclaration auto_parameter = Utils.findParameter(method, auto_parameter_name); + String auto_type = typeinfos_instance.get(auto_parameter).getAutoType(); + if (auto_type == null) + throw new RuntimeException("No auto type for parameter " + param.getSimpleName() + " in method " + method); + writer.print(auto_type); + } else if (AutoSize.class.equals(param_type)) { + AutoSize auto_type_annotation = param.getAnnotation(AutoSize.class); + String auto_parameter_name = auto_type_annotation.value(); + ParameterDeclaration auto_target_param = Utils.findParameter(method, auto_parameter_name); + TypeInfo auto_target_type_info = typeinfos_instance.get(auto_target_param); + writer.print("(" + auto_parameter_name + ".remaining()"); + // Shift the remaining if the target parameter is multityped and there's no AutoType to track type + boolean shift_remaining = !hasAnyParameterAutoTypeAnnotation(method, auto_target_param) && Utils.isParameterMultiTyped(auto_target_param); + if (shift_remaining) { + int shifting = getBufferElementSizeExponent(auto_target_type_info.getType()); + if (shifting > 0) + writer.print(" << " + shifting); + } + writer.print(")"); + writer.print(auto_type_annotation.expression()); + } else + throw new RuntimeException("Unknown auto annotation " + param_type); + } else { + if (mode == Mode.BUFFEROBJECT && param.getAnnotation(BufferObject.class) != null) { + writer.print(param.getSimpleName() + Utils.BUFFER_OBJECT_PARAMETER_POSTFIX); + } else { + boolean hide_buffer = mode == Mode.AUTOS && getAutoTypeParameter(method, param) != null; + if (hide_buffer) + writer.print("null"); + else + writer.print(param.getSimpleName()); + Class buffer_type = Utils.getNIOBufferType(param.getType()); + if (buffer_type != null) { + writer.print(", "); + if (!hide_buffer) { + TypeInfo type_info = typeinfos_instance.get(param); + Check check_annotation = param.getAnnotation(Check.class); + int shifting; + if (Utils.getNIOBufferType(param.getType()).equals(Buffer.class)) + shifting = getBufferElementSizeExponent(type_info.getType()); + else + shifting = 0; + writer.print(param.getSimpleName()); + if (check_annotation != null && check_annotation.canBeNull()) + writer.print(" != null ? " + param.getSimpleName()); + writer.print(".position()"); + if (shifting > 0) + writer.print(" << " + shifting); + if (check_annotation != null && check_annotation.canBeNull()) + writer.print(" : 0"); + } else + writer.print("0"); + } + } + } + return false; + } + + private static void printMethodCallArguments(PrintWriter writer, MethodDeclaration method, Map typeinfos_instance, Mode mode) { + Collection params = method.getParameters(); + boolean first_parameter = true; + for (ParameterDeclaration param : method.getParameters()) + if (param.getAnnotation(Result.class) == null) { + first_parameter = printMethodCallArgument(writer, method, param, typeinfos_instance, mode, first_parameter); + } + TypeMirror result_type = Utils.getMethodReturnType(method); + if (Utils.getNIOBufferType(result_type) != null) { + Utils.printExtraCallArguments(writer, method); + } + } + + private static void printParameterChecks(PrintWriter writer, MethodDeclaration method, Mode mode) { + for (ParameterDeclaration param : method.getParameters()) { + Class java_type = Utils.getJavaType(param.getType()); + if (Utils.isAddressableType(java_type) && + (mode != Mode.BUFFEROBJECT || param.getAnnotation(BufferObject.class) == null) && + (mode != Mode.AUTOS || getAutoTypeParameter(method, param) == null) && + param.getAnnotation(Result.class) == null) { + String check_value = null; + boolean can_be_null = false; + Check check_annotation = param.getAnnotation(Check.class); + if (check_annotation != null) { + check_value = check_annotation.value(); + can_be_null = check_annotation.canBeNull(); + } + boolean null_terminated = param.getAnnotation(NullTerminated.class) != null; + if (Buffer.class.isAssignableFrom(java_type)) { + printParameterCheck(writer, param.getSimpleName(), check_value, can_be_null, null_terminated); + } else if (String.class.equals(java_type)) { + if (!can_be_null) + writer.println("\t\tBufferChecks.checkNotNull(" + param.getSimpleName() + ");"); + } + } + } + if (method.getAnnotation(CachedResult.class) != null) + printParameterCheck(writer, Utils.CACHED_BUFFER_NAME, null, true, false); + } + + private static void printParameterCheck(PrintWriter writer, String name, String check_value, boolean can_be_null, boolean null_terminated) { + if (can_be_null) { + writer.println("\t\tif (" + name + " != null)"); + writer.print("\t"); + } + writer.print("\t\tBufferChecks.check"); + if (check_value != null && !check_value.equals("")) { + writer.print("Buffer(" + name + ", " + check_value); + } else { + writer.print("Direct"); + writer.print("(" + name); + } + writer.println(");"); + if (null_terminated) + writer.println("\t\tBufferChecks.checkNullTerminated(" + name + ");"); + } + + private static void printResultType(PrintWriter writer, MethodDeclaration method) { + writer.print(Utils.getMethodReturnType(method).toString()); + } +} diff --git a/src/java/org/lwjgl/generator/JavaTypeTranslator.java b/src/java/org/lwjgl/generator/JavaTypeTranslator.java new file mode 100644 index 00000000..90411621 --- /dev/null +++ b/src/java/org/lwjgl/generator/JavaTypeTranslator.java @@ -0,0 +1,136 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.util.Collection; +import java.util.ArrayList; +import java.util.Iterator; + +import java.io.PrintWriter; +import java.io.IOException; +import java.io.File; + +import java.nio.*; + +import java.lang.annotation.Annotation; + +/** + * $Id$ + * + * A TypeVisitor that translates (annotated) TypeMirrors to + * java types (represented by a Class) + * + * @author elias_naur + * @version $Revision$ + */ +public class JavaTypeTranslator implements TypeVisitor { + private Class type; + + public Class getType() { + return type; + } + + public void visitAnnotationType(AnnotationType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitArrayType(ArrayType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitPrimitiveType(PrimitiveType t) { + switch (t.getKind()) { + case INT: + type = int.class; + break; + case DOUBLE: + type = double.class; + break; + case FLOAT: + type = float.class; + break; + case SHORT: + type = short.class; + break; + case BYTE: + type = byte.class; + break; + case BOOLEAN: + type = boolean.class; + break; + default: + throw new RuntimeException(t.getKind() + " is not allowed"); + } + } + + public void visitDeclaredType(DeclaredType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitEnumType(EnumType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitClassType(ClassType t) { + type = NativeTypeTranslator.getClassFromType(t); + } + + public void visitInterfaceType(InterfaceType t) { + type = NativeTypeTranslator.getClassFromType(t); + } + + public void visitReferenceType(ReferenceType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitTypeMirror(TypeMirror t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitTypeVariable(TypeVariable t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitVoidType(VoidType t) { + type = void.class; + } + + public void visitWildcardType(WildcardType t) { + throw new RuntimeException(t + " is not allowed"); + } +} diff --git a/src/java/org/lwjgl/generator/Mode.java b/src/java/org/lwjgl/generator/Mode.java new file mode 100644 index 00000000..925f9e41 --- /dev/null +++ b/src/java/org/lwjgl/generator/Mode.java @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.io.*; +import java.util.*; + +public enum Mode { + BUFFEROBJECT, + AUTOS, + NORMAL +} diff --git a/src/java/org/lwjgl/generator/NativeMethodStubsGenerator.java b/src/java/org/lwjgl/generator/NativeMethodStubsGenerator.java new file mode 100644 index 00000000..e561d0b0 --- /dev/null +++ b/src/java/org/lwjgl/generator/NativeMethodStubsGenerator.java @@ -0,0 +1,215 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +/** + * $Id$ + * + * This class generates the functions in the native source files. + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.io.*; +import java.util.*; +import java.nio.*; + +public class NativeMethodStubsGenerator { + private final static String BUFFER_ADDRESS_POSTFIX = "_address"; + public final static String BUFFER_POSITION_POSTFIX = "_position"; + + public static void generateNativeMethodStubs(AnnotationProcessorEnvironment env, TypeMap type_map, PrintWriter writer, InterfaceDeclaration d, boolean generate_error_checks) { + for (MethodDeclaration method : d.getMethods()) { + generateMethodStub(env, type_map, writer, Utils.getQualifiedClassName(d), method, Mode.NORMAL, generate_error_checks); + if (Utils.hasMethodBufferObjectParameter(method)) + generateMethodStub(env, type_map, writer, Utils.getQualifiedClassName(d), method, Mode.BUFFEROBJECT, generate_error_checks); + } + } + + private static void generateParameters(PrintWriter writer, Collection params, Mode mode) { + for (ParameterDeclaration param : params) + if (param.getAnnotation(Result.class) == null) + generateParameter(writer, param, mode); + } + + private static void generateParameter(PrintWriter writer, ParameterDeclaration param, Mode mode) { + writer.print(", "); + if (mode == Mode.BUFFEROBJECT && param.getAnnotation(BufferObject.class) != null) { + writer.print("jint " + param.getSimpleName() + Utils.BUFFER_OBJECT_PARAMETER_POSTFIX); + } else { + JNITypeTranslator translator = new JNITypeTranslator(); + param.getType().accept(translator); + writer.print(translator.getSignature() + " " + param.getSimpleName()); + if (Utils.getNIOBufferType(param.getType()) != null) + writer.print(", jint " + param.getSimpleName() + BUFFER_POSITION_POSTFIX); + } + } + + private static void generateMethodStub(AnnotationProcessorEnvironment env, TypeMap type_map, PrintWriter writer, String interface_name, MethodDeclaration method, Mode mode, boolean generate_error_checks) { + TypeMirror result_type = Utils.getMethodReturnType(method); + JNITypeTranslator translator = new JNITypeTranslator(); + result_type.accept(translator); + writer.print("static " + translator.getSignature() + " JNICALL "); + writer.print(Utils.getQualifiedNativeMethodName(interface_name, method, generate_error_checks)); + if (mode == Mode.BUFFEROBJECT) + writer.print(Utils.BUFFER_OBJECT_METHOD_POSTFIX); + writer.print("(JNIEnv *env, jclass clazz"); + generateParameters(writer, method.getParameters(), mode); + if (Utils.getNIOBufferType(result_type) != null) { + writer.print(", jint " + Utils.RESULT_SIZE_NAME); + if (method.getAnnotation(CachedResult.class) != null) + writer.print(", jobject " + Utils.CACHED_BUFFER_NAME); + } + writer.println(") {"); + generateBufferParameterAddresses(type_map, writer, method, mode); + writer.print("\t"); + if (!result_type.equals(env.getTypeUtils().getVoidType())) { + Declaration return_declaration; + ParameterDeclaration result_param = Utils.getResultParameter(method); + if (result_param != null) + return_declaration = result_param; + else + return_declaration = method; + NativeTypeTranslator native_translator = new NativeTypeTranslator(type_map, return_declaration); + result_type.accept(native_translator); + writer.print(native_translator.getSignature() + " " + Utils.RESULT_VAR_NAME); + if (result_param != null) { + writer.println(";"); + writer.print("\t"); + } else + writer.print(" = "); + } + writer.print(method.getSimpleName() + "("); + generateCallParameters(writer, method.getParameters()); + writer.print(")"); + writer.println(";"); + generateStringDeallocations(writer, method.getParameters()); + if (!result_type.equals(env.getTypeUtils().getVoidType())) { + writer.print("\treturn "); + Class java_result_type = Utils.getJavaType(result_type); + if (Buffer.class.isAssignableFrom(java_result_type)) { + if (method.getAnnotation(CachedResult.class) != null) + writer.print("safeNewBufferCached(env, "); + else + writer.print("safeNewBuffer(env, "); + } else if (String.class.equals(java_result_type)) + writer.print("NewStringNative(env, "); + writer.print(Utils.RESULT_VAR_NAME); + if (Buffer.class.isAssignableFrom(java_result_type)) { + Utils.printExtraCallArguments(writer, method); + writer.print(")"); + } else if (String.class.equals(java_result_type)) + writer.print(")"); + writer.println(";"); + } + writer.println("}"); + writer.println(); + } + + private static void generateCallParameters(PrintWriter writer, Collection params) { + if (params.size() > 0) { + Iterator it = params.iterator(); + generateCallParameter(writer, it.next()); + while (it.hasNext()) { + writer.print(", "); + generateCallParameter(writer, it.next()); + } + } + } + + private static void generateCallParameter(PrintWriter writer, ParameterDeclaration param) { + if (param.getAnnotation(Result.class) != null || param.getAnnotation(Indirect.class) != null) + writer.print("&"); + if (param.getAnnotation(Result.class) != null) { + writer.print(Utils.RESULT_VAR_NAME); + } else { + writer.print(param.getSimpleName()); + if (Utils.isAddressableType(param.getType())) { + writer.print(BUFFER_ADDRESS_POSTFIX); + } + } + } + + private static void generateStringDeallocations(PrintWriter writer, Collection params) { + for (ParameterDeclaration param : params) + if (Utils.getJavaType(param.getType()).equals(String.class) && + param.getAnnotation(Result.class) == null) + writer.println("\tfree(" + param.getSimpleName() + BUFFER_ADDRESS_POSTFIX + ");"); + } + + private static void generateBufferParameterAddresses(TypeMap type_map, PrintWriter writer, MethodDeclaration method, Mode mode) { + for (ParameterDeclaration param : method.getParameters()) + if (Utils.isAddressableType(param.getType()) && + param.getAnnotation(Result.class) == null) + generateBufferParameterAddress(type_map, writer, method, param, mode); + } + + private static void generateBufferParameterAddress(TypeMap type_map, PrintWriter writer, MethodDeclaration method, ParameterDeclaration param, Mode mode) { + NativeTypeTranslator translator = new NativeTypeTranslator(type_map, param); + param.getType().accept(translator); + writer.print("\t" + translator.getSignature() + param.getSimpleName()); + writer.print(BUFFER_ADDRESS_POSTFIX + " = (("); + writer.print(translator.getSignature()); + Check check_annotation = param.getAnnotation(Check.class); + writer.print(")"); + if (mode == Mode.BUFFEROBJECT && param.getAnnotation(BufferObject.class) != null) { + writer.print("offsetToPointer(" + param.getSimpleName() + Utils.BUFFER_OBJECT_PARAMETER_POSTFIX + "))"); + } else { + Class java_type = Utils.getJavaType(param.getType()); + if (Buffer.class.isAssignableFrom(java_type)) { + boolean explicitly_byte_sized = java_type.equals(Buffer.class); + if (explicitly_byte_sized) + writer.print("(((char *)"); + if (method.getAnnotation(GenerateAutos.class) != null || (check_annotation != null && check_annotation.canBeNull())) { + writer.print("safeGetBufferAddress(env, " + param.getSimpleName()); + } else { + writer.print("(*env)->GetDirectBufferAddress(env, " + param.getSimpleName()); + } + writer.print("))"); + writer.print(" + " + param.getSimpleName() + BUFFER_POSITION_POSTFIX); + if (explicitly_byte_sized) + writer.print("))"); + } else if (java_type.equals(String.class)) { + writer.print("GetStringNativeChars(env, " + param.getSimpleName() + "))"); + } else + throw new RuntimeException("Illegal type " + java_type); + } + writer.println(";"); + } +} diff --git a/src/java/org/lwjgl/generator/NativeType.java b/src/java/org/lwjgl/generator/NativeType.java new file mode 100644 index 00000000..696e9af3 --- /dev/null +++ b/src/java/org/lwjgl/generator/NativeType.java @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * This annotation indicates that another annotation is + * a native type. + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.type.PrimitiveType; +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.ANNOTATION_TYPE) +public @interface NativeType { +} diff --git a/src/java/org/lwjgl/generator/NativeTypeTranslator.java b/src/java/org/lwjgl/generator/NativeTypeTranslator.java new file mode 100644 index 00000000..c666bfb8 --- /dev/null +++ b/src/java/org/lwjgl/generator/NativeTypeTranslator.java @@ -0,0 +1,210 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +/** + * $Id$ + * + * A TypeVisitor that translates types (and optional native type + * annotations) to the native type string. + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.util.Collection; +import java.util.ArrayList; +import java.util.Iterator; + +import java.io.PrintWriter; +import java.io.IOException; +import java.io.File; + +import java.nio.*; + +import java.lang.annotation.Annotation; + +/** + * $Id$ + * + * A TypeVisitor that translates (annotated) TypeMirrors to + * native types + * + * @author elias_naur + * @version $Revision$ + */ +public class NativeTypeTranslator implements TypeVisitor { + private Collection native_types; + private boolean is_indirect; + private final Declaration declaration; + private final TypeMap type_map; + + public NativeTypeTranslator(TypeMap type_map, Declaration declaration) { + this.declaration = declaration; + this.type_map = type_map; + } + + public String getSignature() { + StringBuilder signature = new StringBuilder(); + if (declaration.getAnnotation(Const.class) != null) + signature.append("const "); + if (native_types.size() != 1) + throw new RuntimeException("Expected only one native type for declaration " + declaration + + ", but got " + native_types.size()); + // Use the name of the native type annotation as the C type name + signature.append(native_types.iterator().next().getSimpleName()); + if (is_indirect) + signature.append(" *"); + return signature.toString(); + } + + public void visitAnnotationType(AnnotationType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitArrayType(ArrayType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public static PrimitiveType.Kind getPrimitiveKindFromBufferClass(Class c) { + if (IntBuffer.class.equals(c)) + return PrimitiveType.Kind.INT; + else if (DoubleBuffer.class.equals(c)) + return PrimitiveType.Kind.DOUBLE; + else if (ShortBuffer.class.equals(c)) + return PrimitiveType.Kind.SHORT; + else if (ByteBuffer.class.equals(c)) + return PrimitiveType.Kind.BYTE; + else if (FloatBuffer.class.equals(c)) + return PrimitiveType.Kind.FLOAT; + else + throw new RuntimeException(c + " is not allowed"); + } + + public static Class getClassFromType(DeclaredType t) { + try { + return Class.forName(t.getDeclaration().getQualifiedName()); + } catch (ClassNotFoundException e) { + throw new RuntimeException(e); + } + } + + private void getNativeTypeFromAnnotatedPrimitiveType(PrimitiveType.Kind kind) { + native_types = translateAnnotations(); + if (native_types.size() == 0) + native_types.add(type_map.getNativeTypeFromPrimitiveType(kind)); + } + + public void visitClassType(ClassType t) { + Class c = getClassFromType(t); + if (String.class.equals(c)) { + native_types = new ArrayList(); + native_types.add(type_map.getStringElementType()); + } else if (Buffer.class.equals(c)) { + native_types = new ArrayList(); + native_types.add(type_map.getVoidType()); + } else if (Buffer.class.isAssignableFrom(c)) { + PrimitiveType.Kind kind = getPrimitiveKindFromBufferClass(c); + getNativeTypeFromAnnotatedPrimitiveType(kind); + } else + throw new RuntimeException(t + " is not allowed"); + is_indirect = true; + } + + public void visitPrimitiveType(PrimitiveType t) { + getNativeTypeFromAnnotatedPrimitiveType(t.getKind()); + } + + public void visitDeclaredType(DeclaredType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitEnumType(EnumType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitInterfaceType(InterfaceType t) { + throw new RuntimeException(t + " is not allowed"); + } + + // Check if the annotation is itself annotated with a certain annotation type + public static T getAnnotation(AnnotationMirror annotation, Class type) { + return annotation.getAnnotationType().getDeclaration().getAnnotation(type); + } + + private Class translateAnnotation(AnnotationMirror annotation) { + NativeType native_type = getAnnotation(annotation, NativeType.class); + if (native_type != null) { + return getClassFromType(annotation.getAnnotationType()); + } else + return null; + } + + private Collection translateAnnotations() { + Collection result = new ArrayList(); + for (AnnotationMirror annotation : Utils.getSortedAnnotations(declaration.getAnnotationMirrors())) { + Class translated_result = translateAnnotation(annotation); + if (translated_result != null) { + result.add(translated_result); + } + } + return result; + } + + public void visitReferenceType(ReferenceType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitTypeMirror(TypeMirror t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitTypeVariable(TypeVariable t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitVoidType(VoidType t) { + native_types = translateAnnotations(); + if (native_types.size() == 0) + native_types.add(void.class); + } + + public void visitWildcardType(WildcardType t) { + throw new RuntimeException(t + " is not allowed"); + } +} diff --git a/src/java/org/lwjgl/generator/NoErrorCheck.java b/src/java/org/lwjgl/generator/NoErrorCheck.java new file mode 100644 index 00000000..3fb52751 --- /dev/null +++ b/src/java/org/lwjgl/generator/NoErrorCheck.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * This annotation implies that a method should not include + * error checking even if it is enabled. + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.METHOD) +public @interface NoErrorCheck { +} diff --git a/src/java/org/lwjgl/generator/NullTerminated.java b/src/java/org/lwjgl/generator/NullTerminated.java new file mode 100644 index 00000000..82a0d428 --- /dev/null +++ b/src/java/org/lwjgl/generator/NullTerminated.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * This annotation implies that a Buffer argument should be + * checked for a trailing '\0' + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.PARAMETER) +public @interface NullTerminated { +} diff --git a/src/java/org/lwjgl/generator/Platform.java b/src/java/org/lwjgl/generator/Platform.java new file mode 100644 index 00000000..acbcf761 --- /dev/null +++ b/src/java/org/lwjgl/generator/Platform.java @@ -0,0 +1,82 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +import java.io.PrintWriter; + +public enum Platform { + WGL, + GLX, + ALL; + + public void printPrologue(PrintWriter writer) { + if (this == ALL) + return; + writer.print("#ifdef "); + switch (this) { + case WGL: + writer.println("_WIN32"); + break; + case GLX: + writer.println("_X11"); + break; + default: + throw new RuntimeException(this + " is not supported"); + } + } + + public void printEpilogue(PrintWriter writer) { + if (this == ALL) + return; + writer.println("#endif"); + } + + public String getPostfix() { + switch (this) { + case WGL: + return "wgl"; + case GLX: + return "glX"; + case ALL: + return "gl"; + default: + throw new RuntimeException(this + " is not supported"); + } + } +} diff --git a/src/java/org/lwjgl/generator/PlatformDependent.java b/src/java/org/lwjgl/generator/PlatformDependent.java new file mode 100644 index 00000000..ee6f2423 --- /dev/null +++ b/src/java/org/lwjgl/generator/PlatformDependent.java @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * This annotation implies that the corresponding native + * function symbol is named after the platform specific + * window system (glX, wgl, ...) + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.METHOD) +public @interface PlatformDependent { + Platform[] value(); +} diff --git a/src/java/org/lwjgl/generator/PostfixTranslator.java b/src/java/org/lwjgl/generator/PostfixTranslator.java new file mode 100644 index 00000000..6f847c2b --- /dev/null +++ b/src/java/org/lwjgl/generator/PostfixTranslator.java @@ -0,0 +1,187 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +/** + * $Id$ + * + * A TypeVisitor that translates (annotated) TypeMirrors to + * postfixes. + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.util.Collection; +import java.util.Iterator; + +import java.io.PrintWriter; +import java.io.IOException; +import java.io.File; + +import java.nio.*; + +import java.lang.annotation.Annotation; + +public class PostfixTranslator implements TypeVisitor { + private final StringBuilder signature = new StringBuilder(); + private final Declaration declaration; + private final TypeMap type_map; + + public PostfixTranslator(TypeMap type_map, Declaration declaration) { + this.declaration = declaration; + this.type_map = type_map; + } + + public String getSignature() { + return signature.toString(); + } + + public void visitAnnotationType(AnnotationType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitArrayType(ArrayType t) { + throw new RuntimeException(t + " is not allowed"); + } + + private static PrimitiveType.Kind getPrimitiveKindFromBufferClass(Class c) { + if (IntBuffer.class.equals(c)) + return PrimitiveType.Kind.INT; + else if (DoubleBuffer.class.equals(c)) + return PrimitiveType.Kind.DOUBLE; + else if (ShortBuffer.class.equals(c)) + return PrimitiveType.Kind.SHORT; + else if (ByteBuffer.class.equals(c)) + return PrimitiveType.Kind.BYTE; + else if (FloatBuffer.class.equals(c)) + return PrimitiveType.Kind.FLOAT; + else + throw new RuntimeException(c + " is not allowed"); + } + + public void visitClassType(ClassType t) { + Class c = NativeTypeTranslator.getClassFromType(t); + PrimitiveType.Kind kind = getPrimitiveKindFromBufferClass(c); + visitPrimitiveTypeKind(kind); + } + + public void visitDeclaredType(DeclaredType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitEnumType(EnumType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitInterfaceType(InterfaceType t) { + throw new RuntimeException(t + " is not allowed"); + } + + private boolean translateAnnotation(AnnotationMirror annotation) { + NativeType native_type = NativeTypeTranslator.getAnnotation(annotation, NativeType.class); + if (native_type != null) { + Class annotation_class = NativeTypeTranslator.getClassFromType(annotation.getAnnotationType()); + signature.append(type_map.translateAnnotation(annotation_class)); + return true; + } else + return false; + } + + private boolean translateAnnotations() { + boolean result = false; + for (AnnotationMirror annotation : Utils.getSortedAnnotations(declaration.getAnnotationMirrors())) + if (translateAnnotation(annotation)) { + if (result) + throw new RuntimeException("Multiple native types"); + result = true; + } + return result; + } + + public void visitPrimitiveType(PrimitiveType t) { + throw new RuntimeException(t + " is not allowed"); + } + + private void visitPrimitiveTypeKind(PrimitiveType.Kind kind) { + boolean annotated_translation = translateAnnotations(); + if (annotated_translation) + return; + // No annotation type was specified, fall back to default + String type; + switch (kind) { + case INT: + type = "i"; + break; + case DOUBLE: + type = "d"; + break; + case FLOAT: + type = "f"; + break; + case SHORT: + type = "s"; + break; + case BYTE: + type = "b"; + break; + default: + throw new RuntimeException(kind + " is not allowed"); + } + signature.append(type); + } + + public void visitReferenceType(ReferenceType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitTypeMirror(TypeMirror t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitTypeVariable(TypeVariable t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitVoidType(VoidType t) { + } + + public void visitWildcardType(WildcardType t) { + throw new RuntimeException(t + " is not allowed"); + } +} diff --git a/src/java/org/lwjgl/generator/RegisterStubsGenerator.java b/src/java/org/lwjgl/generator/RegisterStubsGenerator.java new file mode 100644 index 00000000..ba8e753a --- /dev/null +++ b/src/java/org/lwjgl/generator/RegisterStubsGenerator.java @@ -0,0 +1,120 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +/** + * $Id$ + * + * This class generates the initNatives native function. + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.io.*; +import java.util.*; +import java.nio.*; + +public class RegisterStubsGenerator { + public static void generateMethodsNativeStubBind(PrintWriter writer, InterfaceDeclaration d, boolean generate_error_checks) { + Iterator it = d.getMethods().iterator(); + while (it.hasNext()) { + MethodDeclaration method = it.next(); + EnumSet platforms; + PlatformDependent platform_annotation = method.getAnnotation(PlatformDependent.class); + if (platform_annotation != null) + platforms = EnumSet.copyOf(Arrays.asList(platform_annotation.value())); + else + platforms = EnumSet.of(Platform.ALL); + for (Platform platform : platforms) { + platform.printPrologue(writer); + boolean has_buffer_parameter = Utils.hasMethodBufferObjectParameter(method); + printMethodNativeStubBind(writer, d, method, platform, Mode.NORMAL, it.hasNext() || has_buffer_parameter, generate_error_checks); + if (has_buffer_parameter) { + printMethodNativeStubBind(writer, d, method, platform, Mode.BUFFEROBJECT, it.hasNext(), generate_error_checks); + } + platform.printEpilogue(writer); + } + } + writer.println(); + } + + private static String getTypeSignature(TypeMirror type, boolean add_position_signature) { + SignatureTranslator v = new SignatureTranslator(add_position_signature); + type.accept(v); + return v.getSignature(); + } + + private static String getMethodSignature(MethodDeclaration method, Mode mode) { + Collection params = method.getParameters(); + String signature = "("; + for (ParameterDeclaration param : params) { + if (param.getAnnotation(Result.class) != null) + continue; + if (mode == Mode.BUFFEROBJECT && param.getAnnotation(BufferObject.class) != null) { + signature += "I"; + } else { + signature += getTypeSignature(param.getType(), true); + } + } + TypeMirror result_type = Utils.getMethodReturnType(method); + if (Utils.getNIOBufferType(result_type) != null) + signature += "I"; + String result_type_signature = getTypeSignature(result_type, false); + if (method.getAnnotation(CachedResult.class) != null) + signature += result_type_signature; + signature += ")"; + signature += result_type_signature; + return signature; + } + + private static void printMethodNativeStubBind(PrintWriter writer, InterfaceDeclaration d, MethodDeclaration method, Platform platform, Mode mode, boolean has_more, boolean generate_error_checks) { + writer.print("\t\t{\"" + Utils.getSimpleNativeMethodName(method, generate_error_checks)); + if (mode == Mode.BUFFEROBJECT) + writer.print(Utils.BUFFER_OBJECT_METHOD_POSTFIX); + writer.print("\", \"" + getMethodSignature(method, mode) + "\", (void *)&"); + writer.print(Utils.getQualifiedNativeMethodName(Utils.getQualifiedClassName(d), method, generate_error_checks)); + if (mode == Mode.BUFFEROBJECT) + writer.print(Utils.BUFFER_OBJECT_METHOD_POSTFIX); + String opengl_handle_name = method.getSimpleName().replaceFirst("gl", platform.getPostfix()); + writer.print(", \"" + opengl_handle_name + "\", (void *)&" + method.getSimpleName() + "}"); + if (has_more) + writer.println(","); + } + +} diff --git a/src/java/org/lwjgl/generator/Result.java b/src/java/org/lwjgl/generator/Result.java new file mode 100644 index 00000000..64cb6bcd --- /dev/null +++ b/src/java/org/lwjgl/generator/Result.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * This annotation indicates that the method result is in the + * specified parameter. + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.PARAMETER) +public @interface Result { +} diff --git a/src/java/org/lwjgl/generator/SignatureTranslator.java b/src/java/org/lwjgl/generator/SignatureTranslator.java new file mode 100644 index 00000000..c5ba7467 --- /dev/null +++ b/src/java/org/lwjgl/generator/SignatureTranslator.java @@ -0,0 +1,145 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +/** + * $Id$ + * + * A TypeVisitor that translates types to JNI signatures. + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.nio.*; + +class SignatureTranslator implements TypeVisitor { + private final boolean add_position_signature; + private final StringBuilder signature = new StringBuilder(); + + public SignatureTranslator(boolean add_position_signature) { + this.add_position_signature = add_position_signature; + } + + private static String getNativeNameFromClassName(String class_name) { + return class_name.replaceAll("\\.", "/"); + } + + public String getSignature() { + return signature.toString(); + } + + public void visitAnnotationType(AnnotationType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitArrayType(ArrayType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitClassType(ClassType t) { + String type_name = getNativeNameFromClassName(t.getDeclaration().getQualifiedName()); + signature.append("L"); + signature.append(type_name); + signature.append(";"); + if (add_position_signature && Buffer.class.isAssignableFrom(NativeTypeTranslator.getClassFromType(t))) { + signature.append("I"); + } + } + + public void visitDeclaredType(DeclaredType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitEnumType(EnumType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitInterfaceType(InterfaceType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitPrimitiveType(PrimitiveType t) { + String type; + switch (t.getKind()) { + case BOOLEAN: + signature.append("Z"); + break; + case INT: + signature.append("I"); + break; + case FLOAT: + signature.append("F"); + break; + case SHORT: + signature.append("S"); + break; + case DOUBLE: + signature.append("D"); + break; + case BYTE: + signature.append("B"); + break; + case LONG: + signature.append("J"); + break; + default: + throw new RuntimeException("Unsupported type " + t); + } + } + + public void visitReferenceType(ReferenceType t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitTypeMirror(TypeMirror t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitTypeVariable(TypeVariable t) { + throw new RuntimeException(t + " is not allowed"); + } + + public void visitVoidType(VoidType t) { + signature.append("V"); + } + + public void visitWildcardType(WildcardType t) { + throw new RuntimeException(t + " is not allowed"); + } +} diff --git a/src/java/org/lwjgl/generator/Signedness.java b/src/java/org/lwjgl/generator/Signedness.java new file mode 100644 index 00000000..a8cc7b6b --- /dev/null +++ b/src/java/org/lwjgl/generator/Signedness.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * @author elias_naur + * @version $Revision$ + */ + +public enum Signedness { + SIGNED, + UNSIGNED, + NONE, + BOTH +} diff --git a/src/java/org/lwjgl/generator/StripPostfix.java b/src/java/org/lwjgl/generator/StripPostfix.java new file mode 100644 index 00000000..c00268b1 --- /dev/null +++ b/src/java/org/lwjgl/generator/StripPostfix.java @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * This annotation implies that a method have its postfix stripped + * according to a specified Buffer parameter. + * + * @author elias_naur + * @version $Revision$ + */ + +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Target(ElementType.METHOD) +public @interface StripPostfix { + String value(); // The parameter to deduce the postfix from +} diff --git a/src/java/org/lwjgl/generator/TypeInfo.java b/src/java/org/lwjgl/generator/TypeInfo.java new file mode 100644 index 00000000..75ccbb10 --- /dev/null +++ b/src/java/org/lwjgl/generator/TypeInfo.java @@ -0,0 +1,216 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * This class represent a parameter configuration. There are multiple + * TypeInfos in case of multityped parameters. + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; + +import java.util.*; +import java.nio.*; + +public class TypeInfo { + public final static String UNSIGNED_PARAMETER_NAME = "unsigned"; + + private final Signedness signedness; + private final Class type; + private final String auto_type; + + private TypeInfo(Class type, Signedness signedness, String auto_type) { + this.type = type; + this.signedness = signedness; + this.auto_type = auto_type; + } + + public Class getType() { + return type; + } + + public Signedness getSignedness() { + return signedness; + } + + public String getAutoType() { + if (auto_type == null) + throw new RuntimeException("No auto type assigned"); + return auto_type; + } + + private static Class getTypeFromPrimitiveKind(PrimitiveType.Kind kind) { + Class type; + switch (kind) { + case INT: + type = int.class; + break; + case FLOAT: + type = float.class; + break; + case DOUBLE: + type = double.class; + break; + case SHORT: + type = short.class; + break; + case BYTE: + type = byte.class; + break; + default: + throw new RuntimeException(kind + " is not allowed"); + } + return type; + } + + private static Class getBufferTypeFromPrimitiveKind(PrimitiveType.Kind kind) { + Class type; + switch (kind) { + case INT: + type = IntBuffer.class; + break; + case FLOAT: + type = FloatBuffer.class; + break; + case DOUBLE: + type = DoubleBuffer.class; + break; + case SHORT: + type = ShortBuffer.class; + break; + case BYTE: /* fall through */ + case BOOLEAN: + type = ByteBuffer.class; + break; + default: + throw new RuntimeException(kind + " is not allowed"); + } + return type; + } + + private static TypeInfo getDefaultTypeInfo(TypeMirror t) { + Class java_type = Utils.getJavaType(t); + return new TypeInfo(java_type, Signedness.NONE, null); + } + + public static Map getDefaultTypeInfoMap(MethodDeclaration method) { + Map map = new HashMap(); + for (ParameterDeclaration param : method.getParameters()) { + TypeInfo type_info = getDefaultTypeInfo(param.getType()); + map.put(param, type_info); + } + return map; + } + + private static Collection getTypeInfos(TypeMap type_map, Declaration param, TypeMirror decl_type) { + Collection annotations = Utils.getSortedAnnotations(param.getAnnotationMirrors()); + Map types = new HashMap(); + boolean add_default_type = true; + for (AnnotationMirror annotation : annotations) { + NativeType native_type_annotation = NativeTypeTranslator.getAnnotation(annotation, NativeType.class); + if (native_type_annotation != null) { + Class annotation_type = NativeTypeTranslator.getClassFromType(annotation.getAnnotationType()); + Signedness signedness = type_map.getSignednessFromType(annotation_type); + Class inverse_type = type_map.getInverseType(annotation_type); + String auto_type = type_map.getAutoTypeFromAnnotation(annotation); + if (inverse_type != null) { + if (types.containsKey(inverse_type)) { + String inverse_auto_type = types.get(inverse_type).getAutoType(); + auto_type = signedness == Signedness.UNSIGNED ? auto_type + " : " + inverse_auto_type : + inverse_auto_type + " : " + auto_type; + auto_type = UNSIGNED_PARAMETER_NAME + " ? " + auto_type; + signedness = Signedness.BOTH; + types.remove(inverse_type); + } + } + Class type; + PrimitiveType.Kind kind = type_map.getPrimitiveTypeFromNativeType(annotation_type); + if (Utils.getNIOBufferType(decl_type) != null) + type = getBufferTypeFromPrimitiveKind(kind); + else + type = getTypeFromPrimitiveKind(kind); + types.put(annotation_type, new TypeInfo(type, signedness, auto_type)); + add_default_type = false; + } + } + if (add_default_type) { + TypeInfo default_type_info = getDefaultTypeInfo(decl_type); + Collection result = new ArrayList(); + result.add(default_type_info); + return result; + } else + return types.values(); + } + + private static Map> getTypeInfoMap(TypeMap type_map, MethodDeclaration method) { + Map> map = new HashMap>(); + for (ParameterDeclaration param : method.getParameters()) { + Collection types = getTypeInfos(type_map, param, param.getType()); + map.put(param, types); + } + return map; + } + + public static Collection> getTypeInfoCrossProduct(TypeMap type_map, MethodDeclaration method) { + Collection parameter_collection = method.getParameters(); + ParameterDeclaration[] parameters = new ParameterDeclaration[parameter_collection.size()]; + parameter_collection.toArray(parameters); + Collection> cross_product = new ArrayList>(); + getCrossProductRecursive(0, parameters, getTypeInfoMap(type_map, method), + new HashMap(), cross_product); + return cross_product; + } + + private static void getCrossProductRecursive(int index, ParameterDeclaration[] parameters, Map> typeinfos_map, HashMap current_instance, + Collection> cross_product) { + if (index == parameters.length) { + cross_product.add(current_instance); + return; + } + ParameterDeclaration param = parameters[index]; + Collection typeinfos = typeinfos_map.get(param); + if (typeinfos != null) { + for (TypeInfo typeinfo : typeinfos) { + HashMap instance = (HashMap)current_instance.clone(); + instance.put(param, typeinfo); + getCrossProductRecursive(index + 1, parameters, typeinfos_map, instance, cross_product); + } + } + } +} diff --git a/src/java/org/lwjgl/generator/TypeMap.java b/src/java/org/lwjgl/generator/TypeMap.java new file mode 100644 index 00000000..14380a72 --- /dev/null +++ b/src/java/org/lwjgl/generator/TypeMap.java @@ -0,0 +1,67 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +/** + * $Id$ + * + * The interface to the OpenAL/OpenGL specific generator behaviour + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.io.*; +import java.util.*; +import java.nio.*; + +public interface TypeMap { + public String getErrorCheckMethodName(); + public String getRegisterNativesFunctionName(); + public PrimitiveType.Kind getPrimitiveTypeFromNativeType(Class native_type); + public String getTypedefPrefix(); + public void printNativeIncludes(PrintWriter writer); + public Class getStringElementType(); + public Class[] getValidAnnotationTypes(Class type); + public Class getVoidType(); + public String translateAnnotation(Class annotation_type); + public Class getNativeTypeFromPrimitiveType(PrimitiveType.Kind kind); + public String getAutoTypeFromAnnotation(AnnotationMirror annotation); + public Class getInverseType(Class type); + public Signedness getSignednessFromType(Class type); +} diff --git a/src/java/org/lwjgl/generator/TypedefsGenerator.java b/src/java/org/lwjgl/generator/TypedefsGenerator.java new file mode 100644 index 00000000..63cbc019 --- /dev/null +++ b/src/java/org/lwjgl/generator/TypedefsGenerator.java @@ -0,0 +1,93 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.generator; + +/** + * $Id$ + * + * A TypeVisitor that generates the native typedefs. + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +import java.io.*; +import java.util.*; + +public class TypedefsGenerator { + public final static String TYPEDEF_POSTFIX = "PROC"; + + private static void generateNativeTypedefs(TypeMap type_map, PrintWriter writer, MethodDeclaration method) { + TypeMirror return_type = method.getReturnType(); + writer.print("typedef "); + NativeTypeTranslator translator = new NativeTypeTranslator(type_map, method); + return_type.accept(translator); + writer.print(translator.getSignature()); + writer.print(" ("); + writer.print(type_map.getTypedefPrefix()); + writer.print(" *" + method.getSimpleName() + TYPEDEF_POSTFIX + ") ("); + generateNativeTypedefsParameters(type_map, writer, method.getParameters()); + writer.println(");"); + } + + private static void generateNativeTypedefsParameters(TypeMap type_map, PrintWriter writer, Collection params) { + if (params.size() > 0) { + Iterator it = params.iterator(); + generateNativeTypedefsParameter(type_map, writer, it.next()); + while (it.hasNext()) { + writer.print(", "); + generateNativeTypedefsParameter(type_map, writer, it.next()); + } + } + } + + private static void generateNativeTypedefsParameter(TypeMap type_map, PrintWriter writer, ParameterDeclaration param) { + NativeTypeTranslator translator = new NativeTypeTranslator(type_map, param); + param.getType().accept(translator); + writer.print(translator.getSignature()); + if (param.getAnnotation(Result.class) != null || param.getAnnotation(Indirect.class) != null) + writer.print("*"); + writer.print(" " + param.getSimpleName()); + } + + public static void generateNativeTypedefs(TypeMap type_map, PrintWriter writer, Collection methods) { + for (MethodDeclaration method : methods) + generateNativeTypedefs(type_map, writer, method); + } + +} diff --git a/src/java/org/lwjgl/generator/Utils.java b/src/java/org/lwjgl/generator/Utils.java new file mode 100644 index 00000000..90ff6052 --- /dev/null +++ b/src/java/org/lwjgl/generator/Utils.java @@ -0,0 +1,236 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.generator; + +/** + * $Id$ + * + * Various utility methods to the generator. + * + * @author elias_naur + * @version $Revision$ + */ + +import com.sun.mirror.type.*; +import java.nio.Buffer; +import java.io.*; +import java.util.*; + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.*; +import com.sun.mirror.type.*; +import com.sun.mirror.util.*; + +public class Utils { + public final static String BUFFER_OBJECT_METHOD_POSTFIX = "BO"; + public final static String BUFFER_OBJECT_PARAMETER_POSTFIX = "_buffer_offset"; + public final static String RESULT_SIZE_NAME = "result_size"; + public final static String RESULT_VAR_NAME = "__result"; + public final static String CACHED_BUFFER_NAME = "old_buffer"; + private final static String OVERLOADED_METHOD_PREFIX = "n"; + + private static class AnnotationMirrorComparator implements Comparator { + public int compare(AnnotationMirror a1, AnnotationMirror a2) { + String n1 = a1.getAnnotationType().getDeclaration().getQualifiedName(); + String n2 = a2.getAnnotationType().getDeclaration().getQualifiedName(); + int result = n1.compareTo(n2); + return result; + } + + public boolean equals(AnnotationMirror a1, AnnotationMirror a2) { + return compare(a1, a2) == 0; + } + } + + public static Collection getSortedAnnotations(Collection annotations) { + List annotation_list = new ArrayList(annotations); + Collections.sort(annotation_list, new AnnotationMirrorComparator()); + return annotation_list; + } + + public static boolean isAddressableType(TypeMirror type) { + return isAddressableType(getJavaType(type)); + } + + public static boolean isAddressableType(Class type) { + return Buffer.class.isAssignableFrom(type) || String.class.equals(type); + } + + public static Class getJavaType(TypeMirror type_mirror) { + JavaTypeTranslator translator = new JavaTypeTranslator(); + type_mirror.accept(translator); + return translator.getType(); + } + + private static boolean hasParameterMultipleTypes(ParameterDeclaration param) { + int num_native_annotations = 0; + for (AnnotationMirror annotation : param.getAnnotationMirrors()) + if (NativeTypeTranslator.getAnnotation(annotation, NativeType.class) != null) + num_native_annotations++; + return num_native_annotations > 1; + } + + public static boolean isParameterMultiTyped(ParameterDeclaration param) { + boolean result = Buffer.class.equals(Utils.getJavaType(param.getType())); + if (!result && hasParameterMultipleTypes(param)) + throw new RuntimeException(param + " not defined as java.nio.Buffer but has multiple types"); + return result; + } + + public static ParameterDeclaration findParameter(MethodDeclaration method, String name) { + for (ParameterDeclaration param : method.getParameters()) + if (param.getSimpleName().equals(name)) + return param; + throw new RuntimeException("Parameter " + name + " not found"); + } + + public static void printDocComment(PrintWriter writer, Declaration decl) { + String doc_comment = decl.getDocComment(); + if (doc_comment != null) { + writer.println("\t/**"); + StringTokenizer doc_lines = new StringTokenizer(doc_comment, "\n"); + while (doc_lines.hasMoreTokens()) + writer.println("\t *" + doc_lines.nextToken()); + writer.println("\t */"); + } + } + + public static AnnotationMirror getParameterAutoAnnotation(ParameterDeclaration param) { + for (AnnotationMirror annotation : param.getAnnotationMirrors()) + if (NativeTypeTranslator.getAnnotation(annotation, Auto.class) != null) + return annotation; + return null; + } + + public static boolean isMethodIndirect(boolean generate_error_checks, MethodDeclaration method) { + for (ParameterDeclaration param : method.getParameters()) { + if (isAddressableType(param.getType()) || getParameterAutoAnnotation(param) != null || + param.getAnnotation(Constant.class) != null) + return true; + } + return hasMethodBufferObjectParameter(method) || method.getAnnotation(Code.class) != null || + method.getAnnotation(CachedResult.class) != null || + (generate_error_checks && method.getAnnotation(NoErrorCheck.class) == null); + } + + public static String getNativeQualifiedName(String qualified_name) { + return qualified_name.replaceAll("\\.", "_"); + } + + public static String getQualifiedNativeMethodName(String qualified_class_name, String method_name) { + return "Java_" + getNativeQualifiedName(qualified_class_name) + "_" + method_name; + } + + public static String getQualifiedNativeMethodName(String qualified_class_name, MethodDeclaration method, boolean generate_error_checks) { + String method_name = getSimpleNativeMethodName(method, generate_error_checks); + return getQualifiedNativeMethodName(qualified_class_name, method_name); + } + + public static ParameterDeclaration getResultParameter(MethodDeclaration method) { + ParameterDeclaration result_param = null; + for (ParameterDeclaration param : method.getParameters()) { + if (param.getAnnotation(Result.class) != null) { + if (result_param != null) + throw new RuntimeException("Multiple parameters annotated with Result in method " + method); + result_param = param; + } + } + return result_param; + } + + public static TypeMirror getMethodReturnType(MethodDeclaration method) { + TypeMirror result_type; + ParameterDeclaration result_param = getResultParameter(method); + if (result_param != null) { + result_type = result_param.getType(); + } else + result_type = method.getReturnType(); + return result_type; + } + + public static void printExtraCallArguments(PrintWriter writer, MethodDeclaration method) { + writer.print(", " + RESULT_SIZE_NAME); + if (method.getAnnotation(CachedResult.class) != null) { + writer.print(", " + CACHED_BUFFER_NAME); + } + } + + private static String getClassName(InterfaceDeclaration interface_decl, String opengl_name) { + Extension extension_annotation = interface_decl.getAnnotation(Extension.class); + if (extension_annotation != null && !extension_annotation.className().equals("")) { + return extension_annotation.className(); + } + StringBuilder result = new StringBuilder(); + for (int i = 0; i < opengl_name.length(); i++) { + int ch = opengl_name.codePointAt(i); + if (ch == '_') { + i++; + result.appendCodePoint(Character.toUpperCase(opengl_name.codePointAt(i))); + } else + result.appendCodePoint(ch); + } + return result.toString(); + } + + public static boolean hasMethodBufferObjectParameter(MethodDeclaration method) { + for (ParameterDeclaration param : method.getParameters()) { + if (param.getAnnotation(BufferObject.class) != null) { + return true; + } + } + return false; + } + + public static String getQualifiedClassName(InterfaceDeclaration interface_decl) { + return interface_decl.getPackage().getQualifiedName() + "." + getSimpleClassName(interface_decl); + } + + public static String getSimpleClassName(InterfaceDeclaration interface_decl) { + return getClassName(interface_decl, interface_decl.getSimpleName()); + } + + public static Class getNIOBufferType(TypeMirror t) { + Class param_type = getJavaType(t); + if (Buffer.class.isAssignableFrom(param_type)) + return param_type; + else + return null; + } + + public static String getSimpleNativeMethodName(MethodDeclaration method, boolean generate_error_checks) { + String method_name = method.getSimpleName(); + if (isMethodIndirect(generate_error_checks, method)) + method_name = OVERLOADED_METHOD_PREFIX + method_name; + return method_name; + } + +} diff --git a/src/java/org/lwjgl/openal/AL10.java b/src/java/org/lwjgl/openal/AL10.java index 4fdd51aa..bdc283be 100644 --- a/src/java/org/lwjgl/openal/AL10.java +++ b/src/java/org/lwjgl/openal/AL10.java @@ -1,186 +1,187 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.openal; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.ShortBuffer; -import java.nio.IntBuffer; -import java.nio.FloatBuffer; +package org.lwjgl.openal; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; -/** - * $Id$ - *
- * This is the core OpenAL class. This class implements - * AL.h version 1.0 - * - * @author Brian Matzon - * @version $Revision$ - */ public final class AL10 { - - /** Bad value */ - public static final int AL_INVALID = -1; - - /** Disable value */ - public static final int AL_NONE = 0; - - /** Boolean False */ - public static final int AL_FALSE = 0; - - /** Boolean True */ - public static final int AL_TRUE = 1; - /** - * Indicate the type of SOURCE. - * Sources can be spatialized + *Distance model */ - public static final int AL_SOURCE_TYPE = 0x200; - - /** Indicate source has absolute coordinates */ - public static final int AL_SOURCE_ABSOLUTE = 0x201; - - /** Indicate Source has listener relative coordinates */ - public static final int AL_SOURCE_RELATIVE = 0x202; - + public static final int AL_INVERSE_DISTANCE_CLAMPED = 0xd002; /** - * Directional source, inner cone angle, in degrees - * Range: [0-360] - * Default: 360 + *Distance model */ - public static final int AL_CONE_INNER_ANGLE = 0x1001; - + public static final int AL_INVERSE_DISTANCE = 0xd001; /** - * Directional source, outer cone angle, in degrees. - * Range: [0-360] - * Default: 360 + *Distance model. Default INVERSE_DISTANCE_CLAMPED */ - public static final int AL_CONE_OUTER_ANGLE = 0x1002; - + public static final int AL_DISTANCE_MODEL = 0xd000; /** - * Specify the pitch to be applied, either at source, - * or on mixer results, at listener. - * Range: [0.5-2.0] - * Default: 1.0 + *Doppler velocity. Default 1.0 */ - public static final int AL_PITCH = 0x1003; - + public static final int AL_DOPPLER_VELOCITY = 0xc001; /** - * Specify the current location in three dimensional space. - * OpenAL, like OpenGL, uses a right handed coordinate system, - * where in a frontal default view X (thumb) points right, - * Y points up (index finger), and Z points towards the - * viewer/camera (middle finger). - * To switch from a left handed coordinate system, flip the - * sign on the Z coordinate. - * Listener position is always in the world coordinate system. + *Doppler scale. Default 1.0 */ - public static final int AL_POSITION = 0x1004; - - /** Specify the current direction as forward vector. */ - public static final int AL_DIRECTION = 0x1005; - - /** Specify the current velocity in three dimensional space. */ - public static final int AL_VELOCITY = 0x1006; - + public static final int AL_DOPPLER_FACTOR = 0xc000; /** - * Indicate whether source has to loop infinite. - * Type: ALboolean - * Range: [TRUE, FALSE] - * Default: FALSE + *Context strings: Extensions */ - public static final int AL_LOOPING = 0x1007; - + public static final int AL_EXTENSIONS = 0xb004; /** - * Indicate the buffer to provide sound samples. - * Type: ALuint. - * Range: any valid Buffer id. + *Context strings: Renderer */ - public static final int AL_BUFFER = 0x1009; - + public static final int AL_RENDERER = 0xb003; /** - * Indicate the gain (volume amplification) applied. - * Type: ALfloat. - * Range: ]0.0- ] - * A value of 1.0 means un-attenuated/unchanged. - * Each division by 2 equals an attenuation of -6dB. - * Each multiplicaton with 2 equals an amplification of +6dB. - * A value of 0.0 is meaningless with respect to a logarithmic - * scale; it is interpreted as zero volume - the channel - * is effectively disabled. + *Context strings: Version */ - public static final int AL_GAIN = 0x100A; - + public static final int AL_VERSION = 0xb002; /** - * Indicate minimum source attenuation. - * Type: ALfloat - * Range: [0.0 - 1.0] + *Context strings: Vendor */ - public static final int AL_MIN_GAIN = 0x100D; - + public static final int AL_VENDOR = 0xb001; /** - * Indicate maximum source attenuation. + * A function could not be completed, + * because there is not enough memory available. + */ + public static final int AL_OUT_OF_MEMORY = 0xa005; + /** + * A function was called at inappropriate time, + * or in an inappropriate way, causing an illegal state. + * This can be an incompatible ALenum, object ID, + * and/or function. + */ + public static final int AL_INVALID_OPERATION = 0xa004; + /** + * Illegal value passed as an argument to an AL call. + * Applies to parameter values, but not to enumerations. + */ + public static final int AL_INVALID_VALUE = 0xa003; + /** + *Illegal enum passed as an argument to an AL call. + */ + public static final int AL_INVALID_ENUM = 0xa002; + /** + *Illegal name passed as an argument to an AL call. + */ + public static final int AL_INVALID_NAME = 0xa001; + /** + *Errors: No Error. + */ + public static final int AL_NO_ERROR = 0x0; + /** + * Buffer state. + * Not supported for public use (yet). + */ + public static final int AL_PROCESSED = 0x2012; + /** + * Buffer state. + * Not supported for public use (yet). + */ + public static final int AL_PENDING = 0x2011; + /** + * Buffer state. + * Not supported for public use (yet). + */ + public static final int AL_UNUSED = 0x2010; + /** + * Sound buffers: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ + public static final int AL_DATA = 0x2005; + /** + * Sound buffers: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ + public static final int AL_SIZE = 0x2004; + /** + * Sound buffers: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ + public static final int AL_CHANNELS = 0x2003; + /** + * Sound buffers: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ + public static final int AL_BITS = 0x2002; + /** + * Sound buffers: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ + public static final int AL_FREQUENCY = 0x2001; + /** + *Ogg Vorbis format specifier. + */ + public static final int AL_FORMAT_VORBIS_EXT = 0x10003; + /** + *Sound buffers: format specifier. + */ + public static final int AL_FORMAT_STEREO16 = 0x1103; + /** + *Sound buffers: format specifier. + */ + public static final int AL_FORMAT_STEREO8 = 0x1102; + /** + *Sound buffers: format specifier. + */ + public static final int AL_FORMAT_MONO16 = 0x1101; + /** + *Sound buffers: format specifier. + */ + public static final int AL_FORMAT_MONO8 = 0x1100; + /** + *Buffer Queue params + */ + public static final int AL_BUFFERS_PROCESSED = 0x1016; + /** + *Buffer Queue params + */ + public static final int AL_BUFFERS_QUEUED = 0x1015; + /** + *Source state information + */ + public static final int AL_STOPPED = 0x1014; + /** + *Source state information + */ + public static final int AL_PAUSED = 0x1013; + /** + *Source state information + */ + public static final int AL_PLAYING = 0x1012; + /** + *Source state information + */ + public static final int AL_INITIAL = 0x1011; + /** + *Source state information + */ + public static final int AL_SOURCE_STATE = 0x1010; + /** + * Specify the channel mask. (Creative) + * Type: ALuint + * Range: [0 - 255] + */ + public static final int AL_CHANNEL_MASK = 0x3000; + /** + * Specify the maximum distance. * Type: ALfloat - * Range: [0.0 - 1.0] + * Range: [0.0 - ] */ - public static final int AL_MAX_GAIN = 0x100E; - - /** - * Specify the current orientation. - * Type: ALfv6 (at/up) - * Range: N/A - */ - public static final int AL_ORIENTATION = 0x100F; - - /* byte offset into source (in canon format). -1 if source - * is not playing. Don't set this, get this. - * - * Type: ALfloat - * Range: [0.0 - ] - * Default: 1.0 - */ - public static final int AL_REFERENCE_DISTANCE = 0x1020; - - /** - * Indicate the rolloff factor for the source. - * Type: ALfloat - * Range: [0.0 - ] - * Default: 1.0 - */ - public static final int AL_ROLLOFF_FACTOR = 0x1021; - + public static final int AL_MAX_DISTANCE = 0x1023; /** * Indicate the gain (volume amplification) applied. * Type: ALfloat. @@ -193,318 +194,899 @@ public final class AL10 { * is effectively disabled. */ public static final int AL_CONE_OUTER_GAIN = 0x1022; - /** - * Specify the maximum distance. + * Indicate the rolloff factor for the source. + * Type: ALfloat + * Range: [0.0 - ] + * Default: 1.0 + */ + public static final int AL_ROLLOFF_FACTOR = 0x1021; + public static final int AL_REFERENCE_DISTANCE = 0x1020; + /** + * Specify the current orientation. + * Type: ALfv6 (at/up) + * Range: N/A + */ + public static final int AL_ORIENTATION = 0x100f; + /** + * Indicate maximum source attenuation. * Type: ALfloat - * Range: [0.0 - ] + * Range: [0.0 - 1.0] */ - public static final int AL_MAX_DISTANCE = 0x1023; - + public static final int AL_MAX_GAIN = 0x100e; /** - * Specify the channel mask. (Creative) - * Type: ALuint - * Range: [0 - 255] + * Indicate minimum source attenuation. + * Type: ALfloat + * Range: [0.0 - 1.0] */ - public static final int AL_CHANNEL_MASK = 0x3000; - - /** Source state information */ - public static final int AL_SOURCE_STATE = 0x1010; - - /** Source state information */ - public static final int AL_INITIAL = 0x1011; - - /** Source state information */ - public static final int AL_PLAYING = 0x1012; - - /** Source state information */ - public static final int AL_PAUSED = 0x1013; - - /** Source state information */ - public static final int AL_STOPPED = 0x1014; - - /** Buffer Queue params */ - public static final int AL_BUFFERS_QUEUED = 0x1015; - - /** Buffer Queue params */ - public static final int AL_BUFFERS_PROCESSED = 0x1016; - - /** Sound buffers: format specifier. */ - public static final int AL_FORMAT_MONO8 = 0x1100; - - /** Sound buffers: format specifier. */ - public static final int AL_FORMAT_MONO16 = 0x1101; - - /** Sound buffers: format specifier. */ - public static final int AL_FORMAT_STEREO8 = 0x1102; - - /** Sound buffers: format specifier. */ - public static final int AL_FORMAT_STEREO16 = 0x1103; - - /** Ogg Vorbis format specifier. */ - public static final int AL_FORMAT_VORBIS_EXT = 0x10003; - + public static final int AL_MIN_GAIN = 0x100d; /** - * Sound buffers: frequency, in units of Hertz [Hz]. - * This is the number of samples per second. Half of the - * sample frequency marks the maximum significant - * frequency component. + * Indicate the gain (volume amplification) applied. + * Type: ALfloat. + * Range: ]0.0- ] + * A value of 1.0 means un-attenuated/unchanged. + * Each division by 2 equals an attenuation of -6dB. + * Each multiplicaton with 2 equals an amplification of +6dB. + * A value of 0.0 is meaningless with respect to a logarithmic + * scale; it is interpreted as zero volume - the channel + * is effectively disabled. */ - public static final int AL_FREQUENCY = 0x2001; - + public static final int AL_GAIN = 0x100a; /** - * Sound buffers: frequency, in units of Hertz [Hz]. - * This is the number of samples per second. Half of the - * sample frequency marks the maximum significant - * frequency component. + * Indicate the buffer to provide sound samples. + * Type: ALuint. + * Range: any valid Buffer id. */ - public static final int AL_BITS = 0x2002; - + public static final int AL_BUFFER = 0x1009; /** - * Sound buffers: frequency, in units of Hertz [Hz]. - * This is the number of samples per second. Half of the - * sample frequency marks the maximum significant - * frequency component. + * Indicate whether source has to loop infinite. + * Type: ALboolean + * Range: [TRUE, FALSE] + * Default: FALSE */ - public static final int AL_CHANNELS = 0x2003; - + public static final int AL_LOOPING = 0x1007; /** - * Sound buffers: frequency, in units of Hertz [Hz]. - * This is the number of samples per second. Half of the - * sample frequency marks the maximum significant - * frequency component. + *Specify the current velocity in three dimensional space. */ - public static final int AL_SIZE = 0x2004; - + public static final int AL_VELOCITY = 0x1006; /** - * Sound buffers: frequency, in units of Hertz [Hz]. - * This is the number of samples per second. Half of the - * sample frequency marks the maximum significant - * frequency component. + *Specify the current direction as forward vector. */ - public static final int AL_DATA = 0x2005; - + public static final int AL_DIRECTION = 0x1005; /** - * Buffer state. - * - * Not supported for public use (yet). + * Specify the current location in three dimensional space. + * OpenAL, like OpenGL, uses a right handed coordinate system, + * where in a frontal default view X (thumb) points right, + * Y points up (index finger), and Z points towards the + * viewer/camera (middle finger). + * To switch from a left handed coordinate system, flip the + * sign on the Z coordinate. + * Listener position is always in the world coordinate system. */ - public static final int AL_UNUSED = 0x2010; - + public static final int AL_POSITION = 0x1004; /** - * Buffer state. - * - * Not supported for public use (yet). + * Specify the pitch to be applied, either at source, + * or on mixer results, at listener. + * Range: [0.5-2.0] + * Default: 1.0 */ - public static final int AL_PENDING = 0x2011; - + public static final int AL_PITCH = 0x1003; /** - * Buffer state. - * - * Not supported for public use (yet). + * Directional source, outer cone angle, in degrees. + * Range: [0-360] + * Default: 360 */ - public static final int AL_PROCESSED = 0x2012; - - /** Errors: No Error. */ - public static final int AL_NO_ERROR = AL_FALSE; - - /** Illegal name passed as an argument to an AL call. */ - public static final int AL_INVALID_NAME = 0xA001; - - /** Illegal enum passed as an argument to an AL call. */ - public static final int AL_INVALID_ENUM = 0xA002; - + public static final int AL_CONE_OUTER_ANGLE = 0x1002; /** - * Illegal value passed as an argument to an AL call. - * Applies to parameter values, but not to enumerations. + * Directional source, inner cone angle, in degrees + * Range: [0-360] + * Default: 360 */ - public static final int AL_INVALID_VALUE = 0xA003; - + public static final int AL_CONE_INNER_ANGLE = 0x1001; /** - * A function was called at inappropriate time, - * or in an inappropriate way, causing an illegal state. - * This can be an incompatible ALenum, object ID, - * and/or function. + *Indicate Source has listener relative coordinates */ - public static final int AL_INVALID_OPERATION = 0xA004; - + public static final int AL_SOURCE_RELATIVE = 0x202; /** - * A function could not be completed, - * because there is not enough memory available. + *Indicate source has absolute coordinates */ - public static final int AL_OUT_OF_MEMORY = 0xA005; - - /** Context strings: Vendor */ - public static final int AL_VENDOR = 0xB001; - - /** Context strings: Version */ - public static final int AL_VERSION = 0xB002; - - /** Context strings: Renderer */ - public static final int AL_RENDERER = 0xB003; - - /** Context strings: Extensions */ - public static final int AL_EXTENSIONS = 0xB004; - - /** Doppler scale. Default 1.0 */ - public static final int AL_DOPPLER_FACTOR = 0xC000; - - /** Doppler velocity. Default 1.0 */ - public static final int AL_DOPPLER_VELOCITY = 0xC001; - - /** Distance model. Default INVERSE_DISTANCE_CLAMPED */ - public static final int AL_DISTANCE_MODEL = 0xD000; - - /** Distance model */ - public static final int AL_INVERSE_DISTANCE = 0xD001; - - /** Distance model */ - public static final int AL_INVERSE_DISTANCE_CLAMPED = 0xD002; - - static native void initNativeStubs() throws LWJGLException; + public static final int AL_SOURCE_ABSOLUTE = 0x201; + /** + * Indicate the type of SOURCE. + * Sources can be spatialized + */ + public static final int AL_SOURCE_TYPE = 0x200; + /** + *Boolean True + */ + public static final int AL_TRUE = 0x1; + /** + *Boolean False + */ + public static final int AL_FALSE = 0x0; + /** + *Disable value + */ + public static final int AL_NONE = 0x0; + /** + *Bad value + */ + public static final int AL_INVALID = 0xffffffff; private AL10() { } - /** - * The application can temporarily disable certain AL capabilities on a per Context - * basis. This allows the driver implementation to optimize for certain subsets of - * operations. Enabling and disabling capabilities is handled using a function pair. - * - * @param capability name of a capability to enable - */ - public static native void alEnable(int capability); + static native void initNativeStubs() throws LWJGLException; /** - * The application can temporarily disable certain AL capabilities on a per Context - * basis. This allows the driver implementation to optimize for certain subsets of - * operations. Enabling and disabling capabilities is handled using a function pair. - * - * @param capability name of a capability to disable - */ - public static native void alDisable(int capability); - - /** - * The application can also query whether a given capability is currently enabled or - * not. - *

- * If the token used to specify target is not legal, an AL_INVALID_ENUM error will be - * generated. - *

- *

- * At this time, this mechanism is not used. There are no valid targets. - *

- * - * @param capability name of a capability to check - * @return true if named feature is enabled - */ - public static native boolean alIsEnabled(int capability); - - /** - * Hinting for implementation - * NOTE: This method is a NOP, but is provided for completeness. - * - * @param target The target to hint - * @param mode Mode to hint - */ - public static native void alHint(int target, int mode); - - /** - * Like OpenGL, AL uses a simplified interface for querying global state. + * The Doppler Effect depends on the velocities of Source and Listener relative to the + * medium, and the propagation speed of sound in that medium. The application + * might want to emphasize or de-emphasize the Doppler Effect as physically accurate + * calculation might not give the desired results. The amount of frequency shift (pitch + * change) is proportional to the speed of listener and source along their line of sight. + * The application can increase or decrease that frequency shift by specifying the + * scaling factor AL should apply to the result of the calculation. + *
+ *
+ * The Doppler Effect as implemented by AL is described by the formula below. Effects + * of the medium (air, water) moving with respect to listener and source are ignored. + * AL_DOPPLER_VELOCITY is the propagation speed relative to which the Source + * velocities are interpreted. * - * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, - * AL_DISTANCE_MODEL. *

- * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors - * in specifying pName. The amount of memory required in the destination - * depends on the actual state requested. - *

- * - * @return boolean state described by pname will be returned. - */ - public static native boolean alGetBoolean(int pname); - - /** - * Like OpenGL, AL uses a simplified interface for querying global state. + *
+	 *	 VD: AL_DOPPLER_VELOCITY
+	 *	 DF: AL_DOPPLER_FACTOR
+	 *	 vl: Listener velocity (scalar, projected on source-listener vector)
+	 *	 vs: Source verlocity (scalar, projected on source-listener vector)
+	 *	 f: Frequency in sample
+	 *	 f': effective Doppler shifted frequency
+	 *	 
+	 *	 f' = DF * f * (VD-vl)/(VD+vs)
 	 * 
-	 * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY,
-	 * AL_DISTANCE_MODEL.
-	 * 

- * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors - * in specifying pName. The amount of memory required in the destination - * depends on the actual state requested. + * vl<0, vs>0 : source and listener approaching each other + * vl>0, vs<0 : source and listener moving away from each other + *

*

- * - * @return int state described by pname will be returned. + *

+ * The implementation has to clamp the projected Listener velocity vl, if abs(vl) is + * greater or equal VD. It similarly has to clamp the projected Source velocity vs if + * abs(vs) is greater or equal VD. + *

+ *

+ * There are two API calls global to the current context that provide control of the two + * related parameters. + *

+ *

+ * AL_DOPPLER_VELOCITY allows the application to change the reference (propagation) + * velocity used in the Doppler Effect calculation. This permits the application to use a + * velocity scale appropriate to its purposes. + *

+ *

+ * A negative or zero value will result in an AL_INVALID_VALUE error, the command is + * then ignored. The default value is 1. The current setting can be queried using + * GetFloatv and AL_DOPPLER_VELOCITY. + *

+ * @param value Doppler velocity value to set */ - public static native int alGetInteger(int pname); - - /** - * Like OpenGL, AL uses a simplified interface for querying global state. - * - * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, - * AL_DISTANCE_MODEL. - *

- * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors - * in specifying pName. The amount of memory required in the destination - * depends on the actual state requested. - *

- * - * @return float state described by pname will be returned. - */ - public static native float alGetFloat(int pname); - - /** - * Like OpenGL, AL uses a simplified interface for querying global state. - * - * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, - * AL_DISTANCE_MODEL. - *

- * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors - * in specifying pName. The amount of memory required in the destination - * depends on the actual state requested. - *

- * - * @param pname state to be queried - * @param data Buffer to place the integers in - */ - public static void alGetInteger(int pname, IntBuffer data) { - BufferChecks.checkBuffer(data, 1); - nalGetIntegerv(pname, data, data.position()); + public static void alDopplerVelocity(float value) { + nalDopplerVelocity(value); + Util.checkALError(); } - private static native void nalGetIntegerv(int pname, IntBuffer data, int offset); + private static native void nalDopplerVelocity(float value); /** - * Like OpenGL, AL uses a simplified interface for querying global state. + * The Doppler Effect depends on the velocities of Source and Listener relative to the + * medium, and the propagation speed of sound in that medium. The application + * might want to emphasize or de-emphasize the Doppler Effect as physically accurate + * calculation might not give the desired results. The amount of frequency shift (pitch + * change) is proportional to the speed of listener and source along their line of sight. + * The application can increase or decrease that frequency shift by specifying the + * scaling factor AL should apply to the result of the calculation. + *
+ *
+ * The Doppler Effect as implemented by AL is described by the formula below. Effects + * of the medium (air, water) moving with respect to listener and source are ignored. + * AL_DOPPLER_VELOCITY is the propagation speed relative to which the Source + * velocities are interpreted. * - * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, - * AL_DISTANCE_MODEL. *

- * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors - * in specifying pName. The amount of memory required in the destination - * depends on the actual state requested. + *

+	 *	 VD: AL_DOPPLER_VELOCITY
+	 *	 DF: AL_DOPPLER_FACTOR
+	 *	 vl: Listener velocity (scalar, projected on source-listener vector)
+	 *	 vs: Source verlocity (scalar, projected on source-listener vector)
+	 *	 f: Frequency in sample
+	 *	 f': effective Doppler shifted frequency
+	 *	 
+	 *	 f' = DF * f * (VD-vl)/(VD+vs)
+	 * 
+	 *	 vl<0, vs>0 : source and listener approaching each other
+	 *	 vl>0, vs<0 : source and listener moving away from each other
+	 * 
*

- * - * @param pname state to be queried - * @param data Buffer to place the floats in - */ - public static void alGetFloat(int pname, FloatBuffer data) { - BufferChecks.checkBuffer(data, 1); - nalGetFloatv(pname, data, data.position()); + *

+ * The implementation has to clamp the projected Listener velocity vl, if abs(vl) is + * greater or equal VD. It similarly has to clamp the projected Source velocity vs if + * abs(vs) is greater or equal VD. + *

+ *

+ * There are two API calls global to the current context that provide control of the two + * related parameters. + *

+ *

+ * AL_DOPPLER_FACTOR is a simple scaling to exaggerate or + * deemphasize the Doppler (pitch) shift resulting from the calculation. + *

+ *

+ * A negative value will result in an AL_INVALID_VALUE error, the command is then + * ignored. The default value is 1. The current setting can be queried using GetFloatv + * and AL_DOPPLER_FACTOR. The implementation is free to optimize the case of + * AL_DOPPLER_FACTOR being set to zero, as this effectively disables the effect. + *

+ * @param value Doppler scale value to set + */ + public static void alDopplerFactor(float value) { + nalDopplerFactor(value); + Util.checkALError(); } - private static native void nalGetFloatv(int pname, FloatBuffer data, int position); + private static native void nalDopplerFactor(float value); /** - * The application can retrieve state information global to the current AL Context. - * GetString will return a pointer to a constant string. Valid values for param are - * VERSION, RENDERER, VENDOR, and EXTENSIONS, as well as the error codes - * defined by AL. The application can use GetString to retrieve a string for an error - * code. - * - * @param pname The property to be returned - * @return OpenAL String property + *

+ * Samples usually use the entire dynamic range of the chosen format/encoding, + * independent of their real world intensity. In other words, a jet engine and a + * clockwork both will have samples with full amplitude. The application will then + * have to adjust Source AL_GAIN accordingly to account for relative differences. + *

+ *

+ * Source AL_GAIN is then attenuated by distance. The effective attenuation of a Source + * depends on many factors, among which distance attenuation and source and + * Listener AL_GAIN are only some of the contributing factors. Even if the source and + * Listener AL_GAIN exceed 1.0 (amplification beyond the guaranteed dynamic range), + * distance and other attenuation might ultimately limit the overall AL_GAIN to a value + * below 1.0. + *

+ *

+ * AL currently supports three modes of operation with respect to distance + * attenuation. It supports two distance-dependent attenuation models, one which is + * similar to the IASIG I3DL2 (and DS3D) model. The application choses one of these + * two models (or can chose to disable distance-dependent attenuation effects model) + * on a per-context basis. + *

+ *

+ * Legal arguments are AL_NONE, AL_INVERSE_DISTANCE, and + * AL_INVERSE_DISTANCE_CLAMPED. + *
+ *
+ * AL_NONE bypasses all distance attenuation + * calculation for all Sources. The implementation is expected to optimize this + * situation. + *
+ *
+ * AL_INVERSE_DISTANCE_CLAMPED is the DS3D model, with + * AL_REFERENCE_DISTANCE indicating both the reference distance and the distance + * below which gain will be clamped. + *
+ *
+ * AL_INVERSE_DISTANCE is equivalent to the DS3D + * model with the exception that AL_REFERENCE_DISTANCE does not imply any + * clamping. + *
+ *
+ * The AL implementation is still free to apply any range clamping as + * necessary. The current distance model chosen can be queried using GetIntegerv and + * AL_DISTANCE_MODEL. + *

+ * @param value distance model to be set */ - public static native String alGetString(int pname); + public static void alDistanceModel(int value) { + nalDistanceModel(value); + Util.checkALError(); + } + private static native void nalDistanceModel(int value); + + /** + *

+ * Once a queue entry for a buffer has been appended to a queue and is pending + * processing, it should not be changed. Removal of a given queue entry is not possible + * unless either the Source is AL_STOPPED (in which case then entire queue is considered + * processed), or if the queue entry has already been processed (AL_PLAYING or AL_PAUSED + * Source). + *

+ *

+ * The Unqueue command removes a number of buffers entries that have nished + * processing, in the order of appearance, from the queue. The operation will fail if + * more buffers are requested than available, leaving the destination arguments + * unchanged. An AL_INVALID_VALUE error will be thrown. If no error, the destination + * argument will have been updated accordingly. + *

+ * @param source source to unqueue buffers from + * @param buffers buffers to be unqueued + */ + public static void alSourceUnqueueBuffers(int source, IntBuffer buffers) { + BufferChecks.checkDirect(buffers); + nalSourceUnqueueBuffers(source, (buffers.remaining()), buffers, buffers.position()); + Util.checkALError(); + } + private static native void nalSourceUnqueueBuffers(int source, int n, IntBuffer buffers, int buffers_position); + + /** + *

+ * The application can queue up one or multiple buffer names using + * SourceQueueBuffers. The buffers will be queued in the sequence in which they + * appear in the array. + *

+ *

+ * This command is legal on a Source in any state (to allow for streaming, queueing + * has to be possible on a AL_PLAYING Source). Queues are read-only with exception of + * the unqueue operation. The Buffer Name AL_NONE (i.e. 0) can be queued. + *

+ * @param source source to queue buffers onto + * @param buffers buffers to be queued + */ + public static void alSourceQueueBuffers(int source, IntBuffer buffers) { + BufferChecks.checkDirect(buffers); + nalSourceQueueBuffers(source, (buffers.remaining()), buffers, buffers.position()); + Util.checkALError(); + } + private static native void nalSourceQueueBuffers(int source, int n, IntBuffer buffers, int buffers_position); + + /** + * Buffer state is maintained inside the AL implementation and can be queried in full.
+ * ALC_FREQUENCY - specified in samples per second, i.e. units of Hertz [Hz].
+ * ALC_SIZE - Size in bytes of the buffer data.
+ * @param buffer buffer to get property from + * @param pname name of property to retrieve + * @return float + */ + public static float alGetBufferf(int buffer, int pname) { + float __result = nalGetBufferf(buffer, pname); + Util.checkALError(); + return __result; + } + private static native float nalGetBufferf(int buffer, int pname); + + /** + * Buffer state is maintained inside the AL implementation and can be queried in full.
+ * ALC_FREQUENCY - specified in samples per second, i.e. units of Hertz [Hz].
+ * ALC_SIZE - Size in bytes of the buffer data.
+ * @param buffer buffer to get property from + * @param pname name of property to retrieve + */ + public static int alGetBufferi(int buffer, int pname) { + int __result = nalGetBufferi(buffer, pname); + Util.checkALError(); + return __result; + } + private static native int nalGetBufferi(int buffer, int pname); + + /** + *

+ * A special case of Buffer state is the actual sound sample data stored in asociation + * with the Buffer. Applications can specify sample data using BufferData. + *

+ *

+ * The data specified is copied to an internal software, or if possible, hardware buffer. + * The implementation is free to apply decompression, conversion, resampling, and + * filtering as needed. The internal format of the Buffer is not exposed to the + * application, and not accessible. Valid formats are AL_FORMAT_MONO8, + * AL_FORMAT_MONO16, AL_FORMAT_STEREO8, and AL_FORMAT_STEREO16. An + * implementation may expose other formats, see the chapter on Extensions for + * information on determining if additional formats are supported. + *

+ *

+ * Applications should always check for an error condition after attempting to specify + * buffer data in case an implementation has to generate an AL_OUT_OF_MEMORY or + * conversion related AL_INVALID_VALUE error. The application is free to reuse the + * memory specified by the data pointer once the call to BufferData returns. The + * implementation has to dereference, e.g. copy, the data during BufferData execution. + *

+ * @param buffer Buffer to fill + * @param format format sound data is in + * @param data location of data + * @param freq frequency of data + */ + public static void alBufferData(int buffer, int format, ShortBuffer data, int freq) { + BufferChecks.checkDirect(data); + nalBufferData(buffer, format, data, data.position() << 1, (data.remaining() << 1), freq); + Util.checkALError(); + } + /** + *

+ * A special case of Buffer state is the actual sound sample data stored in asociation + * with the Buffer. Applications can specify sample data using BufferData. + *

+ *

+ * The data specified is copied to an internal software, or if possible, hardware buffer. + * The implementation is free to apply decompression, conversion, resampling, and + * filtering as needed. The internal format of the Buffer is not exposed to the + * application, and not accessible. Valid formats are AL_FORMAT_MONO8, + * AL_FORMAT_MONO16, AL_FORMAT_STEREO8, and AL_FORMAT_STEREO16. An + * implementation may expose other formats, see the chapter on Extensions for + * information on determining if additional formats are supported. + *

+ *

+ * Applications should always check for an error condition after attempting to specify + * buffer data in case an implementation has to generate an AL_OUT_OF_MEMORY or + * conversion related AL_INVALID_VALUE error. The application is free to reuse the + * memory specified by the data pointer once the call to BufferData returns. The + * implementation has to dereference, e.g. copy, the data during BufferData execution. + *

+ * @param buffer Buffer to fill + * @param format format sound data is in + * @param data location of data + * @param freq frequency of data + */ + public static void alBufferData(int buffer, int format, IntBuffer data, int freq) { + BufferChecks.checkDirect(data); + nalBufferData(buffer, format, data, data.position() << 2, (data.remaining() << 2), freq); + Util.checkALError(); + } + /** + *

+ * A special case of Buffer state is the actual sound sample data stored in asociation + * with the Buffer. Applications can specify sample data using BufferData. + *

+ *

+ * The data specified is copied to an internal software, or if possible, hardware buffer. + * The implementation is free to apply decompression, conversion, resampling, and + * filtering as needed. The internal format of the Buffer is not exposed to the + * application, and not accessible. Valid formats are AL_FORMAT_MONO8, + * AL_FORMAT_MONO16, AL_FORMAT_STEREO8, and AL_FORMAT_STEREO16. An + * implementation may expose other formats, see the chapter on Extensions for + * information on determining if additional formats are supported. + *

+ *

+ * Applications should always check for an error condition after attempting to specify + * buffer data in case an implementation has to generate an AL_OUT_OF_MEMORY or + * conversion related AL_INVALID_VALUE error. The application is free to reuse the + * memory specified by the data pointer once the call to BufferData returns. The + * implementation has to dereference, e.g. copy, the data during BufferData execution. + *

+ * @param buffer Buffer to fill + * @param format format sound data is in + * @param data location of data + * @param freq frequency of data + */ + public static void alBufferData(int buffer, int format, ByteBuffer data, int freq) { + BufferChecks.checkDirect(data); + nalBufferData(buffer, format, data, data.position(), (data.remaining()), freq); + Util.checkALError(); + } + private static native void nalBufferData(int buffer, int format, Buffer data, int data_position, int size, int freq); + + /** + * The application can verify whether a buffer Name is valid using the IsBuffer query. + * @param buffer buffer to be tested for validity + * @return true if supplied buffer is valid, false if not + */ + public static boolean alIsBuffer(int buffer) { + boolean __result = nalIsBuffer(buffer); + Util.checkALError(); + return __result; + } + private static native boolean nalIsBuffer(int buffer); + + /** + *

+ * The application requests deletion of a number of Buffers by calling DeleteBuffers. + *

+ *

+ * Once deleted, Names are no longer valid for use with AL function calls. Any such + * use will cause an AL_INVALID_NAME error. The implementation is free to defer actual + * release of resources. + *

+ *

+ * IsBuffer(bname) can be used to verify deletion of a buffer. Deleting bufferName 0 is + * a legal NOP in both scalar and vector forms of the command. The same is true for + * unused buffer names, e.g. such as not allocated yet, or as released already. + * @param buffers Buffer to delete from + */ + public static void alDeleteBuffers(IntBuffer buffers) { + BufferChecks.checkDirect(buffers); + nalDeleteBuffers((buffers.remaining()), buffers, buffers.position()); + Util.checkALError(); + } + private static native void nalDeleteBuffers(int n, IntBuffer buffers, int buffers_position); + + /** + * The application requests a number of Buffers using GenBuffers. + * @param buffers holding buffers + */ + public static void alGenBuffers(IntBuffer buffers) { + BufferChecks.checkDirect(buffers); + nalGenBuffers((buffers.remaining()), buffers, buffers.position()); + Util.checkALError(); + } + private static native void nalGenBuffers(int n, IntBuffer buffers, int buffers_position); + + /** + * Rewind() applied to an AL_INITIAL Source is a legal NOP. Rewind() applied to a + * AL_PLAYING Source will change its state to AL_STOPPED then AL_INITIAL. The Source is + * exempt from processing, its current state is preserved, with the exception of the + * sampling offset which is reset to the beginning. Rewind() applied to a AL_PAUSED + * Source will change its state to AL_INITIAL, with the same consequences as on a + * AL_PLAYING Source. Rewind() applied to a AL_STOPPED Source promotes the Source to + * AL_INITIAL, resetting the sampling offset to the beginning. + * @param source Source to rewind + */ + public static void alSourceRewind(int source) { + nalSourceRewind(source); + Util.checkALError(); + } + private static native void nalSourceRewind(int source); + + /** + * Stop() applied to an AL_INITIAL Source is a legal NOP. Stop() applied to a AL_PLAYING + * Source will change its state to AL_STOPPED. The Source is exempt from processing, + * its current state is preserved. Stop() applied to a AL_PAUSED Source will change its + * state to AL_STOPPED, with the same consequences as on a AL_PLAYING Source. Stop() + * applied to a AL_STOPPED Source is a legal NOP. + * @param source Source to stop + */ + public static void alSourceStop(int source) { + nalSourceStop(source); + Util.checkALError(); + } + private static native void nalSourceStop(int source); + + /** + * Pause() applied to an AL_INITIAL Source is a legal NOP. Pause() applied to a + * AL_PLAYING Source will change its state to AL_PAUSED. The Source is exempt from + * processing, its current state is preserved. Pause() applied to a AL_PAUSED Source is a + * legal NOP. Pause() applied to a AL_STOPPED Source is a legal NOP. + * @param source Source to pause + */ + public static void alSourcePause(int source) { + nalSourcePause(source); + Util.checkALError(); + } + private static native void nalSourcePause(int source); + + /** + * Play() applied to an AL_INITIAL Source will promote the Source to AL_PLAYING, thus + * the data found in the Buffer will be fed into the processing, starting at the + * beginning. Play() applied to a AL_PLAYING Source will restart the Source from the + * beginning. It will not affect the configuration, and will leave the Source in + * AL_PLAYING state, but reset the sampling offset to the beginning. Play() applied to a + * AL_PAUSED Source will resume processing using the Source state as preserved at the + * Pause() operation. Play() applied to a AL_STOPPED Source will propagate it to + * AL_INITIAL then to AL_PLAYING immediately. + * @param source Source to play + */ + public static void alSourcePlay(int source) { + nalSourcePlay(source); + Util.checkALError(); + } + private static native void nalSourcePlay(int source); + + /** + * Rewind() applied to an AL_INITIAL Source is a legal NOP. Rewind() applied to a + * AL_PLAYING Source will change its state to AL_STOPPED then AL_INITIAL. The Source is + * exempt from processing, its current state is preserved, with the exception of the + * sampling offset which is reset to the beginning. Rewind() applied to a AL_PAUSED + * Source will change its state to AL_INITIAL, with the same consequences as on a + * AL_PLAYING Source. Rewind() applied to a AL_STOPPED Source promotes the Source to + * AL_INITIAL, resetting the sampling offset to the beginning. + * @param sources array of sources to rewind + */ + public static void alSourceRewind(IntBuffer sources) { + BufferChecks.checkDirect(sources); + nalSourceRewindv((sources.remaining()), sources, sources.position()); + Util.checkALError(); + } + private static native void nalSourceRewindv(int n, IntBuffer sources, int sources_position); + + /** + * Stop() applied to an AL_INITIAL Source is a legal NOP. Stop() applied to a AL_PLAYING + * Source will change its state to AL_STOPPED. The Source is exempt from processing, + * its current state is preserved. Stop() applied to a AL_PAUSED Source will change its + * state to AL_STOPPED, with the same consequences as on a AL_PLAYING Source. Stop() + * applied to a AL_STOPPED Source is a legal NOP. + * @param sources array of sources to stop + */ + public static void alSourceStop(IntBuffer sources) { + BufferChecks.checkDirect(sources); + nalSourceStopv((sources.remaining()), sources, sources.position()); + Util.checkALError(); + } + private static native void nalSourceStopv(int n, IntBuffer sources, int sources_position); + + /** + * Pause() applied to an AL_INITIAL Source is a legal NOP. Pause() applied to a + * AL_PLAYING Source will change its state to AL_PAUSED. The Source is exempt from + * processing, its current state is preserved. Pause() applied to a AL_PAUSED Source is a + * legal NOP. Pause() applied to a AL_STOPPED Source is a legal NOP. + * @param sources array of sources to pause + */ + public static void alSourcePause(IntBuffer sources) { + BufferChecks.checkDirect(sources); + nalSourcePausev((sources.remaining()), sources, sources.position()); + Util.checkALError(); + } + private static native void nalSourcePausev(int n, IntBuffer sources, int sources_position); + + /** + * Play() applied to an AL_INITIAL Source will promote the Source to AL_PLAYING, thus + * the data found in the Buffer will be fed into the processing, starting at the + * beginning. Play() applied to a AL_PLAYING Source will restart the Source from the + * beginning. It will not affect the configuration, and will leave the Source in + * AL_PLAYING state, but reset the sampling offset to the beginning. Play() applied to a + * AL_PAUSED Source will resume processing using the Source state as preserved at the + * Pause() operation. Play() applied to a AL_STOPPED Source will propagate it to + * AL_INITIAL then to AL_PLAYING immediately. + * @param sources array of sources to play + */ + public static void alSourcePlay(IntBuffer sources) { + BufferChecks.checkDirect(sources); + nalSourcePlayv((sources.remaining()), sources, sources.position()); + Util.checkALError(); + } + private static native void nalSourcePlayv(int n, IntBuffer sources, int sources_position); + + /** + * Source state is maintained inside the AL implementation, and the current attributes + * can be queried. The performance of such queries is implementation dependent, no + * performance guarantees are made. + * @param source Source to get property from + * @param pname property to get + * @param floatdata Buffer to write floats to + */ + public static void alGetSource(int source, int pname, FloatBuffer floatdata) { + BufferChecks.checkBuffer(floatdata, 1); + nalGetSourcefv(source, pname, floatdata, floatdata.position()); + Util.checkALError(); + } + private static native void nalGetSourcefv(int source, int pname, FloatBuffer floatdata, int floatdata_position); + + /** + * Source state is maintained inside the AL implementation, and the current attributes + * can be queried. The performance of such queries is implementation dependent, no + * performance guarantees are made. + * @param source source to get property from + * @param pname name of property + * @return float + */ + public static float alGetSourcef(int source, int pname) { + float __result = nalGetSourcef(source, pname); + Util.checkALError(); + return __result; + } + private static native float nalGetSourcef(int source, int pname); + + /** + * Source state is maintained inside the AL implementation, and the current attributes + * can be queried. The performance of such queries is implementation dependent, no + * performance guarantees are made. + * @param source source to get property from + * @param pname name of property + * @return int + */ + public static int alGetSourcei(int source, int pname) { + int __result = nalGetSourcei(source, pname); + Util.checkALError(); + return __result; + } + private static native int nalGetSourcei(int source, int pname); + + /** + * Specifies the position and other properties as taken into account during + * sound processing. + * @param source Source to set property on + * @param pname property to set + * @param v1 value 1 of property + * @param v2 value 2 of property + * @param v3 value 3 of property + */ + public static void alSource3f(int source, int pname, float v1, float v2, float v3) { + nalSource3f(source, pname, v1, v2, v3); + Util.checkALError(); + } + private static native void nalSource3f(int source, int pname, float v1, float v2, float v3); + + /** + * Specifies the position and other properties as taken into account during + * sound processing. + * @param source Source to set property on + * @param pname property to set + * @param value FloatBuffer containing value of property + */ + public static void alSource(int source, int pname, FloatBuffer value) { + BufferChecks.checkBuffer(value, 1); + nalSourcefv(source, pname, value, value.position()); + Util.checkALError(); + } + private static native void nalSourcefv(int source, int pname, FloatBuffer value, int value_position); + + /** + * Specifies the position and other properties as taken into account during + * sound processing. + * @param source Source to det property on + * @param pname property to set + * @param value value of property + */ + public static void alSourcef(int source, int pname, float value) { + nalSourcef(source, pname, value); + Util.checkALError(); + } + private static native void nalSourcef(int source, int pname, float value); + + /** + * Specifies the position and other properties as taken into account during + * sound processing. + * @param source Source to det property on + * @param pname property to set + * @param value value of property + */ + public static void alSourcei(int source, int pname, int value) { + nalSourcei(source, pname, value); + Util.checkALError(); + } + private static native void nalSourcei(int source, int pname, int value); + + /** + * The application can verify whether a source name is valid using the IsSource query. + * @param id id of source to be testes for validity + * @return true if id is valid, false if not + */ + public static boolean alIsSource(int id) { + boolean __result = nalIsSource(id); + Util.checkALError(); + return __result; + } + private static native boolean nalIsSource(int id); + + /** + * The application requests deletion of a number of Sources by DeleteSources. + * @param source Source array to delete from + */ + public static void alDeleteSources(IntBuffer sources) { + BufferChecks.checkDirect(sources); + nalDeleteSources((sources.remaining()), sources, sources.position()); + Util.checkALError(); + } + private static native void nalDeleteSources(int n, IntBuffer sources, int sources_position); + + /** + * The application requests a number of Sources using GenSources. + * @param sources array holding sources + */ + public static void alGenSources(IntBuffer sources) { + BufferChecks.checkDirect(sources); + nalGenSources((sources.remaining()), sources, sources.position()); + Util.checkALError(); + } + private static native void nalGenSources(int n, IntBuffer sources, int sources_position); + + /** + * Listener state is maintained inside the AL implementation and can be queried in + * full. + * @param pname name of the attribute to be retrieved + * @param floatdata Buffer to write floats to + */ + public static void alGetListener(int pname, FloatBuffer floatdata) { + BufferChecks.checkBuffer(floatdata, 1); + nalGetListenerfv(pname, floatdata, floatdata.position()); + Util.checkALError(); + } + private static native void nalGetListenerfv(int pname, FloatBuffer floatdata, int floatdata_position); + + /** + * Listener state is maintained inside the AL implementation and can be queried in + * full. + * @param pname name of the attribute to be retrieved + * @return float + */ + public static float alGetListenerf(int pname) { + float __result = nalGetListenerf(pname); + Util.checkALError(); + return __result; + } + private static native float nalGetListenerf(int pname); + + /** + * Listener state is maintained inside the AL implementation and can be queried in + * full. + * @param pname name of the attribute to be retrieved + * @return int + */ + public static int alGetListeneri(int pname) { + int __result = nalGetListeneri(pname); + Util.checkALError(); + return __result; + } + private static native int nalGetListeneri(int pname); + + /** + * Listener attributes are changed using the Listener group of commands. + * @param pname name of the attribute to be set + * @param v1 value value 1 + * @param v2 value value 2 + * @param v3 float value 3 + */ + public static void alListener3f(int pname, float v1, float v2, float v3) { + nalListener3f(pname, v1, v2, v3); + Util.checkALError(); + } + private static native void nalListener3f(int pname, float v1, float v2, float v3); + + /** + * Listener attributes are changed using the Listener group of commands. + * @param pname name of the attribute to be set + * @param value FloatBuffer containing value to set the attribute to + */ + public static void alListener(int pname, FloatBuffer value) { + BufferChecks.checkBuffer(value, 1); + nalListenerfv(pname, value, value.position()); + Util.checkALError(); + } + private static native void nalListenerfv(int pname, FloatBuffer value, int value_position); + + /** + * Listener attributes are changed using the Listener group of commands. + * @param pname name of the attribute to be set + * @param value floating point value to set the attribute to + */ + public static void alListenerf(int pname, float value) { + nalListenerf(pname, value); + Util.checkALError(); + } + private static native void nalListenerf(int pname, float value); + + /** + * Listener attributes are changed using the Listener group of commands. + * @param pname name of the attribute to be set + * @param value value to set the attribute to + */ + public static void alListeneri(int pname, int value) { + nalListeneri(pname, value); + Util.checkALError(); + } + private static native void nalListeneri(int pname, int value); + + /** + *

+ * To obtain enumeration values for extensions, the application has to use + * GetEnumValue of an extension token. Enumeration values are defined within the + * AL namespace and allocated according to specification of the core API and the + * extensions, thus they are context-independent. + *

+ *

+ * Returns 0 if the enumeration can not be found. The presence of an enum value does + * not guarantee the applicability of an extension to the current context. A non-zero + * return indicates merely that the implementation is aware of the existence of this + * extension. Implementations should not attempt to return 0 to indicate that the + * extensions is not supported for the current context. + *

+ * @param ename String describing an OpenAL enum + * @return Actual int for the described enumeration name + */ + public static int alGetEnumValue(String ename) { + BufferChecks.checkNotNull(ename); + int __result = nalGetEnumValue(ename); + Util.checkALError(); + return __result; + } + private static native int nalGetEnumValue(String ename); + + /** + * To verify that a given extension is available for the current context and the device it + * is associated with, use this method. + *

+ * A null name argument returns AL_FALSE, as do invalid and unsupported string + * tokens. A null deviceHandle will result in an INVALID_DEVICE error. + *

+ * @param fname String describing the desired extension + * @return true if extension is available, false if not + */ + public static boolean alIsExtensionPresent(String fname) { + BufferChecks.checkNotNull(fname); + boolean __result = nalIsExtensionPresent(fname); + Util.checkALError(); + return __result; + } + private static native boolean nalIsExtensionPresent(String fname); /** * The AL detects only a subset of those conditions that could be considered errors. @@ -580,670 +1162,159 @@ public final class AL10 { * Otherwise errors are generated only for conditions that are explicitely described in * this specification. *

- * * @return current error state */ public static native int alGetError(); /** - * To verify that a given extension is available for the current context and the device it - * is associated with, use this method. - *

- * A null name argument returns AL_FALSE, as do invalid and unsupported string - * tokens. A null deviceHandle will result in an INVALID_DEVICE error. - *

- * - * @param fname String describing the desired extension - * @return true if extension is available, false if not + * The application can retrieve state information global to the current AL Context. + * GetString will return a pointer to a constant string. Valid values for param are + * VERSION, RENDERER, VENDOR, and EXTENSIONS, as well as the error codes + * defined by AL. The application can use GetString to retrieve a string for an error + * code. + * @param pname The property to be returned + * @return OpenAL String property */ - public static native boolean alIsExtensionPresent(String fname); + public static native java.lang.String alGetString(int pname); /** - *

- * To obtain enumeration values for extensions, the application has to use - * GetEnumValue of an extension token. Enumeration values are defined within the - * AL namespace and allocated according to specification of the core API and the - * extensions, thus they are context-independent. - *

- *

- * Returns 0 if the enumeration can not be found. The presence of an enum value does - * not guarantee the applicability of an extension to the current context. A non-zero - * return indicates merely that the implementation is aware of the existence of this - * extension. Implementations should not attempt to return 0 to indicate that the - * extensions is not supported for the current context. - *

- * - * @param ename String describing an OpenAL enum - * @return Actual int for the described enumeration name - */ - public static native int alGetEnumValue(String ename); - - /** - * Listener attributes are changed using the Listener group of commands. - * - * @param pname name of the attribute to be set - * @param value value to set the attribute to - */ - public static native void alListeneri(int pname, int value); - - /** - * Listener attributes are changed using the Listener group of commands. - * - * @param pname name of the attribute to be set - * @param value floating point value to set the attribute to - */ - public static native void alListenerf(int pname, float value); - - /** - * Listener attributes are changed using the Listener group of commands. - * - * @param pname name of the attribute to be set - * @param value FloatBuffer containing value to set the attribute to - */ - public static void alListener(int pname, FloatBuffer value) { - BufferChecks.checkBuffer(value, 1); - nalListenerfv(pname, value, value.position()); - } - public static native void nalListenerfv(int pname, FloatBuffer value, int offset); - - /** - * Listener attributes are changed using the Listener group of commands. - * - * @param pname name of the attribute to be set - * @param v1 value value 1 - * @param v2 value value 2 - * @param v3 float value 3 - */ - public static native void alListener3f(int pname, float v1, float v2, float v3); - - - /** - * Listener state is maintained inside the AL implementation and can be queried in - * full. - * - * @param pname name of the attribute to be retrieved - * @return int - */ - public static native int alGetListeneri(int pname); - - /** - * Listener state is maintained inside the AL implementation and can be queried in - * full. - * - * @param pname name of the attribute to be retrieved - * @return float - */ - public static native float alGetListenerf(int pname); - - /** - * Listener state is maintained inside the AL implementation and can be queried in - * full. - * - * @param pname name of the attribute to be retrieved - * @param floatdata Buffer to write floats to - */ - public static void alGetListener(int pname, FloatBuffer floatdata) { - // TODO: What's the real minimum number of elements? - BufferChecks.checkBuffer(floatdata, 1); - nalGetListenerfv(pname, floatdata, floatdata.position()); - } - private static native void nalGetListenerfv(int pname, FloatBuffer floatdata, int offset); - - /** - * The application requests a number of Sources using GenSources. - * - * @param sources array holding sources - */ - public static void alGenSources(IntBuffer sources) { - BufferChecks.checkDirect(sources); - nalGenSources(sources.remaining(), sources, sources.position()); - } - private static native void nalGenSources(int n, IntBuffer sources, int offset); - - /** - * The application requests deletion of a number of Sources by DeleteSources. - * - * @param source Source array to delete from - */ - public static void alDeleteSources(IntBuffer sources) { - BufferChecks.checkDirect(sources); - nalDeleteSources(sources.remaining(), sources, sources.position()); - } - private static native void nalDeleteSources(int n, IntBuffer sources, int offset); - - /** - * The application can verify whether a source name is valid using the IsSource query. - * - * @param id id of source to be testes for validity - * @return true if id is valid, false if not - */ - public static native boolean alIsSource(int id); - - /** - * Specifies the position and other properties as taken into account during - * sound processing. - * - * @param source Source to det property on - * @param pname property to set - * @param value value of property - */ - public static native void alSourcei(int source, int pname, int value); - - /** - * Specifies the position and other properties as taken into account during - * sound processing. - * - * @param source Source to det property on - * @param pname property to set - * @param value value of property - */ - public static native void alSourcef(int source, int pname, float value); - - /** - * Specifies the position and other properties as taken into account during - * sound processing. - * - * @param source Source to set property on - * @param pname property to set - * @param value FloatBuffer containing value of property - */ - public static void alSource(int source, int pname, FloatBuffer value) { - // TODO: What's the correct minimum value? - BufferChecks.checkBuffer(value, 1); - nalSourcefv(source, pname, value, value.position()); - } - public static native void nalSourcefv(int source, int pname, FloatBuffer value, int offset); - - /** - * Specifies the position and other properties as taken into account during - * sound processing. - * - * @param source Source to set property on - * @param pname property to set - * @param v1 value 1 of property - * @param v2 value 2 of property - * @param v3 value 3 of property - */ - public static native void alSource3f( - int source, - int pname, - float v1, - float v2, - float v3); - - - /** - * Source state is maintained inside the AL implementation, and the current attributes - * can be queried. The performance of such queries is implementation dependent, no - * performance guarantees are made. - * - * @param source source to get property from - * @param pname name of property - * @return int - */ - public static native int alGetSourcei(int source, int pname); - - /** - * Source state is maintained inside the AL implementation, and the current attributes - * can be queried. The performance of such queries is implementation dependent, no - * performance guarantees are made. - * - * @param source source to get property from - * @param pname name of property - * @return float - */ - public static native float alGetSourcef(int source, int pname); - - /** - * Source state is maintained inside the AL implementation, and the current attributes - * can be queried. The performance of such queries is implementation dependent, no - * performance guarantees are made. - * - * @param source Source to get property from - * @param pname property to get - * @param floatdata Buffer to write floats to - */ - public static void alGetSource(int source, int pname, FloatBuffer floatdata) { - // TODO: What's the correct minimum value? - BufferChecks.checkBuffer(floatdata, 1); - nalGetSourcefv(source, pname, floatdata, floatdata.position()); - } - private static native void nalGetSourcefv(int source, int pname, FloatBuffer floatdata, int position); - - /** - * Play() applied to an AL_INITIAL Source will promote the Source to AL_PLAYING, thus - * the data found in the Buffer will be fed into the processing, starting at the - * beginning. Play() applied to a AL_PLAYING Source will restart the Source from the - * beginning. It will not affect the configuration, and will leave the Source in - * AL_PLAYING state, but reset the sampling offset to the beginning. Play() applied to a - * AL_PAUSED Source will resume processing using the Source state as preserved at the - * Pause() operation. Play() applied to a AL_STOPPED Source will propagate it to - * AL_INITIAL then to AL_PLAYING immediately. - * - * @param sources array of sources to play - */ - public static void alSourcePlay(IntBuffer sources) { - BufferChecks.checkDirect(sources); - nalSourcePlayv(sources.remaining(), sources, sources.position()); - } - private static native void nalSourcePlayv(int n, IntBuffer sources, int offset); - - /** - * Pause() applied to an AL_INITIAL Source is a legal NOP. Pause() applied to a - * AL_PLAYING Source will change its state to AL_PAUSED. The Source is exempt from - * processing, its current state is preserved. Pause() applied to a AL_PAUSED Source is a - * legal NOP. Pause() applied to a AL_STOPPED Source is a legal NOP. - * - * @param sources array of sources to pause - */ - public static void alSourcePause(IntBuffer sources) { - BufferChecks.checkDirect(sources); - nalSourcePausev(sources.remaining(), sources, sources.position()); - } - private static native void nalSourcePausev(int n, IntBuffer sources, int offset); - - /** - * Stop() applied to an AL_INITIAL Source is a legal NOP. Stop() applied to a AL_PLAYING - * Source will change its state to AL_STOPPED. The Source is exempt from processing, - * its current state is preserved. Stop() applied to a AL_PAUSED Source will change its - * state to AL_STOPPED, with the same consequences as on a AL_PLAYING Source. Stop() - * applied to a AL_STOPPED Source is a legal NOP. - * - * @param sources array of sources to stop - */ - public static void alSourceStop(IntBuffer sources) { - BufferChecks.checkDirect(sources); - nalSourceStopv(sources.remaining(), sources, sources.position()); - } - private static native void nalSourceStopv(int n, IntBuffer sources, int offset); - - /** - * Rewind() applied to an AL_INITIAL Source is a legal NOP. Rewind() applied to a - * AL_PLAYING Source will change its state to AL_STOPPED then AL_INITIAL. The Source is - * exempt from processing, its current state is preserved, with the exception of the - * sampling offset which is reset to the beginning. Rewind() applied to a AL_PAUSED - * Source will change its state to AL_INITIAL, with the same consequences as on a - * AL_PLAYING Source. Rewind() applied to a AL_STOPPED Source promotes the Source to - * AL_INITIAL, resetting the sampling offset to the beginning. - * - * @param sources array of sources to rewind - */ - public static void alSourceRewind(IntBuffer sources) { - BufferChecks.checkDirect(sources); - nalSourceRewindv(sources.remaining(), sources, sources.position()); - } - private static native void nalSourceRewindv(int n, IntBuffer sources, int offset); - - /** - * Play() applied to an AL_INITIAL Source will promote the Source to AL_PLAYING, thus - * the data found in the Buffer will be fed into the processing, starting at the - * beginning. Play() applied to a AL_PLAYING Source will restart the Source from the - * beginning. It will not affect the configuration, and will leave the Source in - * AL_PLAYING state, but reset the sampling offset to the beginning. Play() applied to a - * AL_PAUSED Source will resume processing using the Source state as preserved at the - * Pause() operation. Play() applied to a AL_STOPPED Source will propagate it to - * AL_INITIAL then to AL_PLAYING immediately. - * - * @param source Source to play - */ - public static native void alSourcePlay(int source); - - /** - * Pause() applied to an AL_INITIAL Source is a legal NOP. Pause() applied to a - * AL_PLAYING Source will change its state to AL_PAUSED. The Source is exempt from - * processing, its current state is preserved. Pause() applied to a AL_PAUSED Source is a - * legal NOP. Pause() applied to a AL_STOPPED Source is a legal NOP. - * - * @param source Source to pause - */ - public static native void alSourcePause(int source); - - /** - * Stop() applied to an AL_INITIAL Source is a legal NOP. Stop() applied to a AL_PLAYING - * Source will change its state to AL_STOPPED. The Source is exempt from processing, - * its current state is preserved. Stop() applied to a AL_PAUSED Source will change its - * state to AL_STOPPED, with the same consequences as on a AL_PLAYING Source. Stop() - * applied to a AL_STOPPED Source is a legal NOP. - * - * @param source Source to stop - */ - public static native void alSourceStop(int source); - - /** - * Rewind() applied to an AL_INITIAL Source is a legal NOP. Rewind() applied to a - * AL_PLAYING Source will change its state to AL_STOPPED then AL_INITIAL. The Source is - * exempt from processing, its current state is preserved, with the exception of the - * sampling offset which is reset to the beginning. Rewind() applied to a AL_PAUSED - * Source will change its state to AL_INITIAL, with the same consequences as on a - * AL_PLAYING Source. Rewind() applied to a AL_STOPPED Source promotes the Source to - * AL_INITIAL, resetting the sampling offset to the beginning. - * - * @param source Source to rewind - */ - public static native void alSourceRewind(int source); - - /** - * The application requests a number of Buffers using GenBuffers. - * - * @param buffers holding buffers - */ - public static void alGenBuffers(IntBuffer buffers) { - BufferChecks.checkDirect(buffers); - nalGenBuffers(buffers.remaining(), buffers, buffers.position()); - } - private static native void nalGenBuffers(int n, IntBuffer buffers, int offset); - - /** - *

- * The application requests deletion of a number of Buffers by calling DeleteBuffers. - *

- *

- * Once deleted, Names are no longer valid for use with AL function calls. Any such - * use will cause an AL_INVALID_NAME error. The implementation is free to defer actual - * release of resources. - *

- *

- * IsBuffer(bname) can be used to verify deletion of a buffer. Deleting bufferName 0 is - * a legal NOP in both scalar and vector forms of the command. The same is true for - * unused buffer names, e.g. such as not allocated yet, or as released already. - * - * @param buffers Buffer to delete from - */ - public static void alDeleteBuffers(IntBuffer buffers) { - BufferChecks.checkDirect(buffers); - nalDeleteBuffers(buffers.remaining(), buffers, buffers.position()); - } - private static native void nalDeleteBuffers(int n, IntBuffer buffers, int offset); - - /** - * The application can verify whether a buffer Name is valid using the IsBuffer query. - * - * @param buffer buffer to be tested for validity - * @return true if supplied buffer is valid, false if not - */ - public static native boolean alIsBuffer(int buffer); - - /** - *

- * A special case of Buffer state is the actual sound sample data stored in asociation - * with the Buffer. Applications can specify sample data using BufferData. - *

- *

- * The data specified is copied to an internal software, or if possible, hardware buffer. - * The implementation is free to apply decompression, conversion, resampling, and - * filtering as needed. The internal format of the Buffer is not exposed to the - * application, and not accessible. Valid formats are AL_FORMAT_MONO8, - * AL_FORMAT_MONO16, AL_FORMAT_STEREO8, and AL_FORMAT_STEREO16. An - * implementation may expose other formats, see the chapter on Extensions for - * information on determining if additional formats are supported. - *

- *

- * Applications should always check for an error condition after attempting to specify - * buffer data in case an implementation has to generate an AL_OUT_OF_MEMORY or - * conversion related AL_INVALID_VALUE error. The application is free to reuse the - * memory specified by the data pointer once the call to BufferData returns. The - * implementation has to dereference, e.g. copy, the data during BufferData execution. - *

- * - * @param buffer Buffer to fill - * @param format format sound data is in - * @param data location of data - * @param freq frequency of data - */ - public static void alBufferData( - int buffer, - int format, - ByteBuffer data, - int freq) { - BufferChecks.checkDirect(data); - nalBufferData(buffer, format, data, data.position(), data.remaining(), freq); - } - public static void alBufferData( - int buffer, - int format, - ShortBuffer data, - int freq) { - BufferChecks.checkDirect(data); - nalBufferData(buffer, format, data, data.position() << 1, data.remaining() << 1, freq); - } - public static void alBufferData( - int buffer, - int format, - IntBuffer data, - int freq) { - BufferChecks.checkDirect(data); - nalBufferData(buffer, format, data, data.position() << 2, data.remaining() << 2, freq); - } - private static native void nalBufferData( - int buffer, - int format, - Buffer data, - int offset, - int size, - int freq); - - /** - * Buffer state is maintained inside the AL implementation and can be queried in full.
- * ALC_FREQUENCY - specified in samples per second, i.e. units of Hertz [Hz].
- * ALC_SIZE - Size in bytes of the buffer data.
- * - * @param buffer buffer to get property from - * @param pname name of property to retrieve - */ - public static native int alGetBufferi(int buffer, int pname); - - /** - * Buffer state is maintained inside the AL implementation and can be queried in full.
- * ALC_FREQUENCY - specified in samples per second, i.e. units of Hertz [Hz].
- * ALC_SIZE - Size in bytes of the buffer data.
- * - * @param buffer buffer to get property from - * @param pname name of property to retrieve - * @return float - */ - public static native float alGetBufferf(int buffer, int pname); - - /** - *

- * The application can queue up one or multiple buffer names using - * SourceQueueBuffers. The buffers will be queued in the sequence in which they - * appear in the array. - *

- *

- * This command is legal on a Source in any state (to allow for streaming, queueing - * has to be possible on a AL_PLAYING Source). Queues are read-only with exception of - * the unqueue operation. The Buffer Name AL_NONE (i.e. 0) can be queued. - *

- * - * @param source source to queue buffers onto - * @param buffers buffers to be queued - */ - public static void alSourceQueueBuffers(int source, IntBuffer buffers) { - BufferChecks.checkDirect(buffers); - nalSourceQueueBuffers(source, buffers.remaining(), buffers, buffers.position()); - } - private static native void nalSourceQueueBuffers(int source, int n, IntBuffer buffers, int offset); - - /** - *

- * Once a queue entry for a buffer has been appended to a queue and is pending - * processing, it should not be changed. Removal of a given queue entry is not possible - * unless either the Source is AL_STOPPED (in which case then entire queue is considered - * processed), or if the queue entry has already been processed (AL_PLAYING or AL_PAUSED - * Source). - *

- *

- * The Unqueue command removes a number of buffers entries that have nished - * processing, in the order of appearance, from the queue. The operation will fail if - * more buffers are requested than available, leaving the destination arguments - * unchanged. An AL_INVALID_VALUE error will be thrown. If no error, the destination - * argument will have been updated accordingly. - *

- * - * @param source source to unqueue buffers from - * @param buffers buffers to be unqueued - */ - public static void alSourceUnqueueBuffers(int source, IntBuffer buffers) { - nalSourceUnqueueBuffers(source, buffers.remaining(), buffers, buffers.position()); - } - private static native void nalSourceUnqueueBuffers(int source, int n, IntBuffer buffers, int offset); - - /** - *

- * Samples usually use the entire dynamic range of the chosen format/encoding, - * independent of their real world intensity. In other words, a jet engine and a - * clockwork both will have samples with full amplitude. The application will then - * have to adjust Source AL_GAIN accordingly to account for relative differences. - *

- *

- * Source AL_GAIN is then attenuated by distance. The effective attenuation of a Source - * depends on many factors, among which distance attenuation and source and - * Listener AL_GAIN are only some of the contributing factors. Even if the source and - * Listener AL_GAIN exceed 1.0 (amplification beyond the guaranteed dynamic range), - * distance and other attenuation might ultimately limit the overall AL_GAIN to a value - * below 1.0. - *

- *

- * AL currently supports three modes of operation with respect to distance - * attenuation. It supports two distance-dependent attenuation models, one which is - * similar to the IASIG I3DL2 (and DS3D) model. The application choses one of these - * two models (or can chose to disable distance-dependent attenuation effects model) - * on a per-context basis. - *

- *

- * Legal arguments are AL_NONE, AL_INVERSE_DISTANCE, and - * AL_INVERSE_DISTANCE_CLAMPED. - *
- *
- * AL_NONE bypasses all distance attenuation - * calculation for all Sources. The implementation is expected to optimize this - * situation. - *
- *
- * AL_INVERSE_DISTANCE_CLAMPED is the DS3D model, with - * AL_REFERENCE_DISTANCE indicating both the reference distance and the distance - * below which gain will be clamped. - *
- *
- * AL_INVERSE_DISTANCE is equivalent to the DS3D - * model with the exception that AL_REFERENCE_DISTANCE does not imply any - * clamping. - *
- *
- * The AL implementation is still free to apply any range clamping as - * necessary. The current distance model chosen can be queried using GetIntegerv and + * Like OpenGL, AL uses a simplified interface for querying global state. + * + * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, * AL_DISTANCE_MODEL. + *

+ * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors + * in specifying pName. The amount of memory required in the destination + * depends on the actual state requested. *

- * - * @param value distance model to be set + * @param pname state to be queried + * @param data Buffer to place the floats in */ - public static native void alDistanceModel(int value); + public static void alGetFloat(int pname, FloatBuffer data) { + BufferChecks.checkBuffer(data, 1); + nalGetFloatv(pname, data, data.position()); + Util.checkALError(); + } + private static native void nalGetFloatv(int pname, FloatBuffer data, int data_position); /** - * The Doppler Effect depends on the velocities of Source and Listener relative to the - * medium, and the propagation speed of sound in that medium. The application - * might want to emphasize or de-emphasize the Doppler Effect as physically accurate - * calculation might not give the desired results. The amount of frequency shift (pitch - * change) is proportional to the speed of listener and source along their line of sight. - * The application can increase or decrease that frequency shift by specifying the - * scaling factor AL should apply to the result of the calculation. - *
- *
- * The Doppler Effect as implemented by AL is described by the formula below. Effects - * of the medium (air, water) moving with respect to listener and source are ignored. - * AL_DOPPLER_VELOCITY is the propagation speed relative to which the Source - * velocities are interpreted. + * Like OpenGL, AL uses a simplified interface for querying global state. * + * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, + * AL_DISTANCE_MODEL. *

- *

-	 *	 VD: AL_DOPPLER_VELOCITY
-	 *	 DF: AL_DOPPLER_FACTOR
-	 *	 vl: Listener velocity (scalar, projected on source-listener vector)
-	 *	 vs: Source verlocity (scalar, projected on source-listener vector)
-	 *	 f: Frequency in sample
-	 *	 f': effective Doppler shifted frequency
-	 *	 
-	 *	 f' = DF * f * (VD-vl)/(VD+vs)
-	 * 
-	 *	 vl<0, vs>0 : source and listener approaching each other
-	 *	 vl>0, vs<0 : source and listener moving away from each other
-	 * 
+ * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors + * in specifying pName. The amount of memory required in the destination + * depends on the actual state requested. *

- *

- * The implementation has to clamp the projected Listener velocity vl, if abs(vl) is - * greater or equal VD. It similarly has to clamp the projected Source velocity vs if - * abs(vs) is greater or equal VD. - *

- *

- * There are two API calls global to the current context that provide control of the two - * related parameters. - *

- *

- * AL_DOPPLER_FACTOR is a simple scaling to exaggerate or - * deemphasize the Doppler (pitch) shift resulting from the calculation. - *

- *

- * A negative value will result in an AL_INVALID_VALUE error, the command is then - * ignored. The default value is 1. The current setting can be queried using GetFloatv - * and AL_DOPPLER_FACTOR. The implementation is free to optimize the case of - * AL_DOPPLER_FACTOR being set to zero, as this effectively disables the effect. - *

- * - * @param value Doppler scale value to set + * @param pname state to be queried + * @param data Buffer to place the integers in */ - public static native void alDopplerFactor(float value); + public static void alGetInteger(int pname, IntBuffer data) { + BufferChecks.checkBuffer(data, 1); + nalGetIntegerv(pname, data, data.position()); + Util.checkALError(); + } + private static native void nalGetIntegerv(int pname, IntBuffer data, int data_position); /** - * The Doppler Effect depends on the velocities of Source and Listener relative to the - * medium, and the propagation speed of sound in that medium. The application - * might want to emphasize or de-emphasize the Doppler Effect as physically accurate - * calculation might not give the desired results. The amount of frequency shift (pitch - * change) is proportional to the speed of listener and source along their line of sight. - * The application can increase or decrease that frequency shift by specifying the - * scaling factor AL should apply to the result of the calculation. - *
- *
- * The Doppler Effect as implemented by AL is described by the formula below. Effects - * of the medium (air, water) moving with respect to listener and source are ignored. - * AL_DOPPLER_VELOCITY is the propagation speed relative to which the Source - * velocities are interpreted. + * Like OpenGL, AL uses a simplified interface for querying global state. * + * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, + * AL_DISTANCE_MODEL. *

- *

-	 *	 VD: AL_DOPPLER_VELOCITY
-	 *	 DF: AL_DOPPLER_FACTOR
-	 *	 vl: Listener velocity (scalar, projected on source-listener vector)
-	 *	 vs: Source verlocity (scalar, projected on source-listener vector)
-	 *	 f: Frequency in sample
-	 *	 f': effective Doppler shifted frequency
-	 *	 
-	 *	 f' = DF * f * (VD-vl)/(VD+vs)
-	 * 
-	 *	 vl<0, vs>0 : source and listener approaching each other
-	 *	 vl>0, vs<0 : source and listener moving away from each other
-	 * 
+ * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors + * in specifying pName. The amount of memory required in the destination + * depends on the actual state requested. *

- *

- * The implementation has to clamp the projected Listener velocity vl, if abs(vl) is - * greater or equal VD. It similarly has to clamp the projected Source velocity vs if - * abs(vs) is greater or equal VD. - *

- *

- * There are two API calls global to the current context that provide control of the two - * related parameters. - *

- *

- * AL_DOPPLER_VELOCITY allows the application to change the reference (propagation) - * velocity used in the Doppler Effect calculation. This permits the application to use a - * velocity scale appropriate to its purposes. - *

- *

- * A negative or zero value will result in an AL_INVALID_VALUE error, the command is - * then ignored. The default value is 1. The current setting can be queried using - * GetFloatv and AL_DOPPLER_VELOCITY. - *

- * - * @param value Doppler velocity value to set + * @return float state described by pname will be returned. */ - public static native void alDopplerVelocity(float value); + public static float alGetFloat(int pname) { + float __result = nalGetFloat(pname); + Util.checkALError(); + return __result; + } + private static native float nalGetFloat(int pname); + + /** + * Like OpenGL, AL uses a simplified interface for querying global state. + * + * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, + * AL_DISTANCE_MODEL. + *

+ * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors + * in specifying pName. The amount of memory required in the destination + * depends on the actual state requested. + *

+ * @return int state described by pname will be returned. + */ + public static int alGetInteger(int pname) { + int __result = nalGetInteger(pname); + Util.checkALError(); + return __result; + } + private static native int nalGetInteger(int pname); + + /** + * Like OpenGL, AL uses a simplified interface for querying global state. + * + * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, + * AL_DISTANCE_MODEL. + *

+ * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors + * in specifying pName. The amount of memory required in the destination + * depends on the actual state requested. + *

+ * @return boolean state described by pname will be returned. + */ + public static boolean alGetBoolean(int pname) { + boolean __result = nalGetBoolean(pname); + Util.checkALError(); + return __result; + } + private static native boolean nalGetBoolean(int pname); + + /** + * The application can also query whether a given capability is currently enabled or + * not. + *

+ * If the token used to specify target is not legal, an AL_INVALID_ENUM error will be + * generated. + *

+ *

+ * At this time, this mechanism is not used. There are no valid targets. + *

+ * @param capability name of a capability to check + * @return true if named feature is enabled + */ + public static boolean alIsEnabled(int capability) { + boolean __result = nalIsEnabled(capability); + Util.checkALError(); + return __result; + } + private static native boolean nalIsEnabled(int capability); + + /** + * The application can temporarily disable certain AL capabilities on a per Context + * basis. This allows the driver implementation to optimize for certain subsets of + * operations. Enabling and disabling capabilities is handled using a function pair. + * @param capability name of a capability to disable + */ + public static void alDisable(int capability) { + nalDisable(capability); + Util.checkALError(); + } + private static native void nalDisable(int capability); + + /** + * The application can temporarily disable certain AL capabilities on a per Context + * basis. This allows the driver implementation to optimize for certain subsets of + * operations. Enabling and disabling capabilities is handled using a function pair. + * @param capability name of a capability to enable + */ + public static void alEnable(int capability) { + nalEnable(capability); + Util.checkALError(); + } + private static native void nalEnable(int capability); } diff --git a/src/java/org/lwjgl/openal/OpenALException.java b/src/java/org/lwjgl/openal/OpenALException.java index 0d9afe54..18e7cda4 100644 --- a/src/java/org/lwjgl/openal/OpenALException.java +++ b/src/java/org/lwjgl/openal/OpenALException.java @@ -49,6 +49,13 @@ public class OpenALException extends RuntimeException { super(); } + /** + * Constructor that takes an AL error number + */ + public OpenALException(int error_code) { + super("OpenAL error: " + AL10.alGetString(error_code) + " (" + error_code + ")"); + } + /** * Constructor for OpenALException. * @param message diff --git a/src/java/org/lwjgl/openal/Util.java b/src/java/org/lwjgl/openal/Util.java new file mode 100644 index 00000000..2d71ebd9 --- /dev/null +++ b/src/java/org/lwjgl/openal/Util.java @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.openal; + +import java.nio.*; + +import org.lwjgl.BufferUtils; + +/** + * Simple utility class. + * + * @author cix_foo + * @version $Revision$ + */ + +public final class Util { + /** No c'tor */ + private Util() { + } + + public static void checkALError() { + int err = AL10.alGetError(); + if (err != AL10.AL_NO_ERROR) + throw new OpenALException(err); + } +} diff --git a/src/java/org/lwjgl/opengl/ARBBufferObject.java b/src/java/org/lwjgl/opengl/ARBBufferObject.java index dc697211..6cc91749 100644 --- a/src/java/org/lwjgl/opengl/ARBBufferObject.java +++ b/src/java/org/lwjgl/opengl/ARBBufferObject.java @@ -1,192 +1,45 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -import org.lwjgl.BufferChecks; import org.lwjgl.LWJGLException; - +import org.lwjgl.BufferChecks; import java.nio.*; -public abstract class ARBBufferObject { - - /* - * Accepted by the parameter of BufferDataARB: - */ - public static final int GL_STREAM_DRAW_ARB = 0x88E0; - public static final int GL_STREAM_READ_ARB = 0x88E1; - public static final int GL_STREAM_COPY_ARB = 0x88E2; - public static final int GL_STATIC_DRAW_ARB = 0x88E4; - public static final int GL_STATIC_READ_ARB = 0x88E5; - public static final int GL_STATIC_COPY_ARB = 0x88E6; - public static final int GL_DYNAMIC_DRAW_ARB = 0x88E8; - public static final int GL_DYNAMIC_READ_ARB = 0x88E9; - public static final int GL_DYNAMIC_COPY_ARB = 0x88EA; - - /* - * Accepted by the parameter of MapBufferARB: - */ - public static final int GL_READ_ONLY_ARB = 0x88B8; - public static final int GL_WRITE_ONLY_ARB = 0x88B9; - public static final int GL_READ_WRITE_ARB = 0x88BA; - - /* - * Accepted by the parameter of GetBufferParameterivARB: - */ - public static final int GL_BUFFER_SIZE_ARB = 0x8764; +public class ARBBufferObject { + public static final int GL_BUFFER_MAP_POINTER_ARB = 0x88bd; + public static final int GL_BUFFER_MAPPED_ARB = 0x88bc; + public static final int GL_BUFFER_ACCESS_ARB = 0x88bb; public static final int GL_BUFFER_USAGE_ARB = 0x8765; - public static final int GL_BUFFER_ACCESS_ARB = 0x88BB; - public static final int GL_BUFFER_MAPPED_ARB = 0x88BC; - public static final int GL_BUFFER_MAP_POINTER_ARB = 0x88BD; + public static final int GL_BUFFER_SIZE_ARB = 0x8764; + public static final int GL_READ_WRITE_ARB = 0x88ba; + public static final int GL_WRITE_ONLY_ARB = 0x88b9; + public static final int GL_READ_ONLY_ARB = 0x88b8; + public static final int GL_DYNAMIC_COPY_ARB = 0x88ea; + public static final int GL_DYNAMIC_READ_ARB = 0x88e9; + public static final int GL_DYNAMIC_DRAW_ARB = 0x88e8; + public static final int GL_STATIC_COPY_ARB = 0x88e6; + public static final int GL_STATIC_READ_ARB = 0x88e5; + public static final int GL_STATIC_DRAW_ARB = 0x88e4; + public static final int GL_STREAM_COPY_ARB = 0x88e2; + public static final int GL_STREAM_READ_ARB = 0x88e1; + public static final int GL_STREAM_DRAW_ARB = 0x88e0; static native void initNativeStubs() throws LWJGLException; - public static void glBindBufferARB(int target, int buffer) { - switch ( target ) { - case ARBVertexBufferObject.GL_ARRAY_BUFFER_ARB: - BufferObjectTracker.getVBOArrayStack().setState(buffer); - break; - case ARBVertexBufferObject.GL_ELEMENT_ARRAY_BUFFER_ARB: - BufferObjectTracker.getVBOElementStack().setState(buffer); - break; - case ARBPixelBufferObject.GL_PIXEL_PACK_BUFFER_ARB: - BufferObjectTracker.getPBOPackStack().setState(buffer); - break; - case ARBPixelBufferObject.GL_PIXEL_UNPACK_BUFFER_ARB: - BufferObjectTracker.getPBOUnpackStack().setState(buffer); - break; - default: - throw new IllegalArgumentException("Unsupported VBO target " + target); - } - nglBindBufferARB(target, buffer); + public static java.nio.ByteBuffer glGetBufferPointerARB(int target, int pname, int result_size) { + java.nio.ByteBuffer __result = nglGetBufferPointervARB(target, pname, result_size); + return __result; } + private static native java.nio.ByteBuffer nglGetBufferPointervARB(int target, int pname, int result_size); - private static native void nglBindBufferARB(int target, int buffer); - - public static void glDeleteBuffersARB(IntBuffer buffers) { - for ( int i = buffers.position(); i < buffers.limit(); i++ ) { - int buffer_handle = buffers.get(i); - if ( BufferObjectTracker.getVBOArrayStack().getState() == buffer_handle ) - BufferObjectTracker.getVBOArrayStack().setState(0); - if ( BufferObjectTracker.getVBOElementStack().getState() == buffer_handle ) - BufferObjectTracker.getVBOElementStack().setState(0); - if ( BufferObjectTracker.getPBOPackStack().getState() == buffer_handle ) - BufferObjectTracker.getPBOPackStack().setState(0); - if ( BufferObjectTracker.getPBOUnpackStack().getState() == buffer_handle ) - BufferObjectTracker.getPBOUnpackStack().setState(0); - } - BufferChecks.checkDirect(buffers); - nglDeleteBuffersARB(buffers.remaining(), buffers, buffers.position()); + public static void glGetBufferParameterARB(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetBufferParameterivARB(target, pname, params, params.position()); } + private static native void nglGetBufferParameterivARB(int target, int pname, IntBuffer params, int params_position); - private static native void nglDeleteBuffersARB(int n, IntBuffer buffers, int buffers_offset); - - public static void glGenBuffersARB(IntBuffer buffers) { - BufferChecks.checkDirect(buffers); - nglGenBuffersARB(buffers.remaining(), buffers, buffers.position()); - } - - private static native void nglGenBuffersARB(int n, IntBuffer buffers, int buffers_offset); - - public static native boolean glIsBufferARB(int buffer); - - public static void glBufferDataARB(int target, int size, int usage) { - nglBufferDataARB(target, size, null, 0, usage); - } - - public static void glBufferDataARB(int target, ByteBuffer data, int usage) { - BufferChecks.checkDirect(data); - nglBufferDataARB(target, data.remaining(), data, data.position(), usage); - } - - public static void glBufferDataARB(int target, ShortBuffer data, int usage) { - BufferChecks.checkDirect(data); - nglBufferDataARB(target, data.remaining() << 1, data, data.position() << 1, usage); - } - - public static void glBufferDataARB(int target, FloatBuffer data, int usage) { - BufferChecks.checkDirectOrNull(data); - nglBufferDataARB(target, data.remaining() << 2, data, data.position() << 2, usage); - } - - public static void glBufferDataARB(int target, IntBuffer data, int usage) { - BufferChecks.checkDirectOrNull(data); - nglBufferDataARB(target, data.remaining() << 2, data, data.position() << 2, usage); - } - - private static native void nglBufferDataARB(int target, int size, Buffer data, int data_offset, int usage); - - public static void glBufferSubDataARB(int target, int offset, ByteBuffer data) { - BufferChecks.checkDirect(data); - nglBufferSubDataARB(target, offset, data.remaining(), data, data.position()); - } - - public static void glBufferSubDataARB(int target, int offset, ShortBuffer data) { - BufferChecks.checkDirect(data); - nglBufferSubDataARB(target, offset, data.remaining() << 1, data, data.position() << 1); - } - - public static void glBufferSubDataARB(int target, int offset, FloatBuffer data) { - BufferChecks.checkDirect(data); - nglBufferSubDataARB(target, offset, data.remaining() << 2, data, data.position() << 2); - } - - public static void glBufferSubDataARB(int target, int offset, IntBuffer data) { - BufferChecks.checkDirect(data); - nglBufferSubDataARB(target, offset, data.remaining() << 2, data, data.position() << 2); - } - - private static native void nglBufferSubDataARB(int target, int offset, int size, Buffer data, int data_offset); - - public static void glGetBufferSubDataARB(int target, int offset, ByteBuffer data) { - BufferChecks.checkDirect(data); - nglGetBufferSubDataARB(target, offset, data.remaining(), data, data.position()); - } - - public static void glGetBufferSubDataARB(int target, int offset, ShortBuffer data) { - BufferChecks.checkDirect(data); - nglGetBufferSubDataARB(target, offset, data.remaining() << 1, data, data.position() << 1); - } - - public static void glGetBufferSubDataARB(int target, int offset, IntBuffer data) { - BufferChecks.checkDirect(data); - nglGetBufferSubDataARB(target, offset, data.remaining() << 2, data, data.position() << 2); - } - - public static void glGetBufferSubDataARB(int target, int offset, FloatBuffer data) { - BufferChecks.checkDirect(data); - nglGetBufferSubDataARB(target, offset, data.remaining() << 2, data, data.position() << 2); - } - - private static native void nglGetBufferSubDataARB(int target, int offset, int size, Buffer data, int data_offset); + public static native boolean glUnmapBufferARB(int target); /** * glMapBufferARB maps a gl vertex buffer buffer to a ByteBuffer. The oldBuffer argument can be null, @@ -195,22 +48,93 @@ public abstract class ARBBufferObject { * way, an application will normally use glMapBufferARB like this: *

* ByteBuffer mapped_buffer; mapped_buffer = glMapBufferARB(..., ..., ..., null); ... // Another map on the same buffer mapped_buffer = glMapBufferARB(..., ..., ..., mapped_buffer); - * * @param size The size of the buffer area. * @param oldBuffer A ByteBuffer. If this argument points to the same address as the new mapping, it will be returned and no new buffer will be created. In that case, size is ignored. - * * @return A ByteBuffer representing the mapped buffer memory. */ - public static native ByteBuffer glMapBufferARB(int target, int access, int size, ByteBuffer oldBuffer); - - public static native boolean glUnmapBufferARB(int target); - - public static void glGetBufferParameterARB(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetBufferParameterivARB(target, pname, params, params.position()); + public static java.nio.ByteBuffer glMapBufferARB(int target, int access, int result_size, java.nio.ByteBuffer old_buffer) { + if (old_buffer != null) + BufferChecks.checkDirect(old_buffer); + java.nio.ByteBuffer __result = nglMapBufferARB(target, access, result_size, old_buffer); + return __result; } + private static native java.nio.ByteBuffer nglMapBufferARB(int target, int access, int result_size, java.nio.ByteBuffer old_buffer); - private static native void nglGetBufferParameterivARB(int target, int pname, IntBuffer params, int params_offset); + public static void glGetBufferSubDataARB(int target, int offset, ShortBuffer data) { + BufferChecks.checkDirect(data); + nglGetBufferSubDataARB(target, offset, (data.remaining() << 1), data, data.position() << 1); + } + public static void glGetBufferSubDataARB(int target, int offset, IntBuffer data) { + BufferChecks.checkDirect(data); + nglGetBufferSubDataARB(target, offset, (data.remaining() << 2), data, data.position() << 2); + } + public static void glGetBufferSubDataARB(int target, int offset, FloatBuffer data) { + BufferChecks.checkDirect(data); + nglGetBufferSubDataARB(target, offset, (data.remaining() << 2), data, data.position() << 2); + } + public static void glGetBufferSubDataARB(int target, int offset, ByteBuffer data) { + BufferChecks.checkDirect(data); + nglGetBufferSubDataARB(target, offset, (data.remaining()), data, data.position()); + } + private static native void nglGetBufferSubDataARB(int target, int offset, int size, Buffer data, int data_position); - public static native ByteBuffer glGetBufferPointerARB(int target, int pname, int size); + public static void glBufferSubDataARB(int target, int offset, ShortBuffer data) { + BufferChecks.checkDirect(data); + nglBufferSubDataARB(target, offset, (data.remaining() << 1), data, data.position() << 1); + } + public static void glBufferSubDataARB(int target, int offset, IntBuffer data) { + BufferChecks.checkDirect(data); + nglBufferSubDataARB(target, offset, (data.remaining() << 2), data, data.position() << 2); + } + public static void glBufferSubDataARB(int target, int offset, FloatBuffer data) { + BufferChecks.checkDirect(data); + nglBufferSubDataARB(target, offset, (data.remaining() << 2), data, data.position() << 2); + } + public static void glBufferSubDataARB(int target, int offset, ByteBuffer data) { + BufferChecks.checkDirect(data); + nglBufferSubDataARB(target, offset, (data.remaining()), data, data.position()); + } + private static native void nglBufferSubDataARB(int target, int offset, int size, Buffer data, int data_position); + + public static void glBufferDataARB(int target, int size, int usage) { + nglBufferDataARB(target, size, null, 0, usage); + } + public static void glBufferDataARB(int target, ShortBuffer data, int usage) { + BufferChecks.checkDirect(data); + nglBufferDataARB(target, (data.remaining() << 1), data, data.position() << 1, usage); + } + public static void glBufferDataARB(int target, IntBuffer data, int usage) { + BufferChecks.checkDirect(data); + nglBufferDataARB(target, (data.remaining() << 2), data, data.position() << 2, usage); + } + public static void glBufferDataARB(int target, FloatBuffer data, int usage) { + BufferChecks.checkDirect(data); + nglBufferDataARB(target, (data.remaining() << 2), data, data.position() << 2, usage); + } + public static void glBufferDataARB(int target, ByteBuffer data, int usage) { + BufferChecks.checkDirect(data); + nglBufferDataARB(target, (data.remaining()), data, data.position(), usage); + } + private static native void nglBufferDataARB(int target, int size, Buffer data, int data_position, int usage); + + public static native boolean glIsBufferARB(int buffer); + + public static void glGenBuffersARB(IntBuffer buffers) { + BufferChecks.checkDirect(buffers); + nglGenBuffersARB((buffers.remaining()), buffers, buffers.position()); + } + private static native void nglGenBuffersARB(int n, IntBuffer buffers, int buffers_position); + + public static void glDeleteBuffersARB(IntBuffer buffers) { + BufferChecks.checkDirect(buffers); + BufferObjectTracker.deleteBuffers(buffers); + nglDeleteBuffersARB((buffers.remaining()), buffers, buffers.position()); + } + private static native void nglDeleteBuffersARB(int n, IntBuffer buffers, int buffers_position); + + public static void glBindBufferARB(int target, int buffer) { + BufferObjectTracker.bindBuffer(target, buffer); + nglBindBufferARB(target, buffer); + } + private static native void nglBindBufferARB(int target, int buffer); } diff --git a/src/java/org/lwjgl/opengl/ARBColorBufferFloat.java b/src/java/org/lwjgl/opengl/ARBColorBufferFloat.java index 5ed66bff..843ed818 100644 --- a/src/java/org/lwjgl/opengl/ARBColorBufferFloat.java +++ b/src/java/org/lwjgl/opengl/ARBColorBufferFloat.java @@ -1,83 +1,25 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBColorBufferFloat { - - /* - * Accepted by the parameters of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ + public static final int GLX_RGBA_FLOAT_BIT = 0x4; + public static final int GLX_RGBA_FLOAT_TYPE = 0x20b9; + public static final int WGL_TYPE_RGBA_FLOAT_ARB = 0x21a0; + public static final int FIXED_ONLY_ARB = 0x891d; + public static final int CLAMP_READ_COLOR_ARB = 0x891c; + public static final int CLAMP_FRAGMENT_COLOR_ARB = 0x891b; + public static final int CLAMP_VERTEX_COLOR_ARB = 0x891a; public static final int RGBA_FLOAT_MODE_ARB = 0x8820; - /* - * Accepted by the parameter of ClampColorARB and the - * parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev. - */ - public static final int CLAMP_VERTEX_COLOR_ARB = 0x891A; - public static final int CLAMP_FRAGMENT_COLOR_ARB = 0x891B; - public static final int CLAMP_READ_COLOR_ARB = 0x891C; - - /* - * Accepted by the parameter of ClampColorARB. - */ - public static final int FIXED_ONLY_ARB = 0x891D; - - /* - * Accepted as a value in the and - * parameter arrays of wglChoosePixelFormatARB, and returned in the - * parameter array of wglGetPixelFormatAttribivARB, and the - * parameter array of wglGetPixelFormatAttribfvARB: - */ - static final int WGL_TYPE_RGBA_FLOAT_ARB = 0x21A0; - - /* - * Accepted as values of the arguments in the - * glXCreateNewContext and glXCreateContext functions - */ - static final int GLX_RGBA_FLOAT_TYPE = 0x20B9; - - /* - * Accepted as a bit set in the GLX_RENDER_TYPE variable - */ - static final int GLX_RGBA_FLOAT_BIT = 0x00000004; - private ARBColorBufferFloat() { } static native void initNativeStubs() throws LWJGLException; public static native void glClampColorARB(int target, int clamp); - -} \ No newline at end of file +} diff --git a/src/java/org/lwjgl/opengl/ARBDepthTexture.java b/src/java/org/lwjgl/opengl/ARBDepthTexture.java index f16dded7..d972d9de 100644 --- a/src/java/org/lwjgl/opengl/ARBDepthTexture.java +++ b/src/java/org/lwjgl/opengl/ARBDepthTexture.java @@ -1,58 +1,19 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; + public final class ARBDepthTexture { - - /* - * Accepted by the parameter of TexImage1D, TexImage2D, - * CopyTexImage1D and CopyTexImage2D: - */ - public static final int GL_DEPTH_COMPONENT16_ARB = 0x81A5; - public static final int GL_DEPTH_COMPONENT24_ARB = 0x81A6; - public static final int GL_DEPTH_COMPONENT32_ARB = 0x81A7; - - /* - * Accepted by the parameter of GetTexLevelParameterfv and - * GetTexLevelParameteriv: - */ - public static final int GL_TEXTURE_DEPTH_SIZE_ARB = 0x884A; - - /* - * Accepted by the parameter of TexParameterf, TexParameteri, - * TexParameterfv, TexParameteriv, GetTexParameterfv, and GetTexParameteriv: - */ - public static final int GL_DEPTH_TEXTURE_MODE_ARB = 0x884B; + public static final int GL_DEPTH_TEXTURE_MODE_ARB = 0x884b; + public static final int GL_TEXTURE_DEPTH_SIZE_ARB = 0x884a; + public static final int GL_DEPTH_COMPONENT32_ARB = 0x81a7; + public static final int GL_DEPTH_COMPONENT24_ARB = 0x81a6; + public static final int GL_DEPTH_COMPONENT16_ARB = 0x81a5; private ARBDepthTexture() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBDrawBuffers.java b/src/java/org/lwjgl/opengl/ARBDrawBuffers.java index d88207aa..93a138f7 100644 --- a/src/java/org/lwjgl/opengl/ARBDrawBuffers.java +++ b/src/java/org/lwjgl/opengl/ARBDrawBuffers.java @@ -1,77 +1,38 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -import org.lwjgl.BufferChecks; import org.lwjgl.LWJGLException; - -import java.nio.IntBuffer; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBDrawBuffers { - - /* - * Accepted by the parameters of GetIntegerv, GetFloatv, - * and GetDoublev: - */ - public static final int GL_MAX_DRAW_BUFFERS_ARB = 0x8824; - public static final int GL_DRAW_BUFFER0_ARB = 0x8825; - public static final int GL_DRAW_BUFFER1_ARB = 0x8826; - public static final int GL_DRAW_BUFFER2_ARB = 0x8827; - public static final int GL_DRAW_BUFFER3_ARB = 0x8828; - public static final int GL_DRAW_BUFFER4_ARB = 0x8829; - public static final int GL_DRAW_BUFFER5_ARB = 0x882A; - public static final int GL_DRAW_BUFFER6_ARB = 0x882B; - public static final int GL_DRAW_BUFFER7_ARB = 0x882C; - public static final int GL_DRAW_BUFFER8_ARB = 0x882D; - public static final int GL_DRAW_BUFFER9_ARB = 0x882E; - public static final int GL_DRAW_BUFFER10_ARB = 0x882F; - public static final int GL_DRAW_BUFFER11_ARB = 0x8830; - public static final int GL_DRAW_BUFFER12_ARB = 0x8831; - public static final int GL_DRAW_BUFFER13_ARB = 0x8832; - public static final int GL_DRAW_BUFFER14_ARB = 0x8833; public static final int GL_DRAW_BUFFER15_ARB = 0x8834; + public static final int GL_DRAW_BUFFER14_ARB = 0x8833; + public static final int GL_DRAW_BUFFER13_ARB = 0x8832; + public static final int GL_DRAW_BUFFER12_ARB = 0x8831; + public static final int GL_DRAW_BUFFER11_ARB = 0x8830; + public static final int GL_DRAW_BUFFER10_ARB = 0x882f; + public static final int GL_DRAW_BUFFER9_ARB = 0x882e; + public static final int GL_DRAW_BUFFER8_ARB = 0x882d; + public static final int GL_DRAW_BUFFER7_ARB = 0x882c; + public static final int GL_DRAW_BUFFER6_ARB = 0x882b; + public static final int GL_DRAW_BUFFER5_ARB = 0x882a; + public static final int GL_DRAW_BUFFER4_ARB = 0x8829; + public static final int GL_DRAW_BUFFER3_ARB = 0x8828; + public static final int GL_DRAW_BUFFER2_ARB = 0x8827; + public static final int GL_DRAW_BUFFER1_ARB = 0x8826; + public static final int GL_DRAW_BUFFER0_ARB = 0x8825; + public static final int GL_MAX_DRAW_BUFFERS_ARB = 0x8824; private ARBDrawBuffers() { } static native void initNativeStubs() throws LWJGLException; - // --------------------------- public static void glDrawBuffersARB(IntBuffer buffers) { - BufferChecks.checkBuffer(buffers, 1); - nglDrawBuffersARB(buffers.remaining(), buffers, buffers.position()); + BufferChecks.checkDirect(buffers); + nglDrawBuffersARB((buffers.remaining()), buffers, buffers.position()); } - - private static native void nglDrawBuffersARB(int size, IntBuffer buffers, int buffersOffset); - // --------------------------- - + private static native void nglDrawBuffersARB(int size, IntBuffer buffers, int buffers_position); } diff --git a/src/java/org/lwjgl/opengl/ARBFragmentProgram.java b/src/java/org/lwjgl/opengl/ARBFragmentProgram.java index 434f3dc9..4c644eaf 100644 --- a/src/java/org/lwjgl/opengl/ARBFragmentProgram.java +++ b/src/java/org/lwjgl/opengl/ARBFragmentProgram.java @@ -1,72 +1,29 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; + public final class ARBFragmentProgram extends ARBProgram { - - /* - * Accepted by the parameter of Disable, Enable, and IsEnabled, by the - * parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev, - * and by the parameter of ProgramStringARB, BindProgramARB, - * ProgramEnvParameter4[df][v]ARB, ProgramLocalParameter4[df][v]ARB, - * GetProgramEnvParameter[df]vARB, GetProgramLocalParameter[df]vARB, - * GetProgramivARB and GetProgramStringARB. - */ - public static final int GL_FRAGMENT_PROGRAM_ARB = 0x8804; - - /* - * Accepted by the parameter of GetProgramivARB: - */ - public static final int GL_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x8805; - public static final int GL_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x8806; - public static final int GL_PROGRAM_TEX_INDIRECTIONS_ARB = 0x8807; - public static final int GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x8808; - public static final int GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x8809; - public static final int GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x880A; - public static final int GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x880B; - public static final int GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x880C; - public static final int GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB = 0x880D; - public static final int GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x880E; - public static final int GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x880F; - public static final int GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x8810; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, GetFloatv, - * and GetDoublev: - */ - public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; public static final int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; + public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; + public static final int GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x8810; + public static final int GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x880f; + public static final int GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x880e; + public static final int GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB = 0x880d; + public static final int GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x880c; + public static final int GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x880b; + public static final int GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x880a; + public static final int GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x8809; + public static final int GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x8808; + public static final int GL_PROGRAM_TEX_INDIRECTIONS_ARB = 0x8807; + public static final int GL_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x8806; + public static final int GL_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x8805; + public static final int GL_FRAGMENT_PROGRAM_ARB = 0x8804; private ARBFragmentProgram() { } -} +} diff --git a/src/java/org/lwjgl/opengl/ARBFragmentShader.java b/src/java/org/lwjgl/opengl/ARBFragmentShader.java index 1d021224..8158ead8 100644 --- a/src/java/org/lwjgl/opengl/ARBFragmentShader.java +++ b/src/java/org/lwjgl/opengl/ARBFragmentShader.java @@ -1,58 +1,19 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; + public final class ARBFragmentShader { - - /* - * Accepted by the argument of CreateShaderObjectARB and - * returned by the parameter of GetObjectParameter{fi}vARB: - */ - public static final int GL_FRAGMENT_SHADER_ARB = 0x8B30; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ - public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = 0x8B49; - public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; + public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = 0x8b8b; public static final int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; - - /* - * Accepted by the parameter of Hint and the parameter of - * GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev: - */ - public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = 0x8B8B; + public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; + public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = 0x8b49; + public static final int GL_FRAGMENT_SHADER_ARB = 0x8b30; private ARBFragmentShader() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBHalfFloatPixel.java b/src/java/org/lwjgl/opengl/ARBHalfFloatPixel.java index 7ca225fc..ec0d2757 100644 --- a/src/java/org/lwjgl/opengl/ARBHalfFloatPixel.java +++ b/src/java/org/lwjgl/opengl/ARBHalfFloatPixel.java @@ -1,49 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ARBHalfFloatPixel { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - /* - * Accepted by the parameter of DrawPixels, ReadPixels, - * TexImage1D, TexImage2D, TexImage3D, GetTexImage, TexSubImage1D, - * TexSubImage2D, TexSubImage3D, GetHistogram, GetMinmax, - * ConvolutionFilter1D, ConvolutionFilter2D, GetConvolutionFilter, - * SeparableFilter2D, GetSeparableFilter, ColorTable, ColorSubTable, - * and GetColorTable: - */ - public static final int HALF_FLOAT_ARB = 0x140B; +public final class ARBHalfFloatPixel { + public static final int HALF_FLOAT_ARB = 0x140b; private ARBHalfFloatPixel() { } -} \ No newline at end of file +} diff --git a/src/java/org/lwjgl/opengl/ARBImaging.java b/src/java/org/lwjgl/opengl/ARBImaging.java index 3a091667..9cc1006d 100644 --- a/src/java/org/lwjgl/opengl/ARBImaging.java +++ b/src/java/org/lwjgl/opengl/ARBImaging.java @@ -1,232 +1,814 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; - -import org.lwjgl.BufferChecks; -import org.lwjgl.BufferUtils; import org.lwjgl.LWJGLException; - -/** - * $Id$ - *

- * The GL12 imaging subset extension. - * - * @author cix_foo - * @version $Revision$ - */ +import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBImaging { - - public static final int GL_CONSTANT_COLOR = 0x8001; - public static final int GL_ONE_MINUS_CONSTANT_COLOR = 0x8002; - public static final int GL_CONSTANT_ALPHA = 0x8003; - public static final int GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004; - public static final int GL_BLEND_COLOR = 0x8005; - public static final int GL_FUNC_ADD = 0x8006; - public static final int GL_MIN = 0x8007; - public static final int GL_MAX = 0x8008; - public static final int GL_BLEND_EQUATION = 0x8009; - public static final int GL_FUNC_SUBTRACT = 0x800A; - public static final int GL_FUNC_REVERSE_SUBTRACT = 0x800B; - public static final int GL_COLOR_MATRIX = 0x80B1; - public static final int GL_COLOR_MATRIX_STACK_DEPTH = 0x80B2; - public static final int GL_MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3; - public static final int GL_POST_COLOR_MATRIX_RED_SCALE = 0x80B4; - public static final int GL_POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5; - public static final int GL_POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6; - public static final int GL_POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7; - public static final int GL_POST_COLOR_MATRIX_RED_BIAS = 0x80B8; - public static final int GL_POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9; - public static final int GL_POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA; - public static final int GL_POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB; - public static final int GL_COLOR_TABLE = 0x80D0; - public static final int GL_POST_CONVOLUTION_COLOR_TABLE = 0x80D1; - public static final int GL_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D2; - public static final int GL_PROXY_COLOR_TABLE = 0x80D3; - public static final int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80D4; - public static final int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D5; - public static final int GL_COLOR_TABLE_SCALE = 0x80D6; - public static final int GL_COLOR_TABLE_BIAS = 0x80D7; - public static final int GL_COLOR_TABLE_FORMAT = 0x80D8; - public static final int GL_COLOR_TABLE_WIDTH = 0x80D9; - public static final int GL_COLOR_TABLE_RED_SIZE = 0x80DA; - public static final int GL_COLOR_TABLE_GREEN_SIZE = 0x80DB; - public static final int GL_COLOR_TABLE_BLUE_SIZE = 0x80DC; - public static final int GL_COLOR_TABLE_ALPHA_SIZE = 0x80DD; - public static final int GL_COLOR_TABLE_LUMINANCE_SIZE = 0x80DE; - public static final int GL_COLOR_TABLE_INTENSITY_SIZE = 0x80DF; - public static final int GL_CONVOLUTION_1D = 0x8010; - public static final int GL_CONVOLUTION_2D = 0x8011; - public static final int GL_SEPARABLE_2D = 0x8012; - public static final int GL_CONVOLUTION_BORDER_MODE = 0x8013; - public static final int GL_CONVOLUTION_FILTER_SCALE = 0x8014; - public static final int GL_CONVOLUTION_FILTER_BIAS = 0x8015; - public static final int GL_REDUCE = 0x8016; - public static final int GL_CONVOLUTION_FORMAT = 0x8017; - public static final int GL_CONVOLUTION_WIDTH = 0x8018; - public static final int GL_CONVOLUTION_HEIGHT = 0x8019; - public static final int GL_MAX_CONVOLUTION_WIDTH = 0x801A; - public static final int GL_MAX_CONVOLUTION_HEIGHT = 0x801B; - public static final int GL_POST_CONVOLUTION_RED_SCALE = 0x801C; - public static final int GL_POST_CONVOLUTION_GREEN_SCALE = 0x801D; - public static final int GL_POST_CONVOLUTION_BLUE_SCALE = 0x801E; - public static final int GL_POST_CONVOLUTION_ALPHA_SCALE = 0x801F; - public static final int GL_POST_CONVOLUTION_RED_BIAS = 0x8020; - public static final int GL_POST_CONVOLUTION_GREEN_BIAS = 0x8021; - public static final int GL_POST_CONVOLUTION_BLUE_BIAS = 0x8022; - public static final int GL_POST_CONVOLUTION_ALPHA_BIAS = 0x8023; - public static final int GL_IGNORE_BORDER = 0x8150; - public static final int GL_CONSTANT_BORDER = 0x8151; - public static final int GL_REPLICATE_BORDER = 0x8153; - public static final int GL_CONVOLUTION_BORDER_COLOR = 0x8154; - public static final int GL_HISTOGRAM = 0x8024; - public static final int GL_PROXY_HISTOGRAM = 0x8025; - public static final int GL_HISTOGRAM_WIDTH = 0x8026; - public static final int GL_HISTOGRAM_FORMAT = 0x8027; - public static final int GL_HISTOGRAM_RED_SIZE = 0x8028; - public static final int GL_HISTOGRAM_GREEN_SIZE = 0x8029; - public static final int GL_HISTOGRAM_BLUE_SIZE = 0x802A; - public static final int GL_HISTOGRAM_ALPHA_SIZE = 0x802B; - public static final int GL_HISTOGRAM_LUMINANCE_SIZE = 0x802C; - public static final int GL_HISTOGRAM_SINK = 0x802D; - public static final int GL_MINMAX = 0x802E; - public static final int GL_MINMAX_FORMAT = 0x802F; public static final int GL_MINMAX_SINK = 0x8030; + public static final int GL_MINMAX_FORMAT = 0x802f; + public static final int GL_MINMAX = 0x802e; + public static final int GL_HISTOGRAM_SINK = 0x802d; + public static final int GL_HISTOGRAM_LUMINANCE_SIZE = 0x802c; + public static final int GL_HISTOGRAM_ALPHA_SIZE = 0x802b; + public static final int GL_HISTOGRAM_BLUE_SIZE = 0x802a; + public static final int GL_HISTOGRAM_GREEN_SIZE = 0x8029; + public static final int GL_HISTOGRAM_RED_SIZE = 0x8028; + public static final int GL_HISTOGRAM_FORMAT = 0x8027; + public static final int GL_HISTOGRAM_WIDTH = 0x8026; + public static final int GL_PROXY_HISTOGRAM = 0x8025; + public static final int GL_HISTOGRAM = 0x8024; + public static final int GL_CONVOLUTION_BORDER_COLOR = 0x8154; + public static final int GL_REPLICATE_BORDER = 0x8153; + public static final int GL_CONSTANT_BORDER = 0x8151; + public static final int GL_IGNORE_BORDER = 0x8150; + public static final int GL_POST_CONVOLUTION_ALPHA_BIAS = 0x8023; + public static final int GL_POST_CONVOLUTION_BLUE_BIAS = 0x8022; + public static final int GL_POST_CONVOLUTION_GREEN_BIAS = 0x8021; + public static final int GL_POST_CONVOLUTION_RED_BIAS = 0x8020; + public static final int GL_POST_CONVOLUTION_ALPHA_SCALE = 0x801f; + public static final int GL_POST_CONVOLUTION_BLUE_SCALE = 0x801e; + public static final int GL_POST_CONVOLUTION_GREEN_SCALE = 0x801d; + public static final int GL_POST_CONVOLUTION_RED_SCALE = 0x801c; + public static final int GL_MAX_CONVOLUTION_HEIGHT = 0x801b; + public static final int GL_MAX_CONVOLUTION_WIDTH = 0x801a; + public static final int GL_CONVOLUTION_HEIGHT = 0x8019; + public static final int GL_CONVOLUTION_WIDTH = 0x8018; + public static final int GL_CONVOLUTION_FORMAT = 0x8017; + public static final int GL_REDUCE = 0x8016; + public static final int GL_CONVOLUTION_FILTER_BIAS = 0x8015; + public static final int GL_CONVOLUTION_FILTER_SCALE = 0x8014; + public static final int GL_CONVOLUTION_BORDER_MODE = 0x8013; + public static final int GL_SEPARABLE_2D = 0x8012; + public static final int GL_CONVOLUTION_2D = 0x8011; + public static final int GL_CONVOLUTION_1D = 0x8010; + public static final int GL_COLOR_TABLE_INTENSITY_SIZE = 0x80df; + public static final int GL_COLOR_TABLE_LUMINANCE_SIZE = 0x80de; + public static final int GL_COLOR_TABLE_ALPHA_SIZE = 0x80dd; + public static final int GL_COLOR_TABLE_BLUE_SIZE = 0x80dc; + public static final int GL_COLOR_TABLE_GREEN_SIZE = 0x80db; + public static final int GL_COLOR_TABLE_RED_SIZE = 0x80da; + public static final int GL_COLOR_TABLE_WIDTH = 0x80d9; + public static final int GL_COLOR_TABLE_FORMAT = 0x80d8; + public static final int GL_COLOR_TABLE_BIAS = 0x80d7; + public static final int GL_COLOR_TABLE_SCALE = 0x80d6; + public static final int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80d5; + public static final int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80d4; + public static final int GL_PROXY_COLOR_TABLE = 0x80d3; + public static final int GL_POST_COLOR_MATRIX_COLOR_TABLE = 0x80d2; + public static final int GL_POST_CONVOLUTION_COLOR_TABLE = 0x80d1; + public static final int GL_COLOR_TABLE = 0x80d0; + public static final int GL_POST_COLOR_MATRIX_ALPHA_BIAS = 0x80bb; + public static final int GL_POST_COLOR_MATRIX_BLUE_BIAS = 0x80ba; + public static final int GL_POST_COLOR_MATRIX_GREEN_BIAS = 0x80b9; + public static final int GL_POST_COLOR_MATRIX_RED_BIAS = 0x80b8; + public static final int GL_POST_COLOR_MATRIX_ALPHA_SCALE = 0x80b7; + public static final int GL_POST_COLOR_MATRIX_BLUE_SCALE = 0x80b6; + public static final int GL_POST_COLOR_MATRIX_GREEN_SCALE = 0x80b5; + public static final int GL_POST_COLOR_MATRIX_RED_SCALE = 0x80b4; + public static final int GL_MAX_COLOR_MATRIX_STACK_DEPTH = 0x80b3; + public static final int GL_COLOR_MATRIX_STACK_DEPTH = 0x80b2; + public static final int GL_COLOR_MATRIX = 0x80b1; + public static final int GL_FUNC_REVERSE_SUBTRACT = 0x800b; + public static final int GL_FUNC_SUBTRACT = 0x800a; + public static final int GL_BLEND_EQUATION = 0x8009; + public static final int GL_MAX = 0x8008; + public static final int GL_MIN = 0x8007; + public static final int GL_FUNC_ADD = 0x8006; + public static final int GL_BLEND_COLOR = 0x8005; + public static final int GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004; + public static final int GL_CONSTANT_ALPHA = 0x8003; + public static final int GL_ONE_MINUS_CONSTANT_COLOR = 0x8002; + public static final int GL_CONSTANT_COLOR = 0x8001; private ARBImaging() { } static native void initNativeStubs() throws LWJGLException; - // --------------------------- - public static void glColorTable(int target, int internalFormat, int width, int format, int type, ByteBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(data, 256); - nglColorTable(target, internalFormat, width, format, type, data, data.position()); - } - public static void glColorTable(int target, int internalFormat, int width, int format, int type, FloatBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(data, 256); - nglColorTable(target, internalFormat, width, format, type, data, data.position() << 2); - } - private static native void nglColorTable(int target, int internalFormat, int width, int format, int type, Buffer data, int data_offset); - - public static void glColorTable(int target, int internalFormat, int width, int format, int type, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglColorTableBO(target, internalFormat, width, format, type, buffer_offset); - } - private static native void nglColorTableBO(int target, int internalFormat, int width, int format, int type, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glColorSubTable(int target, int start, int count, int format, int type, ByteBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(data, 256); - nglColorSubTable(target, start, count, format, type, data, data.position()); - } - public static void glColorSubTable(int target, int start, int count, int format, int type, FloatBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(data, 256); - nglColorSubTable(target, start, count, format, type, data, data.position() << 2); - } - private static native void nglColorSubTable(int target, int start, int count, int format, int type, Buffer data, int data_offset); - - public static void glColorSubTable(int target, int start, int count, int format, int type, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglColorSubTableBO(target, start, count, format, type, buffer_offset); - } - private static native void nglColorSubTableBO(int target, int start, int count, int format, int type, int buffer_offset); - // --------------------------- - - public static void glColorTableParameter(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglColorTableParameteriv(target, pname, params, params.position()); - } - private static native void nglColorTableParameteriv(int target, int pname, IntBuffer params, int data_offset); - - public static void glColorTableParameter(int target, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglColorTableParameterfv(target, pname, params, params.position()); - } - private static native void nglColorTableParameterfv(int target, int pname, FloatBuffer params, int data_offset); - - public static native void glCopyColorSubTable(int target, int start, int x, int y, int width); - - public static native void glCopyColorTable(int target, int internalformat, int x, int y, int width); - - // --------------------------- - public static void glGetColorTable(int target, int format, int type, ByteBuffer data) { - BufferChecks.checkBuffer(data, 256); - nglGetColorTable(target, format, type, data, data.position()); - } - public static void glGetColorTable(int target, int format, int type, FloatBuffer data) { - BufferChecks.checkBuffer(data, 256); - nglGetColorTable(target, format, type, data, data.position()); - } - private static native void nglGetColorTable(int target, int format, int type, Buffer data, int data_offset); - // --------------------------- - - public static void glGetColorTableParameter(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetColorTableParameteriv(target, pname, params, params.position()); - } - private static native void nglGetColorTableParameteriv(int target, int pname, IntBuffer params, int params_offset); - - public static void glGetColorTableParameter(int target, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetColorTableParameterfv(target, pname, params, params.position()); - } - private static native void nglGetColorTableParameterfv(int target, int pname, FloatBuffer params, int params_offset); - - public static native void glBlendEquation(int mode); - - public static native void glBlendColor(float red, float green, float blue, float alpha); - - public static native void glHistogram(int target, int width, int internalformat, boolean sink); - - public static native void glResetHistogram(int target); - - // --------------------------- - public static void glGetHistogram(int target, boolean reset, int format, int type, ByteBuffer values) { + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, ShortBuffer column, ShortBuffer span) { GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(values, 256); - nglGetHistogram(target, reset, format, type, values, values.position()); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 1, span, span.position() << 1); } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, ShortBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 1, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, ShortBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 1, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, ShortBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 1, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, IntBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 2, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, IntBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, IntBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, IntBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 2, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, FloatBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 2, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, FloatBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, FloatBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, FloatBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position() << 2, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, ByteBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position(), span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, ByteBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position(), span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, ByteBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position(), span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ShortBuffer row, ByteBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 1, column, column.position(), span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, ShortBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 1, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, ShortBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 1, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, ShortBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 1, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, ShortBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 1, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, IntBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, IntBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, IntBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, IntBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, FloatBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, FloatBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, FloatBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, FloatBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, ByteBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position(), span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, ByteBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position(), span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, ByteBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position(), span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, IntBuffer row, ByteBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position(), span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, ShortBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 1, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, ShortBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 1, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, ShortBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 1, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, ShortBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 1, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, IntBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, IntBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, IntBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, IntBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, FloatBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, FloatBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, FloatBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, FloatBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position() << 2, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, ByteBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position(), span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, ByteBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position(), span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, ByteBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position(), span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, FloatBuffer row, ByteBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position() << 2, column, column.position(), span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, ShortBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 1, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, ShortBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 1, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, ShortBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 1, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, ShortBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 1, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, IntBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 2, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, IntBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, IntBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, IntBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 2, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, FloatBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 2, span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, FloatBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, FloatBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 2, span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, FloatBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position() << 2, span, span.position()); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, ByteBuffer column, ShortBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position(), span, span.position() << 1); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, ByteBuffer column, IntBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position(), span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, ByteBuffer column, FloatBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position(), span, span.position() << 2); + } + public static void glGetSeparableFilter(int target, int format, int type, ByteBuffer row, ByteBuffer column, ByteBuffer span) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + BufferChecks.checkDirect(span); + nglGetSeparableFilter(target, format, type, row, row.position(), column, column.position(), span, span.position()); + } + private static native void nglGetSeparableFilter(int target, int format, int type, Buffer row, int row_position, Buffer column, int column_position, Buffer span, int span_position); + public static void glGetSeparableFilter(int target, int format, int type, int row_buffer_offset, int column_buffer_offset, int span_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetSeparableFilterBO(target, format, type, row_buffer_offset, column_buffer_offset, span_buffer_offset); + } + private static native void nglGetSeparableFilterBO(int target, int format, int type, int row_buffer_offset, int column_buffer_offset, int span_buffer_offset); + + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, ShortBuffer row, ShortBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 1, column, column.position() << 1); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, ShortBuffer row, IntBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 1, column, column.position() << 2); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, ShortBuffer row, FloatBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 1, column, column.position() << 2); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, ShortBuffer row, ByteBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 1, column, column.position()); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, IntBuffer row, ShortBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 2, column, column.position() << 1); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, IntBuffer row, IntBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 2, column, column.position() << 2); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, IntBuffer row, FloatBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 2, column, column.position() << 2); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, IntBuffer row, ByteBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 2, column, column.position()); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, FloatBuffer row, ShortBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 2, column, column.position() << 1); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, FloatBuffer row, IntBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 2, column, column.position() << 2); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, FloatBuffer row, FloatBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 2, column, column.position() << 2); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, FloatBuffer row, ByteBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position() << 2, column, column.position()); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, ByteBuffer row, ShortBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position(), column, column.position() << 1); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, ByteBuffer row, IntBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position(), column, column.position() << 2); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, ByteBuffer row, FloatBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position(), column, column.position() << 2); + } + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, ByteBuffer row, ByteBuffer column) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(row); + BufferChecks.checkDirect(column); + nglSeparableFilter2D(target, internalformat, width, height, format, type, row, row.position(), column, column.position()); + } + private static native void nglSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer row, int row_position, Buffer column, int column_position); + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, int row_buffer_offset, int column_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglSeparableFilter2DBO(target, internalformat, width, height, format, type, row_buffer_offset, column_buffer_offset); + } + private static native void nglSeparableFilter2DBO(int target, int internalformat, int width, int height, int format, int type, int row_buffer_offset, int column_buffer_offset); + + public static void glGetConvolutionParameter(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetConvolutionParameteriv(target, pname, params, params.position()); + } + private static native void nglGetConvolutionParameteriv(int target, int pname, IntBuffer params, int params_position); + + public static void glGetConvolutionParameter(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetConvolutionParameterfv(target, pname, params, params.position()); + } + private static native void nglGetConvolutionParameterfv(int target, int pname, FloatBuffer params, int params_position); + + public static void glGetConvolutionFilter(int target, int format, int type, ShortBuffer image) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(image); + nglGetConvolutionFilter(target, format, type, image, image.position() << 1); + } + public static void glGetConvolutionFilter(int target, int format, int type, IntBuffer image) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(image); + nglGetConvolutionFilter(target, format, type, image, image.position() << 2); + } + public static void glGetConvolutionFilter(int target, int format, int type, FloatBuffer image) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(image); + nglGetConvolutionFilter(target, format, type, image, image.position() << 2); + } + public static void glGetConvolutionFilter(int target, int format, int type, ByteBuffer image) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(image); + nglGetConvolutionFilter(target, format, type, image, image.position()); + } + private static native void nglGetConvolutionFilter(int target, int format, int type, Buffer image, int image_position); + public static void glGetConvolutionFilter(int target, int format, int type, int image_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetConvolutionFilterBO(target, format, type, image_buffer_offset); + } + private static native void nglGetConvolutionFilterBO(int target, int format, int type, int image_buffer_offset); + + public static native void glCopyConvolutionFilter2D(int target, int internalformat, int x, int y, int width, int height); + + public static native void glCopyConvolutionFilter1D(int target, int internalformat, int x, int y, int width); + + public static void glConvolutionParameter(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglConvolutionParameteriv(target, pname, params, params.position()); + } + private static native void nglConvolutionParameteriv(int target, int pname, IntBuffer params, int params_position); + + public static native void glConvolutionParameteri(int target, int pname, int params); + + public static void glConvolutionParameter(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglConvolutionParameterfv(target, pname, params, params.position()); + } + private static native void nglConvolutionParameterfv(int target, int pname, FloatBuffer params, int params_position); + + public static native void glConvolutionParameterf(int target, int pname, float params); + + public static void glConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, ShortBuffer image) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(image, format, type, width, height, 1)); + nglConvolutionFilter2D(target, internalformat, width, height, format, type, image, image.position() << 1); + } + public static void glConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, IntBuffer image) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(image, format, type, width, height, 1)); + nglConvolutionFilter2D(target, internalformat, width, height, format, type, image, image.position() << 2); + } + public static void glConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, ByteBuffer image) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(image, format, type, width, height, 1)); + nglConvolutionFilter2D(target, internalformat, width, height, format, type, image, image.position()); + } + private static native void nglConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer image, int image_position); + public static void glConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, int image_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglConvolutionFilter2DBO(target, internalformat, width, height, format, type, image_buffer_offset); + } + private static native void nglConvolutionFilter2DBO(int target, int internalformat, int width, int height, int format, int type, int image_buffer_offset); + + public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, ShortBuffer image) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(image, format, type, width, 1, 1)); + nglConvolutionFilter1D(target, internalformat, width, format, type, image, image.position() << 1); + } + public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, IntBuffer image) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(image, format, type, width, 1, 1)); + nglConvolutionFilter1D(target, internalformat, width, format, type, image, image.position() << 2); + } + public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, FloatBuffer image) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(image, format, type, width, 1, 1)); + nglConvolutionFilter1D(target, internalformat, width, format, type, image, image.position() << 2); + } + public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, ByteBuffer image) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(image, format, type, width, 1, 1)); + nglConvolutionFilter1D(target, internalformat, width, format, type, image, image.position()); + } + private static native void nglConvolutionFilter1D(int target, int internalformat, int width, int format, int type, Buffer image, int image_position); + public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, int image_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglConvolutionFilter1DBO(target, internalformat, width, format, type, image_buffer_offset); + } + private static native void nglConvolutionFilter1DBO(int target, int internalformat, int width, int format, int type, int image_buffer_offset); + + public static void glGetMinmaxParameter(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetMinmaxParameteriv(target, pname, params, params.position()); + } + private static native void nglGetMinmaxParameteriv(int target, int pname, IntBuffer params, int params_position); + + public static void glGetMinmaxParameter(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetMinmaxParameterfv(target, pname, params, params.position()); + } + private static native void nglGetMinmaxParameterfv(int target, int pname, FloatBuffer params, int params_position); + + public static void glGetMinmax(int target, boolean reset, int format, int types, ShortBuffer values) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(values, 4); + nglGetMinmax(target, reset, format, types, values, values.position() << 1); + } + public static void glGetMinmax(int target, boolean reset, int format, int types, IntBuffer values) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(values, 4); + nglGetMinmax(target, reset, format, types, values, values.position() << 2); + } + public static void glGetMinmax(int target, boolean reset, int format, int types, FloatBuffer values) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(values, 4); + nglGetMinmax(target, reset, format, types, values, values.position() << 2); + } + public static void glGetMinmax(int target, boolean reset, int format, int types, ByteBuffer values) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(values, 4); + nglGetMinmax(target, reset, format, types, values, values.position()); + } + private static native void nglGetMinmax(int target, boolean reset, int format, int types, Buffer values, int values_position); + public static void glGetMinmax(int target, boolean reset, int format, int types, int values_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetMinmaxBO(target, reset, format, types, values_buffer_offset); + } + private static native void nglGetMinmaxBO(int target, boolean reset, int format, int types, int values_buffer_offset); + + public static native void glResetMinmax(int target); + + public static native void glMinmax(int target, int internalformat, boolean sink); + + public static void glGetHistogramParameter(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 256); + nglGetHistogramParameteriv(target, pname, params, params.position()); + } + private static native void nglGetHistogramParameteriv(int target, int pname, IntBuffer params, int params_position); + + public static void glGetHistogramParameter(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 256); + nglGetHistogramParameterfv(target, pname, params, params.position()); + } + private static native void nglGetHistogramParameterfv(int target, int pname, FloatBuffer params, int params_position); + public static void glGetHistogram(int target, boolean reset, int format, int type, ShortBuffer values) { GLBufferChecks.ensurePackPBOdisabled(); BufferChecks.checkBuffer(values, 256); @@ -242,227 +824,95 @@ public final class ARBImaging { BufferChecks.checkBuffer(values, 256); nglGetHistogram(target, reset, format, type, values, values.position() << 2); } - private static native void nglGetHistogram(int target, boolean reset, int format, int type, Buffer values, int values_offset); - - public static void glGetHistogram(int target, boolean reset, int format, int type, int buffer_offset) { + public static void glGetHistogram(int target, boolean reset, int format, int type, ByteBuffer values) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(values, 256); + nglGetHistogram(target, reset, format, type, values, values.position()); + } + private static native void nglGetHistogram(int target, boolean reset, int format, int type, Buffer values, int values_position); + public static void glGetHistogram(int target, boolean reset, int format, int type, int values_buffer_offset) { GLBufferChecks.ensurePackPBOenabled(); - nglGetHistogramBO(target, reset, format, type, buffer_offset); + nglGetHistogramBO(target, reset, format, type, values_buffer_offset); } - private static native void nglGetHistogramBO(int target, boolean reset, int format, int type, int buffer_offset); - // --------------------------- + private static native void nglGetHistogramBO(int target, boolean reset, int format, int type, int values_buffer_offset); - public static void glGetHistogramParameter(int target, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params, 256); - nglGetHistogramParameterfv(target, pname, params, params.position()); - } - private static native void nglGetHistogramParameterfv(int target, int pname, FloatBuffer params, int params_offset); + public static native void glResetHistogram(int target); - public static void glGetHistogramParameter(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetHistogramParameteriv(target, pname, params, params.position()); - } - private static native void nglGetHistogramParameteriv(int target, int pname, IntBuffer params, int params_offset); + public static native void glHistogram(int target, int width, int internalformat, boolean sink); - public static native void glMinmax(int target, int internalformat, boolean sink); + public static native void glBlendColor(float red, float green, float blue, float alpha); - public static native void glResetMinmax(int target); + public static native void glBlendEquation(int mode); - // --------------------------- - public static void glGetMinmax(int target, boolean reset, int format, int types, ByteBuffer values) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(values); - nglGetMinmax(target, reset, format, types, values, values.position()); + public static void glGetColorTableParameter(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetColorTableParameterfv(target, pname, params, params.position()); } - public static void glGetMinmax(int target, boolean reset, int format, int types, ShortBuffer values) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(values); - nglGetMinmax(target, reset, format, types, values, values.position() << 1); - } - public static void glGetMinmax(int target, boolean reset, int format, int types, IntBuffer values) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(values); - nglGetMinmax(target, reset, format, types, values, values.position() << 2); - } - public static void glGetMinmax(int target, boolean reset, int format, int types, FloatBuffer values) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(values); - nglGetMinmax(target, reset, format, types, values, values.position() << 2); - } - private static native void nglGetMinmax(int target, boolean reset, int format, int types, Buffer values, int values_offset); + private static native void nglGetColorTableParameterfv(int target, int pname, FloatBuffer params, int params_position); - public static void glGetMinmax(int target, boolean reset, int format, int types, int buffer_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglGetMinmaxBO(target, reset, format, types, buffer_offset); + public static void glGetColorTableParameter(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetColorTableParameteriv(target, pname, params, params.position()); } - private static native void nglGetMinmaxBO(int target, boolean reset, int format, int types, int buffer_offset); - // --------------------------- + private static native void nglGetColorTableParameteriv(int target, int pname, IntBuffer params, int params_position); - public static void glGetMinmaxParameter(int target, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetMinmaxParameterfv(target, pname, params, params.position()); + public static void glGetColorTable(int target, int format, int type, FloatBuffer data) { + BufferChecks.checkBuffer(data, 256); + nglGetColorTable(target, format, type, data, data.position() << 2); } - private static native void nglGetMinmaxParameterfv(int target, int pname, FloatBuffer params, int params_offset); - - public static void glGetMinmaxParameter(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetMinmaxParameteriv(target, pname, params, params.position()); + public static void glGetColorTable(int target, int format, int type, ByteBuffer data) { + BufferChecks.checkBuffer(data, 256); + nglGetColorTable(target, format, type, data, data.position()); } - private static native void nglGetMinmaxParameteriv(int target, int pname, IntBuffer params, int params_offset); + private static native void nglGetColorTable(int target, int format, int type, Buffer data, int data_position); - // --------------------------- - public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, ByteBuffer image) { + public static native void glCopyColorTable(int target, int internalformat, int x, int y, int width); + + public static native void glCopyColorSubTable(int target, int start, int x, int y, int width); + + public static void glColorTableParameter(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglColorTableParameterfv(target, pname, params, params.position()); + } + private static native void nglColorTableParameterfv(int target, int pname, FloatBuffer params, int params_position); + + public static void glColorTableParameter(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglColorTableParameteriv(target, pname, params, params.position()); + } + private static native void nglColorTableParameteriv(int target, int pname, IntBuffer params, int params_position); + + public static void glColorSubTable(int target, int start, int count, int format, int type, FloatBuffer data) { GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1)); - nglConvolutionFilter1D(target, internalformat, width, format, type, image, image.position()); + BufferChecks.checkBuffer(data, 256); + nglColorSubTable(target, start, count, format, type, data, data.position() << 2); } - public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, ShortBuffer image) { + public static void glColorSubTable(int target, int start, int count, int format, int type, ByteBuffer data) { GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1) >> 1); - nglConvolutionFilter1D(target, internalformat, width, format, type, image, image.position()); + BufferChecks.checkBuffer(data, 256); + nglColorSubTable(target, start, count, format, type, data, data.position()); } - public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, IntBuffer image) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1) >> 2); - nglConvolutionFilter1D(target, internalformat, width, format, type, image, image.position()); - } - public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, FloatBuffer image) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1) >> 2); - nglConvolutionFilter1D(target, internalformat, width, format, type, image, image.position()); - } - private static native void nglConvolutionFilter1D(int target, int internalformat, int width, int format, int type, Buffer image, int image_offset); - - public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, int buffer_offset) { + private static native void nglColorSubTable(int target, int start, int count, int format, int type, Buffer data, int data_position); + public static void glColorSubTable(int target, int start, int count, int format, int type, int data_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglConvolutionFilter1DBO(target, internalformat, width, format, type, buffer_offset); + nglColorSubTableBO(target, start, count, format, type, data_buffer_offset); } - private static native void nglConvolutionFilter1DBO(int target, int internalformat, int width, int format, int type, int buffer_offset); - // --------------------------- + private static native void nglColorSubTableBO(int target, int start, int count, int format, int type, int data_buffer_offset); - // --------------------------- - public static void glConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, ByteBuffer image) { + public static void glColorTable(int target, int internalFormat, int width, int format, int type, FloatBuffer data) { GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(format, type, width, height, 1)); - nglConvolutionFilter2D(target, internalformat, width, height, format, type, image, image.position()); + BufferChecks.checkBuffer(data, 256); + nglColorTable(target, internalFormat, width, format, type, data, data.position() << 2); } - public static void glConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, ShortBuffer image) { + public static void glColorTable(int target, int internalFormat, int width, int format, int type, ByteBuffer data) { GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(format, type, width, height, 1) >> 1); - nglConvolutionFilter2D(target, internalformat, width, height, format, type, image, image.position() << 1); + BufferChecks.checkBuffer(data, 256); + nglColorTable(target, internalFormat, width, format, type, data, data.position()); } - public static void glConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, IntBuffer image) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(image, GLBufferChecks.calculateImageStorage(format, type, width, height, 1) >> 2); - nglConvolutionFilter2D(target, internalformat, width, height, format, type, image, image.position() << 2); - } - private static native void nglConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer image, int image_offset); - - public static void glConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, int buffer_offset) { + private static native void nglColorTable(int target, int internalFormat, int width, int format, int type, Buffer data, int data_position); + public static void glColorTable(int target, int internalFormat, int width, int format, int type, int data_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglConvolutionFilter2DBO(target, internalformat, width, height, format, type, buffer_offset); + nglColorTableBO(target, internalFormat, width, format, type, data_buffer_offset); } - private static native void nglConvolutionFilter2DBO(int target, int internalformat, int width, int height, int format, int type, int buffer_offset); - // --------------------------- - - public static native void glConvolutionParameterf(int target, int pname, float params); - - public static void glConvolutionParameter(int target, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglConvolutionParameterfv(target, pname, params, params.position()); - } - private static native void nglConvolutionParameterfv(int target, int pname, FloatBuffer params, int params_offset); - - public static native void glConvolutionParameteri(int target, int pname, int params); - - public static void glConvolutionParameteriv(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglConvolutionParameteriv(target, pname, params, params.position()); - } - private static native void nglConvolutionParameteriv(int target, int pname, IntBuffer params, int params_offset); - - public static native void glCopyConvolutionFilter1D(int target, int internalformat, int x, int y, int width); - - public static native void glCopyConvolutionFilter2D(int target, int internalformat, int x, int y, int width, int height); - - // --------------------------- - public static void glGetConvolutionFilter(int target, int format, int type, ByteBuffer image) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirect(image); - // TODO: check buffer size valid - nglGetConvolutionFilter(target, format, type, image, image.position()); - } - public static void glGetConvolutionFilter(int target, int format, int type, ShortBuffer image) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirect(image); - // TODO: check buffer size valid - nglGetConvolutionFilter(target, format, type, image, image.position() << 1); - } - public static void glGetConvolutionFilter(int target, int format, int type, IntBuffer image) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirect(image); - // TODO: check buffer size valid - nglGetConvolutionFilter(target, format, type, image, image.position() << 2); - } - public static void glGetConvolutionFilter(int target, int format, int type, FloatBuffer image) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirect(image); - // TODO: check buffer size valid - nglGetConvolutionFilter(target, format, type, image, image.position() << 2); - } - private static native void nglGetConvolutionFilter(int target, int format, int type, Buffer image, int image_offset); - - public static void glGetConvolutionFilter(int target, int format, int type, int buffer_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglGetConvolutionFilterBO(target, format, type, buffer_offset); - } - private static native void nglGetConvolutionFilterBO(int target, int format, int type, int buffer_offset); - // --------------------------- - - public static void glGetConvolutionParameter(int target, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetConvolutionParameterfv(target, pname, params, params.position()); - } - private static native void nglGetConvolutionParameterfv(int target, int pname, FloatBuffer params, int params_offset); - - public static void glGetConvolutionParameter(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetConvolutionParameteriv(target, pname, params, params.position()); - } - private static native void nglGetConvolutionParameteriv(int target, int pname, IntBuffer params, int params_offset); - - // --------------------------- - public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer row, Buffer column) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirectBuffer(row); - BufferChecks.checkDirectBuffer(column); - // TODO: check buffer size valid - nglSeparableFilter2D(target, internalformat, width, height, format, type, row, BufferUtils.getOffset(row), column, BufferUtils.getOffset(column)); - } - private static native void nglSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer row, int row_offset, Buffer column, int column_offset); - - public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, int row_offset, int column_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglSeparableFilter2DBO(target, internalformat, width, height, format, type, row_offset, column_offset); - } - private static native void nglSeparableFilter2DBO(int target, int internalformat, int width, int height, int format, int type, int row_offset, int column_offset); - // --------------------------- - - // --------------------------- - public static void glGetSeparableFilter(int target, int format, int type, Buffer row, Buffer column, Buffer span) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirectBuffer(row); - BufferChecks.checkDirectBuffer(column); - BufferChecks.checkDirectBuffer(span); - // TODO: check buffer size valid - nglGetSeparableFilter(target, format, type, row, BufferUtils.getOffset(row), column, BufferUtils.getOffset(column), span, BufferUtils.getOffset(span)); - } - private static native void nglGetSeparableFilter(int target, int format, int type, Buffer row, int row_offset, Buffer column, int column_offset, Buffer span, int span_offset); - - public static void glGetSeparableFilter(int target, int format, int type, int row_offset, int column_offset, int span_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglGetSeparableFilterBO(target, format, type, row_offset, column_offset, span_offset); - } - private static native void nglGetSeparableFilterBO(int target, int format, int type, int row_offset, int column_offset, int span_offset); - // --------------------------- + private static native void nglColorTableBO(int target, int internalFormat, int width, int format, int type, int data_buffer_offset); } - diff --git a/src/java/org/lwjgl/opengl/ARBMatrixPalette.java b/src/java/org/lwjgl/opengl/ARBMatrixPalette.java index 4a7c4e1c..d773c48b 100644 --- a/src/java/org/lwjgl/opengl/ARBMatrixPalette.java +++ b/src/java/org/lwjgl/opengl/ARBMatrixPalette.java @@ -1,109 +1,67 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBMatrixPalette { - - public static final int GL_MATRIX_PALETTE_ARB = 0x8840; - public static final int GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = 0x8841; - public static final int GL_MAX_PALETTE_MATRICES_ARB = 0x8842; - public static final int GL_CURRENT_PALETTE_MATRIX_ARB = 0x8843; - public static final int GL_MATRIX_INDEX_ARRAY_ARB = 0x8844; - public static final int GL_CURRENT_MATRIX_INDEX_ARB = 0x8845; - public static final int GL_MATRIX_INDEX_ARRAY_SIZE_ARB = 0x8846; - public static final int GL_MATRIX_INDEX_ARRAY_TYPE_ARB = 0x8847; - public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_ARB = 0x8848; public static final int GL_MATRIX_INDEX_ARRAY_POINTER_ARB = 0x8849; + public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_ARB = 0x8848; + public static final int GL_MATRIX_INDEX_ARRAY_TYPE_ARB = 0x8847; + public static final int GL_MATRIX_INDEX_ARRAY_SIZE_ARB = 0x8846; + public static final int GL_CURRENT_MATRIX_INDEX_ARB = 0x8845; + public static final int GL_MATRIX_INDEX_ARRAY_ARB = 0x8844; + public static final int GL_CURRENT_PALETTE_MATRIX_ARB = 0x8843; + public static final int GL_MAX_PALETTE_MATRICES_ARB = 0x8842; + public static final int GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = 0x8841; + public static final int GL_MATRIX_PALETTE_ARB = 0x8840; private ARBMatrixPalette() { } static native void initNativeStubs() throws LWJGLException; - public static native void glCurrentPaletteMatrixARB(int index); - - public static void glMatrixIndexPointerARB(int size, int stride, ByteBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglMatrixIndexPointerARB(size, GL11.GL_UNSIGNED_BYTE, stride, pPointer, pPointer.position()); + public static void glMatrixIndexuARB(IntBuffer pIndices) { + BufferChecks.checkDirect(pIndices); + nglMatrixIndexuivARB((pIndices.remaining()), pIndices, pIndices.position()); } + private static native void nglMatrixIndexuivARB(int size, IntBuffer pIndices, int pIndices_position); - public static void glMatrixIndexPointerARB(int size, int stride, ShortBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglMatrixIndexPointerARB(size, GL11.GL_UNSIGNED_SHORT, stride, pPointer, pPointer.position() << 1); + public static void glMatrixIndexuARB(ShortBuffer pIndices) { + BufferChecks.checkDirect(pIndices); + nglMatrixIndexusvARB((pIndices.remaining()), pIndices, pIndices.position()); } - - public static void glMatrixIndexPointerARB(int size, int stride, IntBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglMatrixIndexPointerARB(size, GL11.GL_UNSIGNED_INT, stride, pPointer, pPointer.position() << 2); - } - - private static native void nglMatrixIndexPointerARB(int size, int type, int stride, Buffer pPointer, int pPointer_offset); - - public static void glMatrixIndexPointerARB(int size, int type, int stride, int buffer_offset) { - GLBufferChecks.ensureArrayVBOenabled(); - nglMatrixIndexPointerARBVBO(size, type, stride, buffer_offset); - } - - private static native void nglMatrixIndexPointerARBVBO(int size, int type, int stride, int buffer_offset); + private static native void nglMatrixIndexusvARB(int size, ShortBuffer pIndices, int pIndices_position); public static void glMatrixIndexuARB(ByteBuffer pIndices) { BufferChecks.checkDirect(pIndices); - nglMatrixIndexubvARB(pIndices.remaining(), pIndices, pIndices.position()); + nglMatrixIndexubvARB((pIndices.remaining()), pIndices, pIndices.position()); } + private static native void nglMatrixIndexubvARB(int size, ByteBuffer pIndices, int pIndices_position); - private static native void nglMatrixIndexubvARB(int size, ByteBuffer pIndices, int pIndices_offset); - - public static void glMatrixIndexuARB(IntBuffer piIndices) { - BufferChecks.checkDirect(piIndices); - nglMatrixIndexuivARB(piIndices.remaining(), piIndices, piIndices.position()); + public static void glMatrixIndexPointerARB(int size, int stride, IntBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglMatrixIndexPointerARB(size, GL11.GL_UNSIGNED_INT, stride, pPointer, pPointer.position() << 2); } - - private static native void nglMatrixIndexuivARB(int size, IntBuffer piIndices, int piIndices_offset); - - public static void glMatrixIndexuARB(ShortBuffer psIndices) { - BufferChecks.checkDirect(psIndices); - nglMatrixIndexusvARB(psIndices.remaining(), psIndices, psIndices.position()); + public static void glMatrixIndexPointerARB(int size, int stride, ByteBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglMatrixIndexPointerARB(size, GL11.GL_UNSIGNED_BYTE, stride, pPointer, pPointer.position()); } + public static void glMatrixIndexPointerARB(int size, int stride, ShortBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglMatrixIndexPointerARB(size, GL11.GL_UNSIGNED_SHORT, stride, pPointer, pPointer.position() << 1); + } + private static native void nglMatrixIndexPointerARB(int size, int type, int stride, Buffer pPointer, int pPointer_position); + public static void glMatrixIndexPointerARB(int size, int type, int stride, int pPointer_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglMatrixIndexPointerARBBO(size, type, stride, pPointer_buffer_offset); + } + private static native void nglMatrixIndexPointerARBBO(int size, int type, int stride, int pPointer_buffer_offset); - private static native void nglMatrixIndexusvARB(int size, ShortBuffer psIndices, int psIndices_offset); + public static native void glCurrentPaletteMatrixARB(int index); } diff --git a/src/java/org/lwjgl/opengl/ARBMultisample.java b/src/java/org/lwjgl/opengl/ARBMultisample.java index bd5e0f41..0f1062be 100644 --- a/src/java/org/lwjgl/opengl/ARBMultisample.java +++ b/src/java/org/lwjgl/opengl/ARBMultisample.java @@ -1,49 +1,21 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBMultisample { - - public static final int GL_MULTISAMPLE_ARB = 0x809D; - public static final int GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809E; - public static final int GL_SAMPLE_ALPHA_TO_ONE_ARB = 0x809F; - public static final int GL_SAMPLE_COVERAGE_ARB = 0x80A0; - public static final int GL_SAMPLE_BUFFERS_ARB = 0x80A8; - public static final int GL_SAMPLES_ARB = 0x80A9; - public static final int GL_SAMPLE_COVERAGE_VALUE_ARB = 0x80AA; - public static final int GL_SAMPLE_COVERAGE_INVERT_ARB = 0x80AB; public static final int GL_MULTISAMPLE_BIT_ARB = 0x20000000; + public static final int GL_SAMPLE_COVERAGE_INVERT_ARB = 0x80ab; + public static final int GL_SAMPLE_COVERAGE_VALUE_ARB = 0x80aa; + public static final int GL_SAMPLES_ARB = 0x80a9; + public static final int GL_SAMPLE_BUFFERS_ARB = 0x80a8; + public static final int GL_SAMPLE_COVERAGE_ARB = 0x80a0; + public static final int GL_SAMPLE_ALPHA_TO_ONE_ARB = 0x809f; + public static final int GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809e; + public static final int GL_MULTISAMPLE_ARB = 0x809d; private ARBMultisample() { } diff --git a/src/java/org/lwjgl/opengl/ARBMultitexture.java b/src/java/org/lwjgl/opengl/ARBMultitexture.java index 98d22cee..ecc9689f 100644 --- a/src/java/org/lwjgl/opengl/ARBMultitexture.java +++ b/src/java/org/lwjgl/opengl/ARBMultitexture.java @@ -1,106 +1,78 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBMultitexture { - - public static final int GL_TEXTURE0_ARB = 0x84C0; - public static final int GL_TEXTURE1_ARB = 0x84C1; - public static final int GL_TEXTURE2_ARB = 0x84C2; - public static final int GL_TEXTURE3_ARB = 0x84C3; - public static final int GL_TEXTURE4_ARB = 0x84C4; - public static final int GL_TEXTURE5_ARB = 0x84C5; - public static final int GL_TEXTURE6_ARB = 0x84C6; - public static final int GL_TEXTURE7_ARB = 0x84C7; - public static final int GL_TEXTURE8_ARB = 0x84C8; - public static final int GL_TEXTURE9_ARB = 0x84C9; - public static final int GL_TEXTURE10_ARB = 0x84CA; - public static final int GL_TEXTURE11_ARB = 0x84CB; - public static final int GL_TEXTURE12_ARB = 0x84CC; - public static final int GL_TEXTURE13_ARB = 0x84CD; - public static final int GL_TEXTURE14_ARB = 0x84CE; - public static final int GL_TEXTURE15_ARB = 0x84CF; - public static final int GL_TEXTURE16_ARB = 0x84D0; - public static final int GL_TEXTURE17_ARB = 0x84D1; - public static final int GL_TEXTURE18_ARB = 0x84D2; - public static final int GL_TEXTURE19_ARB = 0x84D3; - public static final int GL_TEXTURE20_ARB = 0x84D4; - public static final int GL_TEXTURE21_ARB = 0x84D5; - public static final int GL_TEXTURE22_ARB = 0x84D6; - public static final int GL_TEXTURE23_ARB = 0x84D7; - public static final int GL_TEXTURE24_ARB = 0x84D8; - public static final int GL_TEXTURE25_ARB = 0x84D9; - public static final int GL_TEXTURE26_ARB = 0x84DA; - public static final int GL_TEXTURE27_ARB = 0x84DB; - public static final int GL_TEXTURE28_ARB = 0x84DC; - public static final int GL_TEXTURE29_ARB = 0x84DD; - public static final int GL_TEXTURE30_ARB = 0x84DE; - public static final int GL_TEXTURE31_ARB = 0x84DF; - public static final int GL_ACTIVE_TEXTURE_ARB = 0x84E0; - public static final int GL_CLIENT_ACTIVE_TEXTURE_ARB = 0x84E1; - public static final int GL_MAX_TEXTURE_UNITS_ARB = 0x84E2; + public static final int GL_MAX_TEXTURE_UNITS_ARB = 0x84e2; + public static final int GL_CLIENT_ACTIVE_TEXTURE_ARB = 0x84e1; + public static final int GL_ACTIVE_TEXTURE_ARB = 0x84e0; + public static final int GL_TEXTURE31_ARB = 0x84df; + public static final int GL_TEXTURE30_ARB = 0x84de; + public static final int GL_TEXTURE29_ARB = 0x84dd; + public static final int GL_TEXTURE28_ARB = 0x84dc; + public static final int GL_TEXTURE27_ARB = 0x84db; + public static final int GL_TEXTURE26_ARB = 0x84da; + public static final int GL_TEXTURE25_ARB = 0x84d9; + public static final int GL_TEXTURE24_ARB = 0x84d8; + public static final int GL_TEXTURE23_ARB = 0x84d7; + public static final int GL_TEXTURE22_ARB = 0x84d6; + public static final int GL_TEXTURE21_ARB = 0x84d5; + public static final int GL_TEXTURE20_ARB = 0x84d4; + public static final int GL_TEXTURE19_ARB = 0x84d3; + public static final int GL_TEXTURE18_ARB = 0x84d2; + public static final int GL_TEXTURE17_ARB = 0x84d1; + public static final int GL_TEXTURE16_ARB = 0x84d0; + public static final int GL_TEXTURE15_ARB = 0x84cf; + public static final int GL_TEXTURE14_ARB = 0x84ce; + public static final int GL_TEXTURE13_ARB = 0x84cd; + public static final int GL_TEXTURE12_ARB = 0x84cc; + public static final int GL_TEXTURE11_ARB = 0x84cb; + public static final int GL_TEXTURE10_ARB = 0x84ca; + public static final int GL_TEXTURE9_ARB = 0x84c9; + public static final int GL_TEXTURE8_ARB = 0x84c8; + public static final int GL_TEXTURE7_ARB = 0x84c7; + public static final int GL_TEXTURE6_ARB = 0x84c6; + public static final int GL_TEXTURE5_ARB = 0x84c5; + public static final int GL_TEXTURE4_ARB = 0x84c4; + public static final int GL_TEXTURE3_ARB = 0x84c3; + public static final int GL_TEXTURE2_ARB = 0x84c2; + public static final int GL_TEXTURE1_ARB = 0x84c1; + public static final int GL_TEXTURE0_ARB = 0x84c0; private ARBMultitexture() { } static native void initNativeStubs() throws LWJGLException; - public static native void glClientActiveTextureARB(int texture); - - public static native void glActiveTextureARB(int texture); - - public static native void glMultiTexCoord1fARB(int target, float s); - - public static native void glMultiTexCoord1iARB(int target, int s); - - public static native void glMultiTexCoord1sARB(int target, short s); - - public static native void glMultiTexCoord2fARB(int target, float s, float t); - - public static native void glMultiTexCoord2iARB(int target, int s, int t); - - public static native void glMultiTexCoord2sARB(int target, short s, short t); - - public static native void glMultiTexCoord3fARB(int target, float s, float t, float r); - - public static native void glMultiTexCoord3iARB(int target, int s, int t, int r); - - public static native void glMultiTexCoord3sARB(int target, short s, short t, short r); - - public static native void glMultiTexCoord4fARB(int target, float s, float t, float r, float q); + public static native void glMultiTexCoord4sARB(int target, short s, short t, short r, short q); public static native void glMultiTexCoord4iARB(int target, int s, int t, int r, int q); - public static native void glMultiTexCoord4sARB(int target, short s, short t, short r, short q); + public static native void glMultiTexCoord4fARB(int target, float s, float t, float r, float q); + + public static native void glMultiTexCoord3sARB(int target, short s, short t, short r); + + public static native void glMultiTexCoord3iARB(int target, int s, int t, int r); + + public static native void glMultiTexCoord3fARB(int target, float s, float t, float r); + + public static native void glMultiTexCoord2sARB(int target, short s, short t); + + public static native void glMultiTexCoord2iARB(int target, int s, int t); + + public static native void glMultiTexCoord2fARB(int target, float s, float t); + + public static native void glMultiTexCoord1sARB(int target, short s); + + public static native void glMultiTexCoord1iARB(int target, int s); + + public static native void glMultiTexCoord1fARB(int target, float s); + + public static native void glActiveTextureARB(int texture); + + public static native void glClientActiveTextureARB(int texture); } diff --git a/src/java/org/lwjgl/opengl/ARBOcclusionQuery.java b/src/java/org/lwjgl/opengl/ARBOcclusionQuery.java index 431cccdb..5304f7ab 100644 --- a/src/java/org/lwjgl/opengl/ARBOcclusionQuery.java +++ b/src/java/org/lwjgl/opengl/ARBOcclusionQuery.java @@ -1,116 +1,56 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBOcclusionQuery { - - /* - * Accepted by the parameter of BeginQueryARB, EndQueryARB, - * and GetQueryivARB: - */ - public static final int GL_SAMPLES_PASSED_ARB = 0x8914; - - /* - Accepted by the parameter of GetQueryivARB: - */ - public static final int GL_QUERY_COUNTER_BITS_ARB = 0x8864; - public static final int GL_CURRENT_QUERY_ARB = 0x8865; - - /* - Accepted by the parameter of GetQueryObjectivARB and - GetQueryObjectuivARB: - */ - public static final int GL_QUERY_RESULT_ARB = 0x8866; public static final int GL_QUERY_RESULT_AVAILABLE_ARB = 0x8867; + public static final int GL_QUERY_RESULT_ARB = 0x8866; + public static final int GL_CURRENT_QUERY_ARB = 0x8865; + public static final int GL_QUERY_COUNTER_BITS_ARB = 0x8864; + public static final int GL_SAMPLES_PASSED_ARB = 0x8914; private ARBOcclusionQuery() { } static native void initNativeStubs() throws LWJGLException; - // --------------------------- - public static void glGenQueriesARB(IntBuffer ids) { - BufferChecks.checkDirect(ids); - nglGenQueriesARB(ids.remaining(), ids, ids.position()); + public static void glGetQueryObjectuARB(int id, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetQueryObjectuivARB(id, pname, params, params.position()); } + private static native void nglGetQueryObjectuivARB(int id, int pname, IntBuffer params, int params_position); - private static native void nglGenQueriesARB(int n, IntBuffer ids, int idsOffset); - // --------------------------- - - // --------------------------- - public static void glDeleteQueriesARB(IntBuffer ids) { - BufferChecks.checkDirect(ids); - nglDeleteQueriesARB(ids.remaining(), ids, ids.position()); + public static void glGetQueryObjectARB(int id, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetQueryObjectivARB(id, pname, params, params.position()); } + private static native void nglGetQueryObjectivARB(int id, int pname, IntBuffer params, int params_position); - private static native void nglDeleteQueriesARB(int n, IntBuffer ids, int idsOffset); - // --------------------------- - - public static native boolean glIsQueryARB(int id); - - public static native void glBeginQueryARB(int target, int id); + public static void glGetQueryARB(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetQueryivARB(target, pname, params, params.position()); + } + private static native void nglGetQueryivARB(int target, int pname, IntBuffer params, int params_position); public static native void glEndQueryARB(int target); - // --------------------------- - public static void glGetQueryARB(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetQueryivARB(target, pname, params, params.position()); + public static native void glBeginQueryARB(int target, int id); + + public static native boolean glIsQueryARB(int id); + + public static void glDeleteQueriesARB(IntBuffer ids) { + BufferChecks.checkDirect(ids); + nglDeleteQueriesARB((ids.remaining()), ids, ids.position()); } + private static native void nglDeleteQueriesARB(int n, IntBuffer ids, int ids_position); - private static native void nglGetQueryivARB(int target, int pname, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetQueryObjectiARB(int id, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetQueryObjectivARB(id, pname, params, params.position()); + public static void glGenQueriesARB(IntBuffer ids) { + BufferChecks.checkDirect(ids); + nglGenQueriesARB((ids.remaining()), ids, ids.position()); } - - private static native void nglGetQueryObjectivARB(int id, int pname, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetQueryObjectuiARB(int id, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetQueryObjectuivARB(id, pname, params, params.position()); - } - - private static native void nglGetQueryObjectuivARB(int id, int pname, IntBuffer params, int paramsOffset); - // --------------------------- - + private static native void nglGenQueriesARB(int n, IntBuffer ids, int ids_position); } diff --git a/src/java/org/lwjgl/opengl/ARBPixelBufferObject.java b/src/java/org/lwjgl/opengl/ARBPixelBufferObject.java index 0d461bed..81208dd2 100644 --- a/src/java/org/lwjgl/opengl/ARBPixelBufferObject.java +++ b/src/java/org/lwjgl/opengl/ARBPixelBufferObject.java @@ -1,52 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; + public final class ARBPixelBufferObject extends ARBBufferObject { - - /* - * Accepted by the parameters of BindBuffer, BufferData, - * BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData, - * GetBufferParameteriv, and GetBufferPointerv: - */ - public static final int GL_PIXEL_PACK_BUFFER_ARB = 0x88EB; - public static final int GL_PIXEL_UNPACK_BUFFER_ARB = 0x88EC; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ - public static final int PIXEL_PACK_BUFFER_BINDING_ARB = 0x88ED; - public static final int PIXEL_UNPACK_BUFFER_BINDING_ARB = 0x88EF; + public static final int PIXEL_UNPACK_BUFFER_BINDING_ARB = 0x88ef; + public static final int PIXEL_PACK_BUFFER_BINDING_ARB = 0x88ed; + public static final int GL_PIXEL_UNPACK_BUFFER_ARB = 0x88ec; + public static final int GL_PIXEL_PACK_BUFFER_ARB = 0x88eb; private ARBPixelBufferObject() { } diff --git a/src/java/org/lwjgl/opengl/ARBPointParameters.java b/src/java/org/lwjgl/opengl/ARBPointParameters.java index 4a51ed6f..dc48be34 100644 --- a/src/java/org/lwjgl/opengl/ARBPointParameters.java +++ b/src/java/org/lwjgl/opengl/ARBPointParameters.java @@ -1,59 +1,27 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.FloatBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBPointParameters { - - public static final int GL_POINT_SIZE_MIN_ARB = 0x8126; - public static final int GL_POINT_SIZE_MAX_ARB = 0x8127; - public static final int GL_POINT_FADE_THRESHOLD_SIZE_ARB = 0x8128; public static final int GL_POINT_DISTANCE_ATTENUATION_ARB = 0x8129; + public static final int GL_POINT_FADE_THRESHOLD_SIZE_ARB = 0x8128; + public static final int GL_POINT_SIZE_MAX_ARB = 0x8127; + public static final int GL_POINT_SIZE_MIN_ARB = 0x8126; private ARBPointParameters() { } static native void initNativeStubs() throws LWJGLException; - public static native void glPointParameterfARB(int pname, float param); - public static void glPointParameterARB(int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); + BufferChecks.checkBuffer(pfParams, 4); nglPointParameterfvARB(pname, pfParams, pfParams.position()); } + private static native void nglPointParameterfvARB(int pname, FloatBuffer pfParams, int pfParams_position); - private static native void nglPointParameterfvARB(int pname, FloatBuffer pfParams, int pfParams_offset); + public static native void glPointParameterfARB(int pname, float param); } diff --git a/src/java/org/lwjgl/opengl/ARBPointSprite.java b/src/java/org/lwjgl/opengl/ARBPointSprite.java index 3a1bd2ce..3c42ddc6 100644 --- a/src/java/org/lwjgl/opengl/ARBPointSprite.java +++ b/src/java/org/lwjgl/opengl/ARBPointSprite.java @@ -1,53 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; + public final class ARBPointSprite { - - /* - * Accepted by the parameter of Enable, Disable, and IsEnabled, by - * the parameter of GetBooleanv, GetIntegerv, GetFloatv, and - * GetDoublev, and by the parameter of TexEnvi, TexEnviv, - * TexEnvf, TexEnvfv, GetTexEnviv, and GetTexEnvfv: - */ - public static final int GL_POINT_SPRITE_ARB = 0x8861; - - /* - * When the parameter of TexEnvf, TexEnvfv, TexEnvi, TexEnviv, - * GetTexEnvfv, or GetTexEnviv is POINT_SPRITE_ARB, then the value of - * may be: - */ public static final int GL_COORD_REPLACE_ARB = 0x8862; + public static final int GL_POINT_SPRITE_ARB = 0x8861; private ARBPointSprite() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBProgram.java b/src/java/org/lwjgl/opengl/ARBProgram.java index 3e01d877..bd10f966 100644 --- a/src/java/org/lwjgl/opengl/ARBProgram.java +++ b/src/java/org/lwjgl/opengl/ARBProgram.java @@ -1,237 +1,137 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -import java.nio.Buffer; -import java.nio.BufferUnderflowException; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; - -import org.lwjgl.BufferChecks; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; -public abstract class ARBProgram { - - /* - * Accepted by the parameter of ProgramStringARB: - */ - public static final int GL_PROGRAM_FORMAT_ASCII_ARB = 0x8875; - - /* - * Accepted by the parameter of GetProgramivARB: - */ - public static final int GL_PROGRAM_LENGTH_ARB = 0x8627; - public static final int GL_PROGRAM_FORMAT_ARB = 0x8876; - public static final int GL_PROGRAM_BINDING_ARB = 0x8677; - public static final int GL_PROGRAM_INSTRUCTIONS_ARB = 0x88A0; - public static final int GL_MAX_PROGRAM_INSTRUCTIONS_ARB = 0x88A1; - public static final int GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A2; - public static final int GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A3; - public static final int GL_PROGRAM_TEMPORARIES_ARB = 0x88A4; - public static final int GL_MAX_PROGRAM_TEMPORARIES_ARB = 0x88A5; - public static final int GL_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A6; - public static final int GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A7; - public static final int GL_PROGRAM_PARAMETERS_ARB = 0x88A8; - public static final int GL_MAX_PROGRAM_PARAMETERS_ARB = 0x88A9; - public static final int GL_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AA; - public static final int GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AB; - public static final int GL_PROGRAM_ATTRIBS_ARB = 0x88AC; - public static final int GL_MAX_PROGRAM_ATTRIBS_ARB = 0x88AD; - public static final int GL_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AE; - public static final int GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AF; - public static final int GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = 0x88B4; - public static final int GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = 0x88B5; - public static final int GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = 0x88B6; - - /* - * Accepted by the parameter of GetProgramStringARB: - */ - public static final int GL_PROGRAM_STRING_ARB = 0x8628; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ - public static final int GL_PROGRAM_ERROR_POSITION_ARB = 0x864B; - public static final int GL_CURRENT_MATRIX_ARB = 0x8641; - public static final int GL_TRANSPOSE_CURRENT_MATRIX_ARB = 0x88B7; - public static final int GL_CURRENT_MATRIX_STACK_DEPTH_ARB = 0x8640; - public static final int GL_MAX_PROGRAM_MATRICES_ARB = 0x862F; - public static final int GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862E; - - /* - * Accepted by the parameter of GetString: - */ +public class ARBProgram { + public static final int GL_MATRIX31_ARB = 0x88df; + public static final int GL_MATRIX30_ARB = 0x88de; + public static final int GL_MATRIX29_ARB = 0x88dd; + public static final int GL_MATRIX28_ARB = 0x88dc; + public static final int GL_MATRIX27_ARB = 0x88db; + public static final int GL_MATRIX26_ARB = 0x88da; + public static final int GL_MATRIX25_ARB = 0x88d9; + public static final int GL_MATRIX24_ARB = 0x88d8; + public static final int GL_MATRIX23_ARB = 0x88d7; + public static final int GL_MATRIX22_ARB = 0x88d6; + public static final int GL_MATRIX21_ARB = 0x88d5; + public static final int GL_MATRIX20_ARB = 0x88d4; + public static final int GL_MATRIX19_ARB = 0x88d3; + public static final int GL_MATRIX18_ARB = 0x88d2; + public static final int GL_MATRIX17_ARB = 0x88d1; + public static final int GL_MATRIX16_ARB = 0x88d0; + public static final int GL_MATRIX15_ARB = 0x88cf; + public static final int GL_MATRIX14_ARB = 0x88ce; + public static final int GL_MATRIX13_ARB = 0x88cd; + public static final int GL_MATRIX12_ARB = 0x88cc; + public static final int GL_MATRIX11_ARB = 0x88cb; + public static final int GL_MATRIX10_ARB = 0x88ca; + public static final int GL_MATRIX9_ARB = 0x88c9; + public static final int GL_MATRIX8_ARB = 0x88c8; + public static final int GL_MATRIX7_ARB = 0x88c7; + public static final int GL_MATRIX6_ARB = 0x88c6; + public static final int GL_MATRIX5_ARB = 0x88c5; + public static final int GL_MATRIX4_ARB = 0x88c4; + public static final int GL_MATRIX3_ARB = 0x88c3; + public static final int GL_MATRIX2_ARB = 0x88c2; + public static final int GL_MATRIX1_ARB = 0x88c1; + public static final int GL_MATRIX0_ARB = 0x88c0; public static final int GL_PROGRAM_ERROR_STRING_ARB = 0x8874; - - /* - * Accepted by the parameter of MatrixMode: - */ - public static final int GL_MATRIX0_ARB = 0x88C0; - public static final int GL_MATRIX1_ARB = 0x88C1; - public static final int GL_MATRIX2_ARB = 0x88C2; - public static final int GL_MATRIX3_ARB = 0x88C3; - public static final int GL_MATRIX4_ARB = 0x88C4; - public static final int GL_MATRIX5_ARB = 0x88C5; - public static final int GL_MATRIX6_ARB = 0x88C6; - public static final int GL_MATRIX7_ARB = 0x88C7; - public static final int GL_MATRIX8_ARB = 0x88C8; - public static final int GL_MATRIX9_ARB = 0x88C9; - public static final int GL_MATRIX10_ARB = 0x88CA; - public static final int GL_MATRIX11_ARB = 0x88CB; - public static final int GL_MATRIX12_ARB = 0x88CC; - public static final int GL_MATRIX13_ARB = 0x88CD; - public static final int GL_MATRIX14_ARB = 0x88CE; - public static final int GL_MATRIX15_ARB = 0x88CF; - public static final int GL_MATRIX16_ARB = 0x88D0; - public static final int GL_MATRIX17_ARB = 0x88D1; - public static final int GL_MATRIX18_ARB = 0x88D2; - public static final int GL_MATRIX19_ARB = 0x88D3; - public static final int GL_MATRIX20_ARB = 0x88D4; - public static final int GL_MATRIX21_ARB = 0x88D5; - public static final int GL_MATRIX22_ARB = 0x88D6; - public static final int GL_MATRIX23_ARB = 0x88D7; - public static final int GL_MATRIX24_ARB = 0x88D8; - public static final int GL_MATRIX25_ARB = 0x88D9; - public static final int GL_MATRIX26_ARB = 0x88DA; - public static final int GL_MATRIX27_ARB = 0x88DB; - public static final int GL_MATRIX28_ARB = 0x88DC; - public static final int GL_MATRIX29_ARB = 0x88DD; - public static final int GL_MATRIX30_ARB = 0x88DE; - public static final int GL_MATRIX31_ARB = 0x88DF; + public static final int GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862e; + public static final int GL_MAX_PROGRAM_MATRICES_ARB = 0x862f; + public static final int GL_CURRENT_MATRIX_STACK_DEPTH_ARB = 0x8640; + public static final int GL_TRANSPOSE_CURRENT_MATRIX_ARB = 0x88b7; + public static final int GL_CURRENT_MATRIX_ARB = 0x8641; + public static final int GL_PROGRAM_ERROR_POSITION_ARB = 0x864b; + public static final int GL_PROGRAM_STRING_ARB = 0x8628; + public static final int GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = 0x88b6; + public static final int GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = 0x88b5; + public static final int GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = 0x88b4; + public static final int GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88af; + public static final int GL_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88ae; + public static final int GL_MAX_PROGRAM_ATTRIBS_ARB = 0x88ad; + public static final int GL_PROGRAM_ATTRIBS_ARB = 0x88ac; + public static final int GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88ab; + public static final int GL_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88aa; + public static final int GL_MAX_PROGRAM_PARAMETERS_ARB = 0x88a9; + public static final int GL_PROGRAM_PARAMETERS_ARB = 0x88a8; + public static final int GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88a7; + public static final int GL_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88a6; + public static final int GL_MAX_PROGRAM_TEMPORARIES_ARB = 0x88a5; + public static final int GL_PROGRAM_TEMPORARIES_ARB = 0x88a4; + public static final int GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88a3; + public static final int GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88a2; + public static final int GL_MAX_PROGRAM_INSTRUCTIONS_ARB = 0x88a1; + public static final int GL_PROGRAM_INSTRUCTIONS_ARB = 0x88a0; + public static final int GL_PROGRAM_BINDING_ARB = 0x8677; + public static final int GL_PROGRAM_FORMAT_ARB = 0x8876; + public static final int GL_PROGRAM_LENGTH_ARB = 0x8627; + public static final int GL_PROGRAM_FORMAT_ASCII_ARB = 0x8875; static native void initNativeStubs() throws LWJGLException; - // --------------------------- - public static void glProgramStringARB(int target, int format, ByteBuffer string) { - BufferChecks.checkDirect(string); - nglProgramStringARB(target, format, string.remaining(), string, string.position()); - } + public static native boolean glIsProgramARB(int program); - private static native void nglProgramStringARB(int target, int format, int length, Buffer string, int stringOffset); - // --------------------------- - - public static native void glBindProgramARB(int target, int program); - - // --------------------------- - public static void glDeleteProgramsARB(IntBuffer programs) { - BufferChecks.checkDirect(programs); - nglDeleteProgramsARB(programs.remaining(), programs, programs.position()); - } - - private static native void nglDeleteProgramsARB(int n, IntBuffer programs, int programsOffset); - // --------------------------- - - // --------------------------- - public static void glGenProgramsARB(IntBuffer programs) { - BufferChecks.checkDirect(programs); - nglGenProgramsARB(programs.remaining(), programs, programs.position()); - } - - private static native void nglGenProgramsARB(int n, IntBuffer programs, int programsOffset); - // --------------------------- - - public static native void glProgramEnvParameter4fARB(int target, int index, float x, float y, float z, float w); - - private static void checkProgramEnv(int index, Buffer buf) { - if ( index < 0 ) { - throw new IllegalArgumentException(" must be greater than or equal to 0."); - } - if ( buf.remaining() < 4 ) { - throw new BufferUnderflowException(); - } - } - - // --------------------------- - public static void glProgramEnvParameterARB(int target, int index, FloatBuffer params) { - BufferChecks.checkDirect(params); - checkProgramEnv(index, params); - nglProgramEnvParameter4fvARB(target, index, params, params.position()); - } - - private static native void nglProgramEnvParameter4fvARB(int target, int index, FloatBuffer params, int paramsOffset); - // --------------------------- - - public static native void glProgramLocalParameter4fARB(int target, int index, float x, float y, float z, float w); - - // --------------------------- - public static void glProgramLocalParameterARB(int target, int index, FloatBuffer params) { - BufferChecks.checkDirect(params); - checkProgramEnv(index, params); - nglProgramLocalParameter4fvARB(target, index, params, params.position()); - } - - private static native void nglProgramLocalParameter4fvARB(int target, int index, FloatBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetProgramEnvParameterARB(int target, int index, FloatBuffer params) { - BufferChecks.checkDirect(params); - checkProgramEnv(index, params); - nglGetProgramEnvParameterfvARB(target, index, params, params.position()); - } - - private static native void nglGetProgramEnvParameterfvARB(int target, int index, FloatBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetProgramLocalParameterARB(int target, int index, FloatBuffer params) { - BufferChecks.checkDirect(params); - checkProgramEnv(index, params); - nglGetProgramLocalParameterfvARB(target, index, params, params.position()); - } - - private static native void nglGetProgramLocalParameterfvARB(int target, int index, FloatBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetProgramARB(int target, int parameterName, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetProgramivARB(target, parameterName, params, params.position()); - } - - private static native void nglGetProgramivARB(int target, int parameterName, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- public static void glGetProgramStringARB(int target, int parameterName, ByteBuffer paramString) { BufferChecks.checkDirect(paramString); nglGetProgramStringARB(target, parameterName, paramString, paramString.position()); } + private static native void nglGetProgramStringARB(int target, int parameterName, Buffer paramString, int paramString_position); - private static native void nglGetProgramStringARB(int target, int parameterName, Buffer paramString, int paramStringOffset); - // --------------------------- + public static void glGetProgramARB(int target, int parameterName, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetProgramivARB(target, parameterName, params, params.position()); + } + private static native void nglGetProgramivARB(int target, int parameterName, IntBuffer params, int params_position); - public static native boolean glIsProgramARB(int program); + public static void glGetProgramLocalParameterARB(int target, int index, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetProgramLocalParameterfvARB(target, index, params, params.position()); + } + private static native void nglGetProgramLocalParameterfvARB(int target, int index, FloatBuffer params, int params_position); + public static void glGetProgramEnvParameterARB(int target, int index, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetProgramEnvParameterfvARB(target, index, params, params.position()); + } + private static native void nglGetProgramEnvParameterfvARB(int target, int index, FloatBuffer params, int params_position); + + public static void glProgramLocalParameter4ARB(int target, int index, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglProgramLocalParameter4fvARB(target, index, params, params.position()); + } + private static native void nglProgramLocalParameter4fvARB(int target, int index, FloatBuffer params, int params_position); + + public static native void glProgramLocalParameter4fARB(int target, int index, float x, float y, float z, float w); + + public static void glProgramEnvParameter4ARB(int target, int index, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglProgramEnvParameter4fvARB(target, index, params, params.position()); + } + private static native void nglProgramEnvParameter4fvARB(int target, int index, FloatBuffer params, int params_position); + + public static native void glProgramEnvParameter4fARB(int target, int index, float x, float y, float z, float w); + + public static void glGenProgramsARB(IntBuffer programs) { + BufferChecks.checkDirect(programs); + nglGenProgramsARB((programs.remaining()), programs, programs.position()); + } + private static native void nglGenProgramsARB(int n, IntBuffer programs, int programs_position); + + public static void glDeleteProgramsARB(IntBuffer programs) { + BufferChecks.checkDirect(programs); + nglDeleteProgramsARB((programs.remaining()), programs, programs.position()); + } + private static native void nglDeleteProgramsARB(int n, IntBuffer programs, int programs_position); + + public static native void glBindProgramARB(int target, int program); + + public static void glProgramStringARB(int target, int format, ByteBuffer string) { + BufferChecks.checkDirect(string); + nglProgramStringARB(target, format, (string.remaining()), string, string.position()); + } + private static native void nglProgramStringARB(int target, int format, int length, Buffer string, int string_position); } diff --git a/src/java/org/lwjgl/opengl/ARBShaderObjects.java b/src/java/org/lwjgl/opengl/ARBShaderObjects.java index 57305a41..783246e7 100644 --- a/src/java/org/lwjgl/opengl/ARBShaderObjects.java +++ b/src/java/org/lwjgl/opengl/ARBShaderObjects.java @@ -1,394 +1,238 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.BufferOverflowException; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBShaderObjects { - - /* - * Accepted by the argument of GetHandleARB: - */ - public static final int GL_PROGRAM_OBJECT_ARB = 0x8B40; - - /* - * Accepted by the parameter of GetObjectParameter{fi}vARB: - */ - public static final int GL_OBJECT_TYPE_ARB = 0x8B4E; - public static final int GL_OBJECT_SUBTYPE_ARB = 0x8B4F; - public static final int GL_OBJECT_DELETE_STATUS_ARB = 0x8B80; - public static final int GL_OBJECT_COMPILE_STATUS_ARB = 0x8B81; - public static final int GL_OBJECT_LINK_STATUS_ARB = 0x8B82; - public static final int GL_OBJECT_VALIDATE_STATUS_ARB = 0x8B83; - public static final int GL_OBJECT_INFO_LOG_LENGTH_ARB = 0x8B84; - public static final int GL_OBJECT_ATTACHED_OBJECTS_ARB = 0x8B85; - public static final int GL_OBJECT_ACTIVE_UNIFORMS_ARB = 0x8B86; - public static final int GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = 0x8B87; - public static final int GL_OBJECT_SHADER_SOURCE_LENGTH_ARB = 0x8B88; - - /* - * Returned by the parameter of GetObjectParameter{fi}vARB: - */ - public static final int GL_SHADER_OBJECT_ARB = 0x8B48; - - /* - * Returned by the parameter of GetActiveUniformARB: - */ - public static final int GL_FLOAT = 0x1406; - public static final int GL_FLOAT_VEC2_ARB = 0x8B50; - public static final int GL_FLOAT_VEC3_ARB = 0x8B51; - public static final int GL_FLOAT_VEC4_ARB = 0x8B52; + public static final int GL_SAMPLER_2D_RECT_SHADOW_ARB = 0x8b64; + public static final int GL_SAMPLER_2D_RECT_ARB = 0x8b63; + public static final int GL_SAMPLER_2D_SHADOW_ARB = 0x8b62; + public static final int GL_SAMPLER_1D_SHADOW_ARB = 0x8b61; + public static final int GL_SAMPLER_CUBE_ARB = 0x8b60; + public static final int GL_SAMPLER_3D_ARB = 0x8b5f; + public static final int GL_SAMPLER_2D_ARB = 0x8b5e; + public static final int GL_SAMPLER_1D_ARB = 0x8b5d; + public static final int GL_FLOAT_MAT4_ARB = 0x8b5c; + public static final int GL_FLOAT_MAT3_ARB = 0x8b5b; + public static final int GL_FLOAT_MAT2_ARB = 0x8b5a; + public static final int GL_BOOL_VEC4_ARB = 0x8b59; + public static final int GL_BOOL_VEC3_ARB = 0x8b58; + public static final int GL_BOOL_VEC2_ARB = 0x8b57; + public static final int GL_BOOL_ARB = 0x8b56; + public static final int GL_INT_VEC4_ARB = 0x8b55; + public static final int GL_INT_VEC3_ARB = 0x8b54; + public static final int GL_INT_VEC2_ARB = 0x8b53; public static final int GL_INT = 0x1404; - public static final int GL_INT_VEC2_ARB = 0x8B53; - public static final int GL_INT_VEC3_ARB = 0x8B54; - public static final int GL_INT_VEC4_ARB = 0x8B55; - public static final int GL_BOOL_ARB = 0x8B56; - public static final int GL_BOOL_VEC2_ARB = 0x8B57; - public static final int GL_BOOL_VEC3_ARB = 0x8B58; - public static final int GL_BOOL_VEC4_ARB = 0x8B59; - public static final int GL_FLOAT_MAT2_ARB = 0x8B5A; - public static final int GL_FLOAT_MAT3_ARB = 0x8B5B; - public static final int GL_FLOAT_MAT4_ARB = 0x8B5C; - public static final int GL_SAMPLER_1D_ARB = 0x8B5D; - public static final int GL_SAMPLER_2D_ARB = 0x8B5E; - public static final int GL_SAMPLER_3D_ARB = 0x8B5F; - public static final int GL_SAMPLER_CUBE_ARB = 0x8B60; - public static final int GL_SAMPLER_1D_SHADOW_ARB = 0x8B61; - public static final int GL_SAMPLER_2D_SHADOW_ARB = 0x8B62; - public static final int GL_SAMPLER_2D_RECT_ARB = 0x8B63; - public static final int GL_SAMPLER_2D_RECT_SHADOW_ARB = 0x8B64; + public static final int GL_FLOAT_VEC4_ARB = 0x8b52; + public static final int GL_FLOAT_VEC3_ARB = 0x8b51; + public static final int GL_FLOAT_VEC2_ARB = 0x8b50; + public static final int GL_FLOAT = 0x1406; + public static final int GL_SHADER_OBJECT_ARB = 0x8b48; + public static final int GL_OBJECT_SHADER_SOURCE_LENGTH_ARB = 0x8b88; + public static final int GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = 0x8b87; + public static final int GL_OBJECT_ACTIVE_UNIFORMS_ARB = 0x8b86; + public static final int GL_OBJECT_ATTACHED_OBJECTS_ARB = 0x8b85; + public static final int GL_OBJECT_INFO_LOG_LENGTH_ARB = 0x8b84; + public static final int GL_OBJECT_VALIDATE_STATUS_ARB = 0x8b83; + public static final int GL_OBJECT_LINK_STATUS_ARB = 0x8b82; + public static final int GL_OBJECT_COMPILE_STATUS_ARB = 0x8b81; + public static final int GL_OBJECT_DELETE_STATUS_ARB = 0x8b80; + public static final int GL_OBJECT_SUBTYPE_ARB = 0x8b4f; + public static final int GL_OBJECT_TYPE_ARB = 0x8b4e; + public static final int GL_PROGRAM_OBJECT_ARB = 0x8b40; private ARBShaderObjects() { } static native void initNativeStubs() throws LWJGLException; - public static native void glDeleteObjectARB(int obj); - - public static native int glGetHandleARB(int pname); - - public static native void glDetachObjectARB(int containerObj, int attachedObj); - - public static native int glCreateShaderObjectARB(int shaderType); - - // --------------------------- - /** - * The ARB_shader_objects extension allows multiple, optionally null-terminated, source strings to define a shader program. - *

- * This method uses just a single string, that should NOT be null-terminated. - * - * @param shaderObj - * @param string - */ - public static void glShaderSourceARB(int shaderObj, ByteBuffer string) { - BufferChecks.checkDirect(string); - initShaderSource(1); - setShaderString(0, string, string.position(), string.remaining()); - - nglShaderSourceARB(shaderObj); + public static void glGetShaderSourceARB(int obj, IntBuffer length, ByteBuffer source) { + if (length != null) + BufferChecks.checkBuffer(length, 1); + BufferChecks.checkDirect(source); + nglGetShaderSourceARB(obj, (source.remaining()), length, length != null ? length.position() : 0, source, source.position()); } + private static native void nglGetShaderSourceARB(int obj, int maxLength, IntBuffer length, int length_position, ByteBuffer source, int source_position); - /** - * The ARB_shader_objects extension allows multiple, optionally null-terminated, source strings to define a shader program. - *

- * This method uses an array of strings, that should NOT be null-terminated. - * - * @param shaderObj - * @param strings - */ - public static void glShaderSourceARB(int shaderObj, ByteBuffer[] strings) { - if ( strings == null || strings.length == 0 ) - throw new IllegalArgumentException("Invalid shader string array."); - - initShaderSource(strings.length); - for ( int i = 0; i < strings.length; i++ ) { - BufferChecks.checkDirect(strings[i]); - setShaderString(i, strings[i], strings[i].position(), strings[i].remaining()); - } - - nglShaderSourceARB(shaderObj); - } - - private static native void initShaderSource(int count); - - private static native void setShaderString(int index, ByteBuffer string, int stringOffset, int stringLength); - - private static native void nglShaderSourceARB(int shaderObj); - // --------------------------- - - public static native void glCompileShaderARB(int shaderObj); - - public static native int glCreateProgramObjectARB(); - - public static native void glAttachObjectARB(int containerObj, int obj); - - public static native void glLinkProgramARB(int programObj); - - public static native void glUseProgramObjectARB(int programObj); - - public static native void glValidateProgramARB(int programObj); - - public static native void glUniform1fARB(int location, float v0); - - public static native void glUniform2fARB(int location, float v0, float v1); - - public static native void glUniform3fARB(int location, float v0, float v1, float v2); - - public static native void glUniform4fARB(int location, float v0, float v1, float v2, float v3); - - public static native void glUniform1iARB(int location, int v0); - - public static native void glUniform2iARB(int location, int v0, int v1); - - public static native void glUniform3iARB(int location, int v0, int v1, int v2); - - public static native void glUniform4iARB(int location, int v0, int v1, int v2, int v3); - - // --------------------------- - public static void glUniform1ARB(int location, FloatBuffer values) { - BufferChecks.checkDirect(values); - nglUniform1fvARB(location, values.remaining(), values, values.position()); - } - - private static native void nglUniform1fvARB(int location, int count, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform2ARB(int location, FloatBuffer values) { - BufferChecks.checkDirect(values); - nglUniform2fvARB(location, values.remaining() >> 1, values, values.position()); - } - - private static native void nglUniform2fvARB(int location, int count, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform3ARB(int location, FloatBuffer values) { - BufferChecks.checkDirect(values); - nglUniform3fvARB(location, values.remaining() / 3, values, values.position()); - } - - private static native void nglUniform3fvARB(int location, int count, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform4ARB(int location, FloatBuffer values) { - BufferChecks.checkDirect(values); - nglUniform4fvARB(location, values.remaining() >> 2, values, values.position()); - } - - private static native void nglUniform4fvARB(int location, int count, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform1ARB(int location, IntBuffer values) { - BufferChecks.checkDirect(values); - nglUniform1ivARB(location, values.remaining(), values, values.position()); - } - - private static native void nglUniform1ivARB(int location, int count, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform2ARB(int location, IntBuffer values) { - BufferChecks.checkDirect(values); - nglUniform2ivARB(location, values.remaining() >> 1, values, values.position()); - } - - private static native void nglUniform2ivARB(int location, int count, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform3ARB(int location, IntBuffer values) { - BufferChecks.checkDirect(values); - nglUniform3ivARB(location, values.remaining() / 3, values, values.position()); - } - - private static native void nglUniform3ivARB(int location, int count, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform4ARB(int location, IntBuffer values) { - BufferChecks.checkDirect(values); - nglUniform4ivARB(location, values.remaining() >> 2, values, values.position()); - } - - private static native void nglUniform4ivARB(int location, int count, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniformMatrix2ARB(int location, boolean transpose, FloatBuffer matrices) { - BufferChecks.checkDirect(matrices); - nglUniformMatrix2fvARB(location, matrices.remaining() >> 2, transpose, matrices, matrices.position()); - } - - private static native void nglUniformMatrix2fvARB(int location, int count, boolean transpose, FloatBuffer matrices, int matricesOffset); - // --------------------------- - - // --------------------------- - public static void glUniformMatrix3ARB(int location, boolean transpose, FloatBuffer matrices) { - BufferChecks.checkDirect(matrices); - nglUniformMatrix3fvARB(location, matrices.remaining() / (3 * 3), transpose, matrices, matrices.position()); - } - - private static native void nglUniformMatrix3fvARB(int location, int count, boolean transpose, FloatBuffer matrices, int matricesOffset); - // --------------------------- - - // --------------------------- - public static void glUniformMatrix4ARB(int location, boolean transpose, FloatBuffer matrices) { - BufferChecks.checkDirect(matrices); - nglUniformMatrix4fvARB(location, matrices.remaining() >> 4, transpose, matrices, matrices.position()); - } - - private static native void nglUniformMatrix4fvARB(int location, int count, boolean transpose, FloatBuffer matrices, int matricesOffset); - // --------------------------- - - // --------------------------- - public static void glGetObjectParameterARB(int obj, int pname, FloatBuffer params) { + public static void glGetUniformARB(int programObj, int location, IntBuffer params) { BufferChecks.checkDirect(params); - nglGetObjectParameterfvARB(obj, pname, params, params.position()); + nglGetUniformivARB(programObj, location, params, params.position()); } + private static native void nglGetUniformivARB(int programObj, int location, IntBuffer params, int params_position); - private static native void nglGetObjectParameterfvARB(int obj, int pname, FloatBuffer params, int paramsOffset); - // --------------------------- + public static void glGetUniformARB(int programObj, int location, FloatBuffer params) { + BufferChecks.checkDirect(params); + nglGetUniformfvARB(programObj, location, params, params.position()); + } + private static native void nglGetUniformfvARB(int programObj, int location, FloatBuffer params, int params_position); + + public static void glGetActiveUniformARB(int programObj, int index, IntBuffer length, IntBuffer size, IntBuffer type, ByteBuffer name) { + if (length != null) + BufferChecks.checkBuffer(length, 1); + BufferChecks.checkBuffer(size, 1); + BufferChecks.checkBuffer(type, 1); + BufferChecks.checkDirect(name); + nglGetActiveUniformARB(programObj, index, (name.remaining()), length, length != null ? length.position() : 0, size, size.position(), type, type.position(), name, name.position()); + } + private static native void nglGetActiveUniformARB(int programObj, int index, int maxLength, IntBuffer length, int length_position, IntBuffer size, int size_position, IntBuffer type, int type_position, ByteBuffer name, int name_position); + + /** + * Returns the location of the uniform with the specified name. The ByteBuffer should contain the uniform name as a null-terminated string. + * @param programObj + * @param name + * @return + */ + public static int glGetUniformLocationARB(int programObj, ByteBuffer name) { + BufferChecks.checkDirect(name); + BufferChecks.checkNullTerminated(name); + int __result = nglGetUniformLocationARB(programObj, name, name.position()); + return __result; + } + private static native int nglGetUniformLocationARB(int programObj, ByteBuffer name, int name_position); + + public static void glGetAttachedObjectsARB(int containerObj, IntBuffer count, IntBuffer obj) { + if (count != null) + BufferChecks.checkBuffer(count, 1); + BufferChecks.checkDirect(obj); + nglGetAttachedObjectsARB(containerObj, (obj.remaining()), count, count != null ? count.position() : 0, obj, obj.position()); + } + private static native void nglGetAttachedObjectsARB(int containerObj, int maxCount, IntBuffer count, int count_position, IntBuffer obj, int obj_position); + + public static void glGetInfoLogARB(int obj, IntBuffer length, ByteBuffer infoLog) { + if (length != null) + BufferChecks.checkBuffer(length, 1); + BufferChecks.checkDirect(infoLog); + nglGetInfoLogARB(obj, (infoLog.remaining()), length, length != null ? length.position() : 0, infoLog, infoLog.position()); + } + private static native void nglGetInfoLogARB(int obj, int maxLength, IntBuffer length, int length_position, ByteBuffer infoLog, int infoLog_position); - // --------------------------- public static void glGetObjectParameterARB(int obj, int pname, IntBuffer params) { BufferChecks.checkDirect(params); nglGetObjectParameterivARB(obj, pname, params, params.position()); } + private static native void nglGetObjectParameterivARB(int obj, int pname, IntBuffer params, int params_position); - private static native void nglGetObjectParameterivARB(int obj, int pname, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetInfoLogARB(int obj, IntBuffer length, ByteBuffer infoLog) { - BufferChecks.checkDirect(infoLog); - if ( length == null ) { - nglGetInfoLogARB(obj, infoLog.remaining(), null, -1, infoLog, infoLog.position()); - } else { - BufferChecks.checkBuffer(length, 1); - nglGetInfoLogARB(obj, infoLog.remaining(), length, length.position(), infoLog, infoLog.position()); - } + public static void glGetObjectParameterARB(int obj, int pname, FloatBuffer params) { + BufferChecks.checkDirect(params); + nglGetObjectParameterfvARB(obj, pname, params, params.position()); } + private static native void nglGetObjectParameterfvARB(int obj, int pname, FloatBuffer params, int params_position); - private static native void nglGetInfoLogARB(int obj, int maxLength, IntBuffer length, int lengthOffset, ByteBuffer infoLog, int infoLogOffset); - // --------------------------- - - // --------------------------- - public static void glGetAttachedObjectsARB(int containerObj, IntBuffer count, IntBuffer obj) { - if ( count == null ) - nglGetAttachedObjectsARB(containerObj, obj.remaining(), null, -1, obj, obj.position()); - else { - if ( count.remaining() == 0 ) - throw new BufferOverflowException(); - - nglGetAttachedObjectsARB(containerObj, obj.remaining(), count, count.position(), obj, obj.position()); - } + public static void glUniformMatrix4ARB(int location, boolean transpose, FloatBuffer matrices) { + BufferChecks.checkDirect(matrices); + nglUniformMatrix4fvARB(location, (matrices.remaining()) >> 4, transpose, matrices, matrices.position()); } + private static native void nglUniformMatrix4fvARB(int location, int count, boolean transpose, FloatBuffer matrices, int matrices_position); - private static native void nglGetAttachedObjectsARB(int containerObj, int maxCount, IntBuffer count, int countOffset, IntBuffer obj, int objOffset); - // --------------------------- + public static void glUniformMatrix3ARB(int location, boolean transpose, FloatBuffer matrices) { + BufferChecks.checkDirect(matrices); + nglUniformMatrix3fvARB(location, (matrices.remaining()) / (3 * 3), transpose, matrices, matrices.position()); + } + private static native void nglUniformMatrix3fvARB(int location, int count, boolean transpose, FloatBuffer matrices, int matrices_position); + + public static void glUniformMatrix2ARB(int location, boolean transpose, FloatBuffer matrices) { + BufferChecks.checkDirect(matrices); + nglUniformMatrix2fvARB(location, (matrices.remaining()) >> 2, transpose, matrices, matrices.position()); + } + private static native void nglUniformMatrix2fvARB(int location, int count, boolean transpose, FloatBuffer matrices, int matrices_position); + + public static void glUniform4ARB(int location, IntBuffer values) { + BufferChecks.checkDirect(values); + nglUniform4ivARB(location, (values.remaining()) >> 2, values, values.position()); + } + private static native void nglUniform4ivARB(int location, int count, IntBuffer values, int values_position); + + public static void glUniform3ARB(int location, IntBuffer values) { + BufferChecks.checkDirect(values); + nglUniform3ivARB(location, (values.remaining()) / 3, values, values.position()); + } + private static native void nglUniform3ivARB(int location, int count, IntBuffer values, int values_position); + + public static void glUniform2ARB(int location, IntBuffer values) { + BufferChecks.checkDirect(values); + nglUniform2ivARB(location, (values.remaining()) >> 1, values, values.position()); + } + private static native void nglUniform2ivARB(int location, int count, IntBuffer values, int values_position); + + public static void glUniform1ARB(int location, IntBuffer values) { + BufferChecks.checkDirect(values); + nglUniform1ivARB(location, (values.remaining()), values, values.position()); + } + private static native void nglUniform1ivARB(int location, int count, IntBuffer values, int values_position); + + public static void glUniform4ARB(int location, FloatBuffer values) { + BufferChecks.checkDirect(values); + nglUniform4fvARB(location, (values.remaining()) >> 2, values, values.position()); + } + private static native void nglUniform4fvARB(int location, int count, FloatBuffer values, int values_position); + + public static void glUniform3ARB(int location, FloatBuffer values) { + BufferChecks.checkDirect(values); + nglUniform3fvARB(location, (values.remaining()) / 3, values, values.position()); + } + private static native void nglUniform3fvARB(int location, int count, FloatBuffer values, int values_position); + + public static void glUniform2ARB(int location, FloatBuffer values) { + BufferChecks.checkDirect(values); + nglUniform2fvARB(location, (values.remaining()) >> 1, values, values.position()); + } + private static native void nglUniform2fvARB(int location, int count, FloatBuffer values, int values_position); + + public static void glUniform1ARB(int location, FloatBuffer values) { + BufferChecks.checkDirect(values); + nglUniform1fvARB(location, (values.remaining()), values, values.position()); + } + private static native void nglUniform1fvARB(int location, int count, FloatBuffer values, int values_position); + + public static native void glUniform4iARB(int location, int v0, int v1, int v2, int v3); + + public static native void glUniform3iARB(int location, int v0, int v1, int v2); + + public static native void glUniform2iARB(int location, int v0, int v1); + + public static native void glUniform1iARB(int location, int v0); + + public static native void glUniform4fARB(int location, float v0, float v1, float v2, float v3); + + public static native void glUniform3fARB(int location, float v0, float v1, float v2); + + public static native void glUniform2fARB(int location, float v0, float v1); + + public static native void glUniform1fARB(int location, float v0); + + public static native void glValidateProgramARB(int programObj); + + public static native void glUseProgramObjectARB(int programObj); + + public static native void glLinkProgramARB(int programObj); + + public static native void glAttachObjectARB(int containerObj, int obj); + + public static native int glCreateProgramObjectARB(); + + public static native void glCompileShaderARB(int shaderObj); - // --------------------------- /** - * Returns the location of the uniform with the specified name. The ByteBuffer should contain the uniform name as a null-terminated string. - * - * @param programObj - * @param name - * - * @return + * The ARB_shader_objects extension allows multiple, optionally null-terminated, source strings to define a shader program. + *

+ * This method uses just a single string, that should NOT be null-terminated. + * @param shaderObj + * @param string */ - public static int glGetUniformLocationARB(int programObj, ByteBuffer name) { - // TODO: How do we check that the string is null-terminated? - return nglGetUniformLocationARB(programObj, name, name.position()); + public static void glShaderSourceARB(int shader, ByteBuffer string) { + BufferChecks.checkDirect(string); + nglShaderSourceARB(shader, 1, string, string.position(), (string.remaining())); } + private static native void nglShaderSourceARB(int shader, int count, ByteBuffer string, int string_position, int length); - private static native int nglGetUniformLocationARB(int programObj, ByteBuffer name, int nameOffset); - // --------------------------- + public static native int glCreateShaderObjectARB(int shaderType); - // --------------------------- - public static void glGetActiveUniformARB(int programObj, int index, IntBuffer length, IntBuffer size, IntBuffer type, ByteBuffer name) { - if ( size.remaining() == 0 ) - throw new BufferOverflowException(); + public static native void glDetachObjectARB(int containerObj, int attachedObj); - if ( type.remaining() == 0 ) - throw new BufferOverflowException(); - - if ( length == null ) - nglGetActiveUniformARB(programObj, index, name.remaining(), null, -1, size, size.position(), type, type.position(), name, name.position()); - else { - if ( length.remaining() == 0 ) - throw new BufferOverflowException(); - - nglGetActiveUniformARB(programObj, index, name.remaining(), length, length.position(), size, size.position(), type, type.position(), name, name.position()); - } - } - - private static native void nglGetActiveUniformARB(int programObj, int index, int maxLength, IntBuffer length, int lengthOffset, IntBuffer size, int sizeOffset, IntBuffer type, int typeOffset, ByteBuffer name, int nameOffset); - // --------------------------- - - // --------------------------- - public static void glGetUniformARB(int programObj, int location, FloatBuffer params) { - nglGetUniformfvARB(programObj, location, params, params.position()); - } - - private static native void nglGetUniformfvARB(int programObj, int location, FloatBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetUniformARB(int programObj, int location, IntBuffer params) { - nglGetUniformivARB(programObj, location, params, params.position()); - } - - private static native void nglGetUniformivARB(int programObj, int location, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetShaderSourceARB(int obj, IntBuffer length, ByteBuffer source) { - if ( length == null ) - nglGetShaderSourceARB(obj, source.remaining(), null, -1, source, source.position()); - else { - nglGetShaderSourceARB(obj, source.remaining(), length, length.position(), source, source.position()); - } - } - - private static native void nglGetShaderSourceARB(int obj, int maxLength, IntBuffer length, int lengthOffset, ByteBuffer source, int sourceOffset); - // --------------------------- + public static native int glGetHandleARB(int pname); + public static native void glDeleteObjectARB(int obj); } diff --git a/src/java/org/lwjgl/opengl/ARBShadingLanguage100.java b/src/java/org/lwjgl/opengl/ARBShadingLanguage100.java index 01efff22..fa62dea5 100644 --- a/src/java/org/lwjgl/opengl/ARBShadingLanguage100.java +++ b/src/java/org/lwjgl/opengl/ARBShadingLanguage100.java @@ -1,43 +1,18 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ARBShadingLanguage100 { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - /* - * Accepted by the parameter of GetString: - */ - public static final int GL_SHADING_LANGUAGE_VERSION_ARB = 0x8B8C; +public final class ARBShadingLanguage100 { + /** + * Accepted by the parameter of GetString: + */ + public static final int GL_SHADING_LANGUAGE_VERSION_ARB = 0x8b8c; private ARBShadingLanguage100() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBShadow.java b/src/java/org/lwjgl/opengl/ARBShadow.java index 9d532ca2..676a02f7 100644 --- a/src/java/org/lwjgl/opengl/ARBShadow.java +++ b/src/java/org/lwjgl/opengl/ARBShadow.java @@ -1,42 +1,17 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ARBShadow { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_TEXTURE_COMPARE_MODE_ARB = 0x884C; - public static final int GL_TEXTURE_COMPARE_FUNC_ARB = 0x884D; - public static final int GL_COMPARE_R_TO_TEXTURE_ARB = 0x884E; +public final class ARBShadow { + public static final int GL_COMPARE_R_TO_TEXTURE_ARB = 0x884e; + public static final int GL_TEXTURE_COMPARE_FUNC_ARB = 0x884d; + public static final int GL_TEXTURE_COMPARE_MODE_ARB = 0x884c; private ARBShadow() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBShadowAmbient.java b/src/java/org/lwjgl/opengl/ARBShadowAmbient.java index d635721f..075174a5 100644 --- a/src/java/org/lwjgl/opengl/ARBShadowAmbient.java +++ b/src/java/org/lwjgl/opengl/ARBShadowAmbient.java @@ -1,40 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ARBShadowAmbient { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = 0x80BF; +public final class ARBShadowAmbient { + public static final int GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = 0x80bf; private ARBShadowAmbient() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBTextureBorderClamp.java b/src/java/org/lwjgl/opengl/ARBTextureBorderClamp.java index f7a0f31f..ee5b716d 100644 --- a/src/java/org/lwjgl/opengl/ARBTextureBorderClamp.java +++ b/src/java/org/lwjgl/opengl/ARBTextureBorderClamp.java @@ -1,40 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ARBTextureBorderClamp { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_CLAMP_TO_BORDER_ARB = 0x812D; +public final class ARBTextureBorderClamp { + public static final int GL_CLAMP_TO_BORDER_ARB = 0x812d; private ARBTextureBorderClamp() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBTextureCompression.java b/src/java/org/lwjgl/opengl/ARBTextureCompression.java index fff8c987..ddce9466 100644 --- a/src/java/org/lwjgl/opengl/ARBTextureCompression.java +++ b/src/java/org/lwjgl/opengl/ARBTextureCompression.java @@ -1,130 +1,137 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBTextureCompression { - - public static final int GL_COMPRESSED_ALPHA_ARB = 0x84E9; - public static final int GL_COMPRESSED_LUMINANCE_ARB = 0x84EA; - public static final int GL_COMPRESSED_LUMINANCE_ALPHA_ARB = 0x84EB; - public static final int GL_COMPRESSED_INTENSITY_ARB = 0x84EC; - public static final int GL_COMPRESSED_RGB_ARB = 0x84ED; - public static final int GL_COMPRESSED_RGBA_ARB = 0x84EE; - public static final int GL_TEXTURE_COMPRESSION_HINT_ARB = 0x84EF; - public static final int GL_TEXTURE_IMAGE_SIZE_ARB = 0x86A0; - public static final int GL_TEXTURE_COMPRESSED_ARB = 0x86A1; - public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A2; - public static final int GL_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A3; + public static final int GL_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86a3; + public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86a2; + public static final int GL_TEXTURE_COMPRESSED_ARB = 0x86a1; + public static final int GL_TEXTURE_IMAGE_SIZE_ARB = 0x86a0; + public static final int GL_TEXTURE_COMPRESSION_HINT_ARB = 0x84ef; + public static final int GL_COMPRESSED_RGBA_ARB = 0x84ee; + public static final int GL_COMPRESSED_RGB_ARB = 0x84ed; + public static final int GL_COMPRESSED_INTENSITY_ARB = 0x84ec; + public static final int GL_COMPRESSED_LUMINANCE_ALPHA_ARB = 0x84eb; + public static final int GL_COMPRESSED_LUMINANCE_ARB = 0x84ea; + public static final int GL_COMPRESSED_ALPHA_ARB = 0x84e9; private ARBTextureCompression() { } static native void initNativeStubs() throws LWJGLException; - // --------------------------- - public static void glCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, ByteBuffer pData) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(pData); - nglCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData, pData.position()); + public static void glGetCompressedTexImageARB(int target, int lod, ShortBuffer pImg) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(pImg); + nglGetCompressedTexImageARB(target, lod, pImg, pImg.position() << 1); } - public static void glCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, ShortBuffer pData) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(pData); - nglCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData, pData.position() << 1); + public static void glGetCompressedTexImageARB(int target, int lod, IntBuffer pImg) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(pImg); + nglGetCompressedTexImageARB(target, lod, pImg, pImg.position() << 2); } - public static void glCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, IntBuffer pData) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(pData); - nglCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData, pData.position() << 2); + public static void glGetCompressedTexImageARB(int target, int lod, FloatBuffer pImg) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(pImg); + nglGetCompressedTexImageARB(target, lod, pImg, pImg.position() << 2); } - public static void glCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, FloatBuffer pData) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(pData); - nglCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData, pData.position() << 2); + public static void glGetCompressedTexImageARB(int target, int lod, ByteBuffer pImg) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(pImg); + nglGetCompressedTexImageARB(target, lod, pImg, pImg.position()); } - private static native void nglCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, Buffer pData, int pData_offset); + private static native void nglGetCompressedTexImageARB(int target, int lod, Buffer pImg, int pImg_position); + public static void glGetCompressedTexImageARB(int target, int lod, int pImg_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetCompressedTexImageARBBO(target, lod, pImg_buffer_offset); + } + private static native void nglGetCompressedTexImageARBBO(int target, int lod, int pImg_buffer_offset); - public static void glCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, int buffer_offset) { + public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, ShortBuffer pData) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(pData); + nglCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, pData, pData.position() << 1); + } + public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, IntBuffer pData) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(pData); + nglCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, pData, pData.position() << 2); + } + public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, FloatBuffer pData) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(pData); + nglCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, pData, pData.position() << 2); + } + public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, ByteBuffer pData) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(pData); + nglCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, pData, pData.position()); + } + private static native void nglCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, Buffer pData, int pData_position); + public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, int pData_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexImage1DARBBO(target, level, internalformat, width, border, imageSize, buffer_offset); + nglCompressedTexSubImage3DARBBO(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, pData_buffer_offset); } - private static native void nglCompressedTexImage1DARBBO(int target, int level, int internalformat, int width, int border, int imageSize, int buffer_offset); - // --------------------------- + private static native void nglCompressedTexSubImage3DARBBO(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, int pData_buffer_offset); - // --------------------------- - public static void glCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, ByteBuffer pData) { + public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, ShortBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData, pData.position()); + nglCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, format, imageSize, pData, pData.position() << 1); } - public static void glCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, ShortBuffer pData) { + public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, IntBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData, pData.position() << 1); + nglCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, format, imageSize, pData, pData.position() << 2); } - public static void glCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, IntBuffer pData) { + public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, FloatBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData, pData.position() << 2); + nglCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, format, imageSize, pData, pData.position() << 2); } - public static void glCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, FloatBuffer pData) { + public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, ByteBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData, pData.position() << 2); + nglCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, format, imageSize, pData, pData.position()); } - private static native void nglCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, Buffer pData, int pData_offset); - - public static void glCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, int buffer_offset) { + private static native void nglCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, Buffer pData, int pData_position); + public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, int pData_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexImage2DARBBO(target, level, internalformat, width, height, border, imageSize, buffer_offset); + nglCompressedTexSubImage2DARBBO(target, level, xoffset, yoffset, width, height, format, imageSize, pData_buffer_offset); } - private static native void nglCompressedTexImage2DARBBO(int target, int level, int internalformat, int width, int height, int border, int imageSize, int buffer_offset); - // --------------------------- + private static native void nglCompressedTexSubImage2DARBBO(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, int pData_buffer_offset); - // --------------------------- - public static void glCompressedTexImage3DARB(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, ByteBuffer pData) { + public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int format, int imageSize, ShortBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexImage3DARB(target, level, internalformat, width, height, depth, border, imageSize, pData, pData.position()); + nglCompressedTexSubImage1DARB(target, level, xoffset, width, format, imageSize, pData, pData.position() << 1); } + public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int format, int imageSize, IntBuffer pData) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(pData); + nglCompressedTexSubImage1DARB(target, level, xoffset, width, format, imageSize, pData, pData.position() << 2); + } + public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int format, int imageSize, FloatBuffer pData) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(pData); + nglCompressedTexSubImage1DARB(target, level, xoffset, width, format, imageSize, pData, pData.position() << 2); + } + public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int format, int imageSize, ByteBuffer pData) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(pData); + nglCompressedTexSubImage1DARB(target, level, xoffset, width, format, imageSize, pData, pData.position()); + } + private static native void nglCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int format, int imageSize, Buffer pData, int pData_position); + public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int format, int imageSize, int pData_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglCompressedTexSubImage1DARBBO(target, level, xoffset, width, format, imageSize, pData_buffer_offset); + } + private static native void nglCompressedTexSubImage1DARBBO(int target, int level, int xoffset, int width, int format, int imageSize, int pData_buffer_offset); + public static void glCompressedTexImage3DARB(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, ShortBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); @@ -140,127 +147,69 @@ public final class ARBTextureCompression { BufferChecks.checkDirect(pData); nglCompressedTexImage3DARB(target, level, internalformat, width, height, depth, border, imageSize, pData, pData.position() << 2); } - private static native void nglCompressedTexImage3DARB(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, Buffer pData, int pData_offset); - - public static void glCompressedTexImage3DARB(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, int buffer_offset) { + public static void glCompressedTexImage3DARB(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, ByteBuffer pData) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(pData); + nglCompressedTexImage3DARB(target, level, internalformat, width, height, depth, border, imageSize, pData, pData.position()); + } + private static native void nglCompressedTexImage3DARB(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, Buffer pData, int pData_position); + public static void glCompressedTexImage3DARB(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, int pData_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexImage3DARBBO(target, level, internalformat, width, height, depth, border, imageSize, buffer_offset); + nglCompressedTexImage3DARBBO(target, level, internalformat, width, height, depth, border, imageSize, pData_buffer_offset); } - private static native void nglCompressedTexImage3DARBBO(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, int buffer_offset); - // --------------------------- + private static native void nglCompressedTexImage3DARBBO(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, int pData_buffer_offset); - // --------------------------- - public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int border, int imageSize, ByteBuffer pData) { + public static void glCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, ShortBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexSubImage1DARB(target, level, xoffset, width, border, imageSize, pData, pData.position()); + nglCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData, pData.position() << 1); } - public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int border, int imageSize, ShortBuffer pData) { + public static void glCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, IntBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexSubImage1DARB(target, level, xoffset, width, border, imageSize, pData, pData.position() << 1); + nglCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData, pData.position() << 2); } - public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int border, int imageSize, IntBuffer pData) { + public static void glCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, FloatBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexSubImage1DARB(target, level, xoffset, width, border, imageSize, pData, pData.position() << 2); + nglCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData, pData.position() << 2); } - public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int border, int imageSize, FloatBuffer pData) { + public static void glCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, ByteBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexSubImage1DARB(target, level, xoffset, width, border, imageSize, pData, pData.position() << 2); + nglCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData, pData.position()); } - private static native void nglCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int border, int imageSize, Buffer pData, int pData_offset); - - public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int border, int imageSize, int buffer_offset) { + private static native void nglCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, Buffer pData, int pData_position); + public static void glCompressedTexImage2DARB(int target, int level, int internalformat, int width, int height, int border, int imageSize, int pData_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexSubImage1DARBBO(target, level, xoffset, width, border, imageSize, buffer_offset); + nglCompressedTexImage2DARBBO(target, level, internalformat, width, height, border, imageSize, pData_buffer_offset); } - private static native void nglCompressedTexSubImage1DARBBO(int target, int level, int xoffset, int width, int border, int imageSize, int buffer_offset); - // --------------------------- + private static native void nglCompressedTexImage2DARBBO(int target, int level, int internalformat, int width, int height, int border, int imageSize, int pData_buffer_offset); - // --------------------------- - public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int border, int imageSize, ByteBuffer pData) { + public static void glCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, ShortBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, border, imageSize, pData, pData.position()); + nglCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData, pData.position() << 1); } - public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int border, int imageSize, ShortBuffer pData) { + public static void glCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, IntBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, border, imageSize, pData, pData.position() << 1); + nglCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData, pData.position() << 2); } - public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int border, int imageSize, IntBuffer pData) { + public static void glCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, FloatBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, border, imageSize, pData, pData.position() << 2); + nglCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData, pData.position() << 2); } - public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int border, int imageSize, FloatBuffer pData) { + public static void glCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, ByteBuffer pData) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(pData); - nglCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, border, imageSize, pData, pData.position() << 2); + nglCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData, pData.position()); } - private static native void nglCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int border, int imageSize, Buffer pData, int pData_offset); - - public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int border, int imageSize, int buffer_offset) { + private static native void nglCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, Buffer pData, int pData_position); + public static void glCompressedTexImage1DARB(int target, int level, int internalformat, int width, int border, int imageSize, int pData_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexSubImage2DARBBO(target, level, xoffset, yoffset, width, height, border, imageSize, buffer_offset); + nglCompressedTexImage1DARBBO(target, level, internalformat, width, border, imageSize, pData_buffer_offset); } - private static native void nglCompressedTexSubImage2DARBBO(int target, int level, int xoffset, int yoffset, int width, int height, int border, int imageSize, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int border, int imageSize, ByteBuffer pData) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(pData); - nglCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, border, imageSize, pData, pData.position()); - } - public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int border, int imageSize, ShortBuffer pData) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(pData); - nglCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, border, imageSize, pData, pData.position() << 1); - } - public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int border, int imageSize, IntBuffer pData) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(pData); - nglCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, border, imageSize, pData, pData.position() << 2); - } - public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int border, int imageSize, FloatBuffer pData) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(pData); - nglCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, border, imageSize, pData, pData.position() << 2); - } - private static native void nglCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int border, int imageSize, Buffer pData, int pData_offset); - - public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int border, int imageSize, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexSubImage3DARBBO(target, level, xoffset, yoffset, zoffset, width, height, depth, border, imageSize, buffer_offset); - } - private static native void nglCompressedTexSubImage3DARBBO(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int border, int imageSize, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glGetCompressedTexImageARB(int target, int lod, ByteBuffer pImg) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirect(pImg); - nglGetCompressedTexImageARB(target, lod, pImg, pImg.position()); - } - public static void glGetCompressedTexImageARB(int target, int lod, ShortBuffer pImg) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirect(pImg); - nglGetCompressedTexImageARB(target, lod, pImg, pImg.position() << 1); - } - public static void glGetCompressedTexImageARB(int target, int lod, IntBuffer pImg) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirect(pImg); - nglGetCompressedTexImageARB(target, lod, pImg, pImg.position() << 2); - } - private static native void nglGetCompressedTexImageARB(int target, int lod, Buffer pImg, int pImg_offset); - - public static void glGetCompressedTexImageARB(int target, int lod, int buffer_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglGetCompressedTexImageARBBO(target, lod, buffer_offset); - } - private static native void nglGetCompressedTexImageARBBO(int target, int lod, int buffer_offset); - // --------------------------- + private static native void nglCompressedTexImage1DARBBO(int target, int level, int internalformat, int width, int border, int imageSize, int pData_buffer_offset); } diff --git a/src/java/org/lwjgl/opengl/ARBTextureCubeMap.java b/src/java/org/lwjgl/opengl/ARBTextureCubeMap.java index b88cf9df..59dfc197 100644 --- a/src/java/org/lwjgl/opengl/ARBTextureCubeMap.java +++ b/src/java/org/lwjgl/opengl/ARBTextureCubeMap.java @@ -1,51 +1,26 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ARBTextureCubeMap { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_NORMAL_MAP_ARB = 0x8511; - public static final int GL_REFLECTION_MAP_ARB = 0x8512; - public static final int GL_TEXTURE_CUBE_MAP_ARB = 0x8513; - public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARB = 0x8514; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x8515; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = 0x8516; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x8517; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x8518; +public final class ARBTextureCubeMap { + public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = 0x851c; + public static final int GL_PROXY_TEXTURE_CUBE_MAP_ARB = 0x851b; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x851a; public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = 0x8519; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x851A; - public static final int GL_PROXY_TEXTURE_CUBE_MAP_ARB = 0x851B; - public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = 0x851C; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x8518; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x8517; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = 0x8516; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x8515; + public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARB = 0x8514; + public static final int GL_TEXTURE_CUBE_MAP_ARB = 0x8513; + public static final int GL_REFLECTION_MAP_ARB = 0x8512; + public static final int GL_NORMAL_MAP_ARB = 0x8511; private ARBTextureCubeMap() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBTextureEnvCombine.java b/src/java/org/lwjgl/opengl/ARBTextureEnvCombine.java index 68376904..cda71bdd 100644 --- a/src/java/org/lwjgl/opengl/ARBTextureEnvCombine.java +++ b/src/java/org/lwjgl/opengl/ARBTextureEnvCombine.java @@ -1,60 +1,35 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ARBTextureEnvCombine { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_COMBINE_ARB = 0x8570; - public static final int GL_COMBINE_RGB_ARB = 0x8571; - public static final int GL_COMBINE_ALPHA_ARB = 0x8572; - public static final int GL_RGB_SCALE_ARB = 0x8573; - public static final int GL_ADD_SIGNED_ARB = 0x8574; - public static final int GL_INTERPOLATE_ARB = 0x8575; - public static final int GL_CONSTANT_ARB = 0x8576; - public static final int GL_PRIMARY_COLOR_ARB = 0x8577; - public static final int GL_PREVIOUS_ARB = 0x8578; - public static final int GL_SOURCE0_RGB_ARB = 0x8580; - public static final int GL_SOURCE1_RGB_ARB = 0x8581; - public static final int GL_SOURCE2_RGB_ARB = 0x8582; - public static final int GL_SOURCE0_ALPHA_ARB = 0x8588; - public static final int GL_SOURCE1_ALPHA_ARB = 0x8589; - public static final int GL_SOURCE2_ALPHA_ARB = 0x858A; - public static final int GL_OPERAND0_RGB_ARB = 0x8590; - public static final int GL_OPERAND1_RGB_ARB = 0x8591; - public static final int GL_OPERAND2_RGB_ARB = 0x8592; - public static final int GL_OPERAND0_ALPHA_ARB = 0x8598; +public final class ARBTextureEnvCombine { + public static final int GL_OPERAND2_ALPHA_ARB = 0x859a; public static final int GL_OPERAND1_ALPHA_ARB = 0x8599; - public static final int GL_OPERAND2_ALPHA_ARB = 0x859A; + public static final int GL_OPERAND0_ALPHA_ARB = 0x8598; + public static final int GL_OPERAND2_RGB_ARB = 0x8592; + public static final int GL_OPERAND1_RGB_ARB = 0x8591; + public static final int GL_OPERAND0_RGB_ARB = 0x8590; + public static final int GL_SOURCE2_ALPHA_ARB = 0x858a; + public static final int GL_SOURCE1_ALPHA_ARB = 0x8589; + public static final int GL_SOURCE0_ALPHA_ARB = 0x8588; + public static final int GL_SOURCE2_RGB_ARB = 0x8582; + public static final int GL_SOURCE1_RGB_ARB = 0x8581; + public static final int GL_SOURCE0_RGB_ARB = 0x8580; + public static final int GL_PREVIOUS_ARB = 0x8578; + public static final int GL_PRIMARY_COLOR_ARB = 0x8577; + public static final int GL_CONSTANT_ARB = 0x8576; + public static final int GL_INTERPOLATE_ARB = 0x8575; + public static final int GL_ADD_SIGNED_ARB = 0x8574; + public static final int GL_RGB_SCALE_ARB = 0x8573; + public static final int GL_COMBINE_ALPHA_ARB = 0x8572; + public static final int GL_COMBINE_RGB_ARB = 0x8571; + public static final int GL_COMBINE_ARB = 0x8570; private ARBTextureEnvCombine() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBTextureEnvDot3.java b/src/java/org/lwjgl/opengl/ARBTextureEnvDot3.java index 9a9a4e8e..5f32edc0 100644 --- a/src/java/org/lwjgl/opengl/ARBTextureEnvDot3.java +++ b/src/java/org/lwjgl/opengl/ARBTextureEnvDot3.java @@ -1,41 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ARBTextureEnvDot3 { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_DOT3_RGB_ARB = 0x86AE; - public static final int GL_DOT3_RGBA_ARB = 0x86AF; +public final class ARBTextureEnvDot3 { + public static final int GL_DOT3_RGBA_ARB = 0x86af; + public static final int GL_DOT3_RGB_ARB = 0x86ae; private ARBTextureEnvDot3() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBTextureFloat.java b/src/java/org/lwjgl/opengl/ARBTextureFloat.java index d6d71f30..aaa3b81d 100644 --- a/src/java/org/lwjgl/opengl/ARBTextureFloat.java +++ b/src/java/org/lwjgl/opengl/ARBTextureFloat.java @@ -1,72 +1,34 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; + public final class ARBTextureFloat { - - /* - * Accepted by the parameter of GetTexLevelParameter: - */ - public static final int TEXTURE_RED_TYPE_ARB = 0x8C10; - public static final int TEXTURE_GREEN_TYPE_ARB = 0x8C11; - public static final int TEXTURE_BLUE_TYPE_ARB = 0x8C12; - public static final int TEXTURE_ALPHA_TYPE_ARB = 0x8C13; - public static final int TEXTURE_LUMINANCE_TYPE_ARB = 0x8C14; - public static final int TEXTURE_INTENSITY_TYPE_ARB = 0x8C15; - public static final int TEXTURE_DEPTH_TYPE_ARB = 0x8C16; - - /* - * Returned by the parameter of GetTexLevelParameter: - */ - public static final int UNSIGNED_NORMALIZED_ARB = 0x8C17; - - /* - * Accepted by the parameter of TexImage1D, - * TexImage2D, and TexImage3D: - */ - public static final int RGBA32F_ARB = 0x8814; - public static final int RGB32F_ARB = 0x8815; - public static final int ALPHA32F_ARB = 0x8816; - public static final int INTENSITY32F_ARB = 0x8817; - public static final int LUMINANCE32F_ARB = 0x8818; + public static final int LUMINANCE_ALPHA16F_ARB = 0x881f; + public static final int LUMINANCE16F_ARB = 0x881e; + public static final int INTENSITY16F_ARB = 0x881d; + public static final int ALPHA16F_ARB = 0x881c; + public static final int RGB16F_ARB = 0x881b; + public static final int RGBA16F_ARB = 0x881a; public static final int LUMINANCE_ALPHA32F_ARB = 0x8819; - public static final int RGBA16F_ARB = 0x881A; - public static final int RGB16F_ARB = 0x881B; - public static final int ALPHA16F_ARB = 0x881C; - public static final int INTENSITY16F_ARB = 0x881D; - public static final int LUMINANCE16F_ARB = 0x881E; - public static final int LUMINANCE_ALPHA16F_ARB = 0x881F; + public static final int LUMINANCE32F_ARB = 0x8818; + public static final int INTENSITY32F_ARB = 0x8817; + public static final int ALPHA32F_ARB = 0x8816; + public static final int RGB32F_ARB = 0x8815; + public static final int RGBA32F_ARB = 0x8814; + public static final int UNSIGNED_NORMALIZED_ARB = 0x8c17; + public static final int TEXTURE_DEPTH_TYPE_ARB = 0x8c16; + public static final int TEXTURE_INTENSITY_TYPE_ARB = 0x8c15; + public static final int TEXTURE_LUMINANCE_TYPE_ARB = 0x8c14; + public static final int TEXTURE_ALPHA_TYPE_ARB = 0x8c13; + public static final int TEXTURE_BLUE_TYPE_ARB = 0x8c12; + public static final int TEXTURE_GREEN_TYPE_ARB = 0x8c11; + public static final int TEXTURE_RED_TYPE_ARB = 0x8c10; private ARBTextureFloat() { } -} \ No newline at end of file +} diff --git a/src/java/org/lwjgl/opengl/ARBTextureMirroredRepeat.java b/src/java/org/lwjgl/opengl/ARBTextureMirroredRepeat.java index 0b4839b7..cd387cc4 100644 --- a/src/java/org/lwjgl/opengl/ARBTextureMirroredRepeat.java +++ b/src/java/org/lwjgl/opengl/ARBTextureMirroredRepeat.java @@ -1,40 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ARBTextureMirroredRepeat { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; +public final class ARBTextureMirroredRepeat { public static final int GL_MIRRORED_REPEAT_ARB = 0x8370; private ARBTextureMirroredRepeat() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBTextureRectangle.java b/src/java/org/lwjgl/opengl/ARBTextureRectangle.java index 2fd69eda..e5970346 100644 --- a/src/java/org/lwjgl/opengl/ARBTextureRectangle.java +++ b/src/java/org/lwjgl/opengl/ARBTextureRectangle.java @@ -1,68 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; + public final class ARBTextureRectangle { - - /* - * Accepted by the parameter of Enable, Disable and - * IsEnabled; by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv and GetDoublev; and by the parameter of - * BindTexture, GetTexParameterfv, GetTexParameteriv, - * TexParameterf, TexParameteri, TexParameterfv and TexParameteriv: - - * Accepted by the parameter of GetTexImage, - * GetTexLevelParameteriv, GetTexLevelParameterfv, TexImage2D, - * CopyTexImage2D, TexSubImage2D and CopySubTexImage2D: - */ - public static final int GL_TEXTURE_RECTANGLE_ARB = 0x84F5; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv and GetDoublev: - */ - public static final int GL_TEXTURE_BINDING_RECTANGLE_ARB = 0x84F6; - - /* - * Accepted by the parameter of GetTexLevelParameteriv, - * GetTexLevelParameterfv, GetTexParameteriv and TexImage2D: - */ - public static final int GL_PROXY_TEXTURE_RECTANGLE_ARB = 0x84F7; - - /* - * Accepted by the parameter of GetBooleanv, GetDoublev, - * GetIntegerv and GetFloatv: - */ - public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB = 0x84F8; + public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB = 0x84f8; + public static final int GL_PROXY_TEXTURE_RECTANGLE_ARB = 0x84f7; + public static final int GL_TEXTURE_BINDING_RECTANGLE_ARB = 0x84f6; + public static final int GL_TEXTURE_RECTANGLE_ARB = 0x84f5; private ARBTextureRectangle() { } diff --git a/src/java/org/lwjgl/opengl/ARBTransposeMatrix.java b/src/java/org/lwjgl/opengl/ARBTransposeMatrix.java index cf3b393f..ee56bd9c 100644 --- a/src/java/org/lwjgl/opengl/ARBTransposeMatrix.java +++ b/src/java/org/lwjgl/opengl/ARBTransposeMatrix.java @@ -1,64 +1,31 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.FloatBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBTransposeMatrix { - - public static final int GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84E3; - public static final int GL_TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84E4; - public static final int GL_TRANSPOSE_TEXTURE_MATRIX_ARB = 0x84E5; - public static final int GL_TRANSPOSE_COLOR_MATRIX_ARB = 0x84E6; + public static final int GL_TRANSPOSE_COLOR_MATRIX_ARB = 0x84e6; + public static final int GL_TRANSPOSE_TEXTURE_MATRIX_ARB = 0x84e5; + public static final int GL_TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84e4; + public static final int GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84e3; private ARBTransposeMatrix() { } static native void initNativeStubs() throws LWJGLException; + public static void glMultTransposeMatrixARB(FloatBuffer pfMtx) { + BufferChecks.checkBuffer(pfMtx, 16); + nglMultTransposeMatrixfARB(pfMtx, pfMtx.position()); + } + private static native void nglMultTransposeMatrixfARB(FloatBuffer pfMtx, int pfMtx_position); + public static void glLoadTransposeMatrixARB(FloatBuffer pfMtx) { BufferChecks.checkBuffer(pfMtx, 16); nglLoadTransposeMatrixfARB(pfMtx, pfMtx.position()); } - - private static native void nglLoadTransposeMatrixfARB(FloatBuffer pfMtx, int pfMtx_offset); - - public static void glMultTransposeMatrixfARB(FloatBuffer pfMtx) { - BufferChecks.checkBuffer(pfMtx, 16); - nglMultTransposeMatrixfARB(pfMtx, pfMtx.position()); - } - - private static native void nglMultTransposeMatrixfARB(FloatBuffer pfMtx, int pfMtx_offset); + private static native void nglLoadTransposeMatrixfARB(FloatBuffer pfMtx, int pfMtx_position); } diff --git a/src/java/org/lwjgl/opengl/ARBVertexBlend.java b/src/java/org/lwjgl/opengl/ARBVertexBlend.java index a8e9a302..a8b1b31e 100644 --- a/src/java/org/lwjgl/opengl/ARBVertexBlend.java +++ b/src/java/org/lwjgl/opengl/ARBVertexBlend.java @@ -1,176 +1,128 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBVertexBlend { - - public static final int GL_MAX_VERTEX_UNITS_ARB = 0x86A4; - public static final int GL_ACTIVE_VERTEX_UNITS_ARB = 0x86A5; - public static final int GL_WEIGHT_SUM_UNITY_ARB = 0x86A6; - public static final int GL_VERTEX_BLEND_ARB = 0x86A7; - public static final int GL_CURRENT_WEIGHT_ARB = 0x86A8; - public static final int GL_WEIGHT_ARRAY_TYPE_ARB = 0x86A9; - public static final int GL_WEIGHT_ARRAY_STRIDE_ARB = 0x86AA; - public static final int GL_WEIGHT_ARRAY_SIZE_ARB = 0x86AB; - public static final int GL_WEIGHT_ARRAY_POINTER_ARB = 0x86AC; - public static final int GL_WEIGHT_ARRAY_ARB = 0x86AD; - public static final int GL_MODELVIEW0_ARB = 0x1700; - public static final int GL_MODELVIEW1_ARB = 0x850a; - public static final int GL_MODELVIEW2_ARB = 0x8722; - public static final int GL_MODELVIEW3_ARB = 0x8723; - public static final int GL_MODELVIEW4_ARB = 0x8724; - public static final int GL_MODELVIEW5_ARB = 0x8725; - public static final int GL_MODELVIEW6_ARB = 0x8726; - public static final int GL_MODELVIEW7_ARB = 0x8727; - public static final int GL_MODELVIEW8_ARB = 0x8728; - public static final int GL_MODELVIEW9_ARB = 0x8729; - public static final int GL_MODELVIEW10_ARB = 0x872A; - public static final int GL_MODELVIEW11_ARB = 0x872B; - public static final int GL_MODELVIEW12_ARB = 0x872C; - public static final int GL_MODELVIEW13_ARB = 0x872D; - public static final int GL_MODELVIEW14_ARB = 0x872E; - public static final int GL_MODELVIEW15_ARB = 0x872F; - public static final int GL_MODELVIEW16_ARB = 0x8730; - public static final int GL_MODELVIEW17_ARB = 0x8731; - public static final int GL_MODELVIEW18_ARB = 0x8732; - public static final int GL_MODELVIEW19_ARB = 0x8733; - public static final int GL_MODELVIEW20_ARB = 0x8734; - public static final int GL_MODELVIEW21_ARB = 0x8735; - public static final int GL_MODELVIEW22_ARB = 0x8736; - public static final int GL_MODELVIEW23_ARB = 0x8737; - public static final int GL_MODELVIEW24_ARB = 0x8738; + public static final int GL_MODELVIEW31_ARB = 0x873f; + public static final int GL_MODELVIEW30_ARB = 0x873e; + public static final int GL_MODELVIEW29_ARB = 0x873d; + public static final int GL_MODELVIEW28_ARB = 0x873c; + public static final int GL_MODELVIEW27_ARB = 0x873b; + public static final int GL_MODELVIEW26_ARB = 0x873a; public static final int GL_MODELVIEW25_ARB = 0x8739; - public static final int GL_MODELVIEW26_ARB = 0x873A; - public static final int GL_MODELVIEW27_ARB = 0x873B; - public static final int GL_MODELVIEW28_ARB = 0x873C; - public static final int GL_MODELVIEW29_ARB = 0x873D; - public static final int GL_MODELVIEW30_ARB = 0x873E; - public static final int GL_MODELVIEW31_ARB = 0x873F; + public static final int GL_MODELVIEW24_ARB = 0x8738; + public static final int GL_MODELVIEW23_ARB = 0x8737; + public static final int GL_MODELVIEW22_ARB = 0x8736; + public static final int GL_MODELVIEW21_ARB = 0x8735; + public static final int GL_MODELVIEW20_ARB = 0x8734; + public static final int GL_MODELVIEW19_ARB = 0x8733; + public static final int GL_MODELVIEW18_ARB = 0x8732; + public static final int GL_MODELVIEW17_ARB = 0x8731; + public static final int GL_MODELVIEW16_ARB = 0x8730; + public static final int GL_MODELVIEW15_ARB = 0x872f; + public static final int GL_MODELVIEW14_ARB = 0x872e; + public static final int GL_MODELVIEW13_ARB = 0x872d; + public static final int GL_MODELVIEW12_ARB = 0x872c; + public static final int GL_MODELVIEW11_ARB = 0x872b; + public static final int GL_MODELVIEW10_ARB = 0x872a; + public static final int GL_MODELVIEW9_ARB = 0x8729; + public static final int GL_MODELVIEW8_ARB = 0x8728; + public static final int GL_MODELVIEW7_ARB = 0x8727; + public static final int GL_MODELVIEW6_ARB = 0x8726; + public static final int GL_MODELVIEW5_ARB = 0x8725; + public static final int GL_MODELVIEW4_ARB = 0x8724; + public static final int GL_MODELVIEW3_ARB = 0x8723; + public static final int GL_MODELVIEW2_ARB = 0x8722; + public static final int GL_MODELVIEW1_ARB = 0x850a; + public static final int GL_MODELVIEW0_ARB = 0x1700; + public static final int GL_WEIGHT_ARRAY_ARB = 0x86ad; + public static final int GL_WEIGHT_ARRAY_POINTER_ARB = 0x86ac; + public static final int GL_WEIGHT_ARRAY_SIZE_ARB = 0x86ab; + public static final int GL_WEIGHT_ARRAY_STRIDE_ARB = 0x86aa; + public static final int GL_WEIGHT_ARRAY_TYPE_ARB = 0x86a9; + public static final int GL_CURRENT_WEIGHT_ARB = 0x86a8; + public static final int GL_VERTEX_BLEND_ARB = 0x86a7; + public static final int GL_WEIGHT_SUM_UNITY_ARB = 0x86a6; + public static final int GL_ACTIVE_VERTEX_UNITS_ARB = 0x86a5; + public static final int GL_MAX_VERTEX_UNITS_ARB = 0x86a4; private ARBVertexBlend() { } static native void initNativeStubs() throws LWJGLException; - public static void glWeightARB(ByteBuffer pWeights) { + public static native void glVertexBlendARB(int count); + + public static void glWeightPointerARB(int size, boolean unsigned, int stride, IntBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglWeightPointerARB(size, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, stride, pPointer, pPointer.position() << 2); + } + public static void glWeightPointerARB(int size, int stride, FloatBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglWeightPointerARB(size, GL11.GL_FLOAT, stride, pPointer, pPointer.position() << 2); + } + public static void glWeightPointerARB(int size, boolean unsigned, int stride, ByteBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglWeightPointerARB(size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, pPointer, pPointer.position()); + } + public static void glWeightPointerARB(int size, boolean unsigned, int stride, ShortBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglWeightPointerARB(size, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, stride, pPointer, pPointer.position() << 1); + } + private static native void nglWeightPointerARB(int size, int type, int stride, Buffer pPointer, int pPointer_position); + public static void glWeightPointerARB(int size, int type, int stride, int pPointer_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglWeightPointerARBBO(size, type, stride, pPointer_buffer_offset); + } + private static native void nglWeightPointerARBBO(int size, int type, int stride, int pPointer_buffer_offset); + + public static void glWeightuARB(IntBuffer pWeights) { BufferChecks.checkDirect(pWeights); - nglWeightbvARB(pWeights.remaining(), pWeights, pWeights.position()); + nglWeightuivARB((pWeights.remaining()), pWeights, pWeights.position()); } + private static native void nglWeightuivARB(int size, IntBuffer pWeights, int pWeights_position); - private static native void nglWeightbvARB(int size, ByteBuffer pWeights, int pWeights_offset); - - public static void glWeightARB(FloatBuffer pfWeights) { - BufferChecks.checkDirect(pfWeights); - nglWeightfvARB(pfWeights.remaining(), pfWeights, pfWeights.position()); + public static void glWeightuARB(ShortBuffer pWeights) { + BufferChecks.checkDirect(pWeights); + nglWeightusvARB((pWeights.remaining()), pWeights, pWeights.position()); } - - private static native void nglWeightfvARB(int size, FloatBuffer pfWeights, int pfWeights_offset); - - public static void glWeightARB(IntBuffer piWeights) { - BufferChecks.checkDirect(piWeights); - nglWeightivARB(piWeights.remaining(), piWeights, piWeights.position()); - } - - private static native void nglWeightivARB(int size, IntBuffer piWeights, int piWeights_offset); - - public static void glWeightARB(ShortBuffer psWeights) { - BufferChecks.checkDirect(psWeights); - nglWeightsvARB(psWeights.remaining(), psWeights, psWeights.position()); - } - - private static native void nglWeightsvARB(int size, ShortBuffer psWeights, int psWeights_offset); + private static native void nglWeightusvARB(int size, ShortBuffer pWeights, int pWeights_position); public static void glWeightuARB(ByteBuffer pWeights) { BufferChecks.checkDirect(pWeights); - nglWeightubvARB(pWeights.remaining(), pWeights, pWeights.position()); + nglWeightubvARB((pWeights.remaining()), pWeights, pWeights.position()); } + private static native void nglWeightubvARB(int size, ByteBuffer pWeights, int pWeights_position); - private static native void nglWeightubvARB(int size, ByteBuffer pWeights, int pWeights_offset); - - public static void glWeightuARB(IntBuffer piWeights) { - BufferChecks.checkDirect(piWeights); - nglWeightuivARB(piWeights.remaining(), piWeights, piWeights.position()); + public static void glWeightARB(FloatBuffer pWeights) { + BufferChecks.checkDirect(pWeights); + nglWeightfvARB((pWeights.remaining()), pWeights, pWeights.position()); } + private static native void nglWeightfvARB(int size, FloatBuffer pWeights, int pWeights_position); - private static native void nglWeightuivARB(int size, IntBuffer piWeights, int piWeights_offset); - - public static void glWeightuARB(ShortBuffer psWeights) { - BufferChecks.checkDirect(psWeights); - nglWeightusvARB(psWeights.remaining(), psWeights, psWeights.position()); + public static void glWeightARB(IntBuffer pWeights) { + BufferChecks.checkDirect(pWeights); + nglWeightivARB((pWeights.remaining()), pWeights, pWeights.position()); } + private static native void nglWeightivARB(int size, IntBuffer pWeights, int pWeights_position); - private static native void nglWeightusvARB(int size, ShortBuffer psWeights, int psWeights_offset); - - public static void glWeightPointerARB(int size, boolean unsigned, int stride, ByteBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglWeightPointerARB(size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, pPointer, pPointer.position()); + public static void glWeightARB(ShortBuffer pWeights) { + BufferChecks.checkDirect(pWeights); + nglWeightsvARB((pWeights.remaining()), pWeights, pWeights.position()); } + private static native void nglWeightsvARB(int size, ShortBuffer pWeights, int pWeights_position); - public static void glWeightPointerARB(int size, boolean unsigned, int stride, ShortBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglWeightPointerARB(size, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, stride, pPointer, pPointer.position() << 1); + public static void glWeightARB(ByteBuffer pWeights) { + BufferChecks.checkDirect(pWeights); + nglWeightbvARB((pWeights.remaining()), pWeights, pWeights.position()); } - - public static void glWeightPointerARB(int size, int stride, FloatBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglWeightPointerARB(size, GL11.GL_FLOAT, stride, pPointer, pPointer.position() << 2); - } - - public static void glWeightPointerARB(int size, boolean unsigned, int stride, IntBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglWeightPointerARB(size, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, stride, pPointer, pPointer.position() << 2); - } - - private static native void nglWeightPointerARB(int size, int type, int stride, Buffer pPointer, int pPointer_offset); - - public static void glWeightPointerARB(int size, int type, int stride, int buffer_offset) { - GLBufferChecks.ensureArrayVBOenabled(); - nglWeightPointerARBVBO(size, type, stride, buffer_offset); - } - - private static native void nglWeightPointerARBVBO(int size, int type, int stride, int buffer_offset); - - public static native void glVertexBlendARB(int count); + private static native void nglWeightbvARB(int size, ByteBuffer pWeights, int pWeights_position); } diff --git a/src/java/org/lwjgl/opengl/ARBVertexBufferObject.java b/src/java/org/lwjgl/opengl/ARBVertexBufferObject.java index 43494a8d..dfdc67ce 100644 --- a/src/java/org/lwjgl/opengl/ARBVertexBufferObject.java +++ b/src/java/org/lwjgl/opengl/ARBVertexBufferObject.java @@ -1,68 +1,28 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; + public final class ARBVertexBufferObject extends ARBBufferObject { - - /* - * Accepted by the parameters of BindBufferARB, BufferDataARB, - * BufferSubDataARB, MapBufferARB, UnmapBufferARB, - * GetBufferSubDataARB, GetBufferParameterivARB, and - * GetBufferPointervARB: - */ - public static final int GL_ARRAY_BUFFER_ARB = 0x8892; - public static final int GL_ELEMENT_ARRAY_BUFFER_ARB = 0x8893; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ - public static final int GL_ARRAY_BUFFER_BINDING_ARB = 0x8894; - public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB = 0x8895; - public static final int GL_VERTEX_ARRAY_BUFFER_BINDING_ARB = 0x8896; - public static final int GL_NORMAL_ARRAY_BUFFER_BINDING_ARB = 0x8897; - public static final int GL_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x8898; + public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = 0x889f; + public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB = 0x889e; + public static final int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = 0x889d; + public static final int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x889c; + public static final int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = 0x889b; + public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = 0x889a; public static final int GL_INDEX_ARRAY_BUFFER_BINDING_ARB = 0x8899; - public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = 0x889A; - public static final int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = 0x889B; - public static final int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x889C; - public static final int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = 0x889D; - public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB = 0x889E; - - /* - * Accepted by the parameter of GetVertexAttribivARB: - */ - public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = 0x889F; + public static final int GL_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x8898; + public static final int GL_NORMAL_ARRAY_BUFFER_BINDING_ARB = 0x8897; + public static final int GL_VERTEX_ARRAY_BUFFER_BINDING_ARB = 0x8896; + public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB = 0x8895; + public static final int GL_ARRAY_BUFFER_BINDING_ARB = 0x8894; + public static final int GL_ELEMENT_ARRAY_BUFFER_ARB = 0x8893; + public static final int GL_ARRAY_BUFFER_ARB = 0x8892; private ARBVertexBufferObject() { } + } diff --git a/src/java/org/lwjgl/opengl/ARBVertexProgram.java b/src/java/org/lwjgl/opengl/ARBVertexProgram.java index 712ed97f..63f657ce 100644 --- a/src/java/org/lwjgl/opengl/ARBVertexProgram.java +++ b/src/java/org/lwjgl/opengl/ARBVertexProgram.java @@ -1,171 +1,98 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBVertexProgram extends ARBProgram { - - /* - * Accepted by the parameter of Disable, Enable, and IsEnabled, by the - * parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev, - * and by the parameter of ProgramStringARB, BindProgramARB, - * ProgramEnvParameter4[df][v]ARB, ProgramLocalParameter4[df][v]ARB, - * GetProgramEnvParameter[df]vARB, GetProgramLocalParameter[df]vARB, - * GetProgramivARB, and GetProgramStringARB. - */ - public static final int GL_VERTEX_PROGRAM_ARB = 0x8620; - - /* - * Accepted by the parameter of Disable, Enable, and IsEnabled, and by - * the parameter of GetBooleanv, GetIntegerv, GetFloatv, and - * GetDoublev: - */ - public static final int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642; - public static final int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643; - public static final int GL_COLOR_SUM_ARB = 0x8458; - - /* - * Accepted by the parameter of GetVertexAttrib[dfi]vARB: - */ - public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622; - public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623; - public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624; - public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625; - public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A; - public static final int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626; - - /* - * Accepted by the parameter of GetVertexAttribPointervARB: - */ - public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645; - - /* - * Accepted by the parameter of GetProgramivARB: - */ - public static final int GL_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B0; - public static final int GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B1; - public static final int GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B2; - public static final int GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B3; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ public static final int GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869; + public static final int GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88b3; + public static final int GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88b2; + public static final int GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88b1; + public static final int GL_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88b0; + public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645; + public static final int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626; + public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886a; + public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625; + public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624; + public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623; + public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622; + public static final int GL_COLOR_SUM_ARB = 0x8458; + public static final int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643; + public static final int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642; + public static final int GL_VERTEX_PROGRAM_ARB = 0x8620; private ARBVertexProgram() { } static native void initNativeStubs() throws LWJGLException; - public static native void glVertexAttrib1sARB(int index, short x); - - public static native void glVertexAttrib1fARB(int index, float x); - - public static native void glVertexAttrib2sARB(int index, short x, short y); - - public static native void glVertexAttrib2fARB(int index, float x, float y); - - public static native void glVertexAttrib3sARB(int index, short x, short y, short z); - - public static native void glVertexAttrib3fARB(int index, float x, float y, float z); - - public static native void glVertexAttrib4sARB(int index, short x, short y, short z, short w); - - public static native void glVertexAttrib4fARB(int index, float x, float y, float z, float w); - - public static native void glVertexAttrib4NubARB(int index, byte x, byte y, byte z, byte w); - - public static void glVertexAttribPointerARB(int index, int size, boolean unsigned, boolean normalized, int stride, ByteBuffer buffer) { - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointerARB(index, size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, normalized, stride, buffer, buffer.position()); + public static java.nio.ByteBuffer glGetVertexAttribPointerARB(int index, int pname, int result_size) { + java.nio.ByteBuffer __result = nglGetVertexAttribPointervARB(index, pname, result_size); + return __result; } + private static native java.nio.ByteBuffer nglGetVertexAttribPointervARB(int index, int pname, int result_size); - public static void glVertexAttribPointerARB(int index, int size, boolean unsigned, boolean normalized, int stride, ShortBuffer buffer) { - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointerARB(index, size, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, normalized, stride, buffer, buffer.position() << 1); + public static void glGetVertexAttribARB(int index, int pname, IntBuffer params) { + BufferChecks.checkDirect(params); + nglGetVertexAttribivARB(index, pname, params, params.position()); } + private static native void nglGetVertexAttribivARB(int index, int pname, IntBuffer params, int params_position); - public static void glVertexAttribPointerARB(int index, int size, boolean normalized, int stride, FloatBuffer buffer) { - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointerARB(index, size, GL11.GL_FLOAT, normalized, stride, buffer, buffer.position() << 2); + public static void glGetVertexAttribARB(int index, int pname, FloatBuffer params) { + BufferChecks.checkDirect(params); + nglGetVertexAttribfvARB(index, pname, params, params.position()); } - - public static void glVertexAttribPointerARB(int index, int size, boolean unsigned, boolean normalized, int stride, IntBuffer buffer) { - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointerARB(index, size, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, normalized, stride, buffer, buffer.position() << 2); - } - - private static native void nglVertexAttribPointerARB(int index, int size, int type, boolean normalized, int stride, Buffer buffer, int bufferOffset); - - // --------------------------- - public static void glVertexAttribPointerARB(int index, int size, int type, boolean normalized, int stride, int bufferOffset) { - GLBufferChecks.ensureArrayVBOenabled(); - nglVertexAttribPointerARBVBO(index, size, type, normalized, stride, bufferOffset); - } - - private static native void nglVertexAttribPointerARBVBO(int index, int size, int type, boolean normalized, int stride, int bufferOffset); - // --------------------------- - - public static native void glEnableVertexAttribArrayARB(int index); + private static native void nglGetVertexAttribfvARB(int index, int pname, FloatBuffer params, int params_position); public static native void glDisableVertexAttribArrayARB(int index); - // --------------------------- - public static void glGetVertexAttribARB(int index, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetVertexAttribfvARB(index, pname, params, params.position()); + public static native void glEnableVertexAttribArrayARB(int index); + + public static void glVertexAttribPointerARB(int index, int size, boolean unsigned, boolean normalized, int stride, IntBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointerARB(index, size, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, normalized, stride, buffer, buffer.position() << 2); } - - private static native void nglGetVertexAttribfvARB(int index, int pname, FloatBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetVertexAttribARB(int index, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetVertexAttribivARB(index, pname, params, params.position()); + public static void glVertexAttribPointerARB(int index, int size, boolean normalized, int stride, FloatBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointerARB(index, size, GL11.GL_FLOAT, normalized, stride, buffer, buffer.position() << 2); } + public static void glVertexAttribPointerARB(int index, int size, boolean unsigned, boolean normalized, int stride, ByteBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointerARB(index, size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, normalized, stride, buffer, buffer.position()); + } + public static void glVertexAttribPointerARB(int index, int size, boolean unsigned, boolean normalized, int stride, ShortBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointerARB(index, size, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, normalized, stride, buffer, buffer.position() << 1); + } + private static native void nglVertexAttribPointerARB(int index, int size, int type, boolean normalized, int stride, Buffer buffer, int buffer_position); + public static void glVertexAttribPointerARB(int index, int size, int type, boolean normalized, int stride, int buffer_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglVertexAttribPointerARBBO(index, size, type, normalized, stride, buffer_buffer_offset); + } + private static native void nglVertexAttribPointerARBBO(int index, int size, int type, boolean normalized, int stride, int buffer_buffer_offset); - private static native void nglGetVertexAttribivARB(int index, int pname, IntBuffer params, int paramsOffset); - // --------------------------- + public static native void glVertexAttrib4NubARB(int index, byte x, byte y, byte z, byte w); - public static native ByteBuffer glGetVertexAttribPointerARB(int index, int pname, int size); + public static native void glVertexAttrib4fARB(int index, float x, float y, float z, float w); + public static native void glVertexAttrib4sARB(int index, short x, short y, short z, short w); + + public static native void glVertexAttrib3fARB(int index, float x, float y, float z); + + public static native void glVertexAttrib3sARB(int index, short x, short y, short z); + + public static native void glVertexAttrib2fARB(int index, float x, float y); + + public static native void glVertexAttrib2sARB(int index, short x, short y); + + public static native void glVertexAttrib1fARB(int index, float x); + + public static native void glVertexAttrib1sARB(int index, short x); } diff --git a/src/java/org/lwjgl/opengl/ARBVertexShader.java b/src/java/org/lwjgl/opengl/ARBVertexShader.java index e70430da..03705bdd 100644 --- a/src/java/org/lwjgl/opengl/ARBVertexShader.java +++ b/src/java/org/lwjgl/opengl/ARBVertexShader.java @@ -1,146 +1,66 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.ByteBuffer; -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBVertexShader { - - /* - * Accepted by the argument of CreateShaderObjectARB and - * returned by the parameter of GetObjectParameter{if}vARB: - */ - public static final int GL_VERTEX_SHADER_ARB = 0x8B31; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ - public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB = 0x8B4A; - public static final int GL_MAX_VARYING_FLOATS_ARB = 0x8B4B; - public static final int GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869; - public static final int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; - public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8B4C; - public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = 0x8B4D; - public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; - - /* - * Accepted by the parameter of Disable, Enable, and IsEnabled, and - * by the parameter of GetBooleanv, GetIntegerv, GetFloatv, and - * GetDoublev: - */ - public static final int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642; - public static final int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643; - - /* - * Accepted by the parameter GetObjectParameter{if}vARB: - */ - public static final int GL_OBJECT_ACTIVE_ATTRIBUTES_ARB = 0x8B89; - public static final int GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = 0x8B8A; - - /* - * Accepted by the parameter of GetVertexAttrib{dfi}vARB: - */ - public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622; - public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623; - public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624; - public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625; - public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A; - public static final int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626; - - /* - * Accepted by the parameter of GetVertexAttribPointervARB: - */ - public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645; - - /* - * Returned by the parameter of GetActiveAttribARB: - */ + public static final int GL_FLOAT_MAT4_ARB = 0x8b5c; + public static final int GL_FLOAT_MAT3_ARB = 0x8b5b; + public static final int GL_FLOAT_MAT2_ARB = 0x8b5a; + public static final int GL_FLOAT_VEC4_ARB = 0x8b52; + public static final int GL_FLOAT_VEC3_ARB = 0x8b51; + public static final int GL_FLOAT_VEC2_ARB = 0x8b50; public static final int GL_FLOAT = 0x1406; - public static final int GL_FLOAT_VEC2_ARB = 0x8B50; - public static final int GL_FLOAT_VEC3_ARB = 0x8B51; - public static final int GL_FLOAT_VEC4_ARB = 0x8B52; - public static final int GL_FLOAT_MAT2_ARB = 0x8B5A; - public static final int GL_FLOAT_MAT3_ARB = 0x8B5B; - public static final int GL_FLOAT_MAT4_ARB = 0x8B5C; + public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645; + public static final int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626; + public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886a; + public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625; + public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624; + public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623; + public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622; + public static final int GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = 0x8b8a; + public static final int GL_OBJECT_ACTIVE_ATTRIBUTES_ARB = 0x8b89; + public static final int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643; + public static final int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642; + public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; + public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = 0x8b4d; + public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8b4c; + public static final int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; + public static final int GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869; + public static final int GL_MAX_VARYING_FLOATS_ARB = 0x8b4b; + public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB = 0x8b4a; + public static final int GL_VERTEX_SHADER_ARB = 0x8b31; private ARBVertexShader() { } static native void initNativeStubs() throws LWJGLException; - // --------------------------- - public static void glBindAttribLocationARB(int programObj, int index, ByteBuffer name) { - BufferChecks.checkDirect(name); - if ( name.get(name.limit() - 1) != 0 ) { - throw new IllegalArgumentException(" must be a null-terminated string."); - } - nglBindAttribLocationARB(programObj, index, name, name.position()); - } - - private static native void nglBindAttribLocationARB(int programObj, int index, ByteBuffer name, int nameOffset); - // --------------------------- - - // --------------------------- - public static void glGetActiveAttribARB(int programObj, int index, IntBuffer length, IntBuffer size, IntBuffer type, ByteBuffer name) { - BufferChecks.checkDirect(name); - BufferChecks.checkDirect(size); - BufferChecks.checkDirect(type); - - if ( length == null ) { - nglGetActiveAttribARB(programObj, index, name.remaining(), null, -1, size, size.position(), type, type.position(), name, name.position()); - } else { - BufferChecks.checkDirect(length); - nglGetActiveAttribARB(programObj, index, name.remaining(), length, length.position(), size, size.position(), type, type.position(), name, name.position()); - } - } - - private static native void nglGetActiveAttribARB(int programObj, int index, int maxLength, IntBuffer length, int lengthOffset, IntBuffer size, int sizeOffset, IntBuffer type, int typeOffset, ByteBuffer name, int nameOffset); - // --------------------------- - - // --------------------------- public static int glGetAttribLocationARB(int programObj, ByteBuffer name) { BufferChecks.checkDirect(name); - if ( name.get(name.limit() - 1) != 0 ) { - throw new IllegalArgumentException(" must be a null-terminated string."); - } - return nglGetAttribLocationARB(programObj, name, name.position()); + BufferChecks.checkNullTerminated(name); + int __result = nglGetAttribLocationARB(programObj, name, name.position()); + return __result; } + private static native int nglGetAttribLocationARB(int programObj, ByteBuffer name, int name_position); - private static native int nglGetAttribLocationARB(int programObj, ByteBuffer name, int nameOffset); - // --------------------------- + public static void glGetActiveAttribARB(int programObj, int index, IntBuffer length, IntBuffer size, IntBuffer type, ByteBuffer name) { + if (length != null) + BufferChecks.checkBuffer(length, 1); + BufferChecks.checkBuffer(size, 1); + BufferChecks.checkBuffer(type, 1); + BufferChecks.checkDirect(name); + nglGetActiveAttribARB(programObj, index, (name.remaining()), length, length != null ? length.position() : 0, size, size.position(), type, type.position(), name, name.position()); + } + private static native void nglGetActiveAttribARB(int programObj, int index, int maxLength, IntBuffer length, int length_position, IntBuffer size, int size_position, IntBuffer type, int type_position, ByteBuffer name, int name_position); + public static void glBindAttribLocationARB(int programObj, int index, ByteBuffer name) { + BufferChecks.checkDirect(name); + BufferChecks.checkNullTerminated(name); + nglBindAttribLocationARB(programObj, index, name, name.position()); + } + private static native void nglBindAttribLocationARB(int programObj, int index, ByteBuffer name, int name_position); } diff --git a/src/java/org/lwjgl/opengl/ARBWindowPos.java b/src/java/org/lwjgl/opengl/ARBWindowPos.java index 476f4940..69c4b2fd 100644 --- a/src/java/org/lwjgl/opengl/ARBWindowPos.java +++ b/src/java/org/lwjgl/opengl/ARBWindowPos.java @@ -1,37 +1,10 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class ARBWindowPos { @@ -40,15 +13,15 @@ public final class ARBWindowPos { static native void initNativeStubs() throws LWJGLException; - public static native void glWindowPos2fARB(float x, float y); - - public static native void glWindowPos2iARB(int x, int y); - - public static native void glWindowPos2sARB(short x, short y); - - public static native void glWindowPos3fARB(float x, float y, float z); + public static native void glWindowPos3sARB(short x, short y, short z); public static native void glWindowPos3iARB(int x, int y, int z); - public static native void glWindowPos3sARB(short x, short y, short z); + public static native void glWindowPos3fARB(float x, float y, float z); + + public static native void glWindowPos2sARB(short x, short y); + + public static native void glWindowPos2iARB(int x, int y); + + public static native void glWindowPos2fARB(float x, float y); } diff --git a/src/java/org/lwjgl/opengl/ATIDrawBuffers.java b/src/java/org/lwjgl/opengl/ATIDrawBuffers.java index 54613289..0f037bb1 100644 --- a/src/java/org/lwjgl/opengl/ATIDrawBuffers.java +++ b/src/java/org/lwjgl/opengl/ATIDrawBuffers.java @@ -1,77 +1,38 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ATIDrawBuffers { - - /* - * Accepted by the parameters of GetIntegerv, GetFloatv, - * and GetDoublev: - */ - public static final int GL_MAX_DRAW_BUFFERS_ATI = 0x8824; - public static final int GL_DRAW_BUFFER0_ATI = 0x8825; - public static final int GL_DRAW_BUFFER1_ATI = 0x8826; - public static final int GL_DRAW_BUFFER2_ATI = 0x8827; - public static final int GL_DRAW_BUFFER3_ATI = 0x8828; - public static final int GL_DRAW_BUFFER4_ATI = 0x8829; - public static final int GL_DRAW_BUFFER5_ATI = 0x882A; - public static final int GL_DRAW_BUFFER6_ATI = 0x882B; - public static final int GL_DRAW_BUFFER7_ATI = 0x882C; - public static final int GL_DRAW_BUFFER8_ATI = 0x882D; - public static final int GL_DRAW_BUFFER9_ATI = 0x882E; - public static final int GL_DRAW_BUFFER10_ATI = 0x882F; - public static final int GL_DRAW_BUFFER11_ATI = 0x8830; - public static final int GL_DRAW_BUFFER12_ATI = 0x8831; - public static final int GL_DRAW_BUFFER13_ATI = 0x8832; - public static final int GL_DRAW_BUFFER14_ATI = 0x8833; public static final int GL_DRAW_BUFFER15_ATI = 0x8834; + public static final int GL_DRAW_BUFFER14_ATI = 0x8833; + public static final int GL_DRAW_BUFFER13_ATI = 0x8832; + public static final int GL_DRAW_BUFFER12_ATI = 0x8831; + public static final int GL_DRAW_BUFFER11_ATI = 0x8830; + public static final int GL_DRAW_BUFFER10_ATI = 0x882f; + public static final int GL_DRAW_BUFFER9_ATI = 0x882e; + public static final int GL_DRAW_BUFFER8_ATI = 0x882d; + public static final int GL_DRAW_BUFFER7_ATI = 0x882c; + public static final int GL_DRAW_BUFFER6_ATI = 0x882b; + public static final int GL_DRAW_BUFFER5_ATI = 0x882a; + public static final int GL_DRAW_BUFFER4_ATI = 0x8829; + public static final int GL_DRAW_BUFFER3_ATI = 0x8828; + public static final int GL_DRAW_BUFFER2_ATI = 0x8827; + public static final int GL_DRAW_BUFFER1_ATI = 0x8826; + public static final int GL_DRAW_BUFFER0_ATI = 0x8825; + public static final int GL_MAX_DRAW_BUFFERS_ATI = 0x8824; private ATIDrawBuffers() { } static native void initNativeStubs() throws LWJGLException; - // --------------------------- public static void glDrawBuffersATI(IntBuffer buffers) { - BufferChecks.checkBuffer(buffers, 1); - nglDrawBuffersATI(buffers.remaining(), buffers, buffers.position()); + BufferChecks.checkDirect(buffers); + nglDrawBuffersATI((buffers.remaining()), buffers, buffers.position()); } - - private static native void nglDrawBuffersATI(int size, IntBuffer buffers, int buffersOffset); - // --------------------------- - + private static native void nglDrawBuffersATI(int size, IntBuffer buffers, int buffers_position); } diff --git a/src/java/org/lwjgl/opengl/ATIElementArray.java b/src/java/org/lwjgl/opengl/ATIElementArray.java index 04cc4737..97bc2752 100644 --- a/src/java/org/lwjgl/opengl/ATIElementArray.java +++ b/src/java/org/lwjgl/opengl/ATIElementArray.java @@ -1,83 +1,44 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ATIElementArray { - - public static final int GL_ELEMENT_ARRAY_ATI = 0x8768; + public static final int GL_ELEMENT_ARRAY_POINTER_ATI = 0x876a; public static final int GL_ELEMENT_ARRAY_TYPE_ATI = 0x8769; - public static final int GL_ELEMENT_ARRAY_POINTER_ATI = 0x876A; + public static final int GL_ELEMENT_ARRAY_ATI = 0x8768; private ATIElementArray() { } static native void initNativeStubs() throws LWJGLException; - public static void glElementPointerATI(ByteBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglElementPointerATI(GL11.GL_UNSIGNED_BYTE, pPointer, pPointer.position()); - } - - public static void glElementPointerATI(ShortBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglElementPointerATI(GL11.GL_UNSIGNED_SHORT, pPointer, pPointer.position() << 1); - } - - public static void glElementPointerATI(IntBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglElementPointerATI(GL11.GL_UNSIGNED_INT, pPointer, pPointer.position() << 2); - } - - private static native void nglElementPointerATI(int type, Buffer pPointer, int pPointer_offset); - - public static void glElementPointerATI(int type, int buffer_offset) { - GLBufferChecks.ensureArrayVBOenabled(); - nglElementPointerATIVBO(type, buffer_offset); - } - - private static native void nglElementPointerATIVBO(int type, int buffer_offset); + public static native void glDrawRangeElementArrayATI(int mode, int start, int end, int count); public static native void glDrawElementArrayATI(int mode, int count); - public static native void glDrawRangeElementArrayATI(int mode, int start, int end, int count); + public static void glElementPointerATI(IntBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglElementPointerATI(GL11.GL_UNSIGNED_INT, pPointer, pPointer.position() << 2); + } + public static void glElementPointerATI(ByteBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglElementPointerATI(GL11.GL_UNSIGNED_BYTE, pPointer, pPointer.position()); + } + public static void glElementPointerATI(ShortBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglElementPointerATI(GL11.GL_UNSIGNED_SHORT, pPointer, pPointer.position() << 1); + } + private static native void nglElementPointerATI(int type, Buffer pPointer, int pPointer_position); + public static void glElementPointerATI(int type, int pPointer_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglElementPointerATIBO(type, pPointer_buffer_offset); + } + private static native void nglElementPointerATIBO(int type, int pPointer_buffer_offset); } diff --git a/src/java/org/lwjgl/opengl/ATIEnvmapBumpmap.java b/src/java/org/lwjgl/opengl/ATIEnvmapBumpmap.java index 85298165..b7e300bf 100644 --- a/src/java/org/lwjgl/opengl/ATIEnvmapBumpmap.java +++ b/src/java/org/lwjgl/opengl/ATIEnvmapBumpmap.java @@ -1,83 +1,47 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.FloatBuffer; -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ATIEnvmapBumpmap { - - public static final int GL_BUMP_ROT_MATRIX_ATI = 0x8775; - public static final int GL_BUMP_ROT_MATRIX_SIZE_ATI = 0x8776; - public static final int GL_BUMP_NUM_TEX_UNITS_ATI = 0x8777; - public static final int GL_BUMP_TEX_UNITS_ATI = 0x8778; + public static final int GL_BUMP_TARGET_ATI = 0x877c; + public static final int GL_BUMP_ENVMAP_ATI = 0x877b; + public static final int GL_DU8DV8_ATI = 0x877a; public static final int GL_DUDV_ATI = 0x8779; - public static final int GL_DU8DV8_ATI = 0x877A; - public static final int GL_BUMP_ENVMAP_ATI = 0x877B; - public static final int GL_BUMP_TARGET_ATI = 0x877C; + public static final int GL_BUMP_TEX_UNITS_ATI = 0x8778; + public static final int GL_BUMP_NUM_TEX_UNITS_ATI = 0x8777; + public static final int GL_BUMP_ROT_MATRIX_SIZE_ATI = 0x8776; + public static final int GL_BUMP_ROT_MATRIX_ATI = 0x8775; private ATIEnvmapBumpmap() { } static native void initNativeStubs() throws LWJGLException; - public static void glTexBumpParameterATI(int pname, FloatBuffer pfParam) { - BufferChecks.checkBuffer(pfParam); - nglTexBumpParameterfvATI(pname, pfParam, pfParam.position()); + public static void glGetTexBumpParameterATI(int pname, IntBuffer param) { + BufferChecks.checkBuffer(param, 4); + nglGetTexBumpParameterivATI(pname, param, param.position()); } + private static native void nglGetTexBumpParameterivATI(int pname, IntBuffer param, int param_position); - private static native void nglTexBumpParameterfvATI(int pname, FloatBuffer pfParam, int pfParam_offset); - - public static void glTexBumpParameterATI(int pname, IntBuffer piParam) { - BufferChecks.checkBuffer(piParam); - nglTexBumpParameterivATI(pname, piParam, piParam.position()); + public static void glGetTexBumpParameterATI(int pname, FloatBuffer param) { + BufferChecks.checkBuffer(param, 4); + nglGetTexBumpParameterfvATI(pname, param, param.position()); } + private static native void nglGetTexBumpParameterfvATI(int pname, FloatBuffer param, int param_position); - private static native void nglTexBumpParameterivATI(int pname, IntBuffer piParam, int piParam_offset); - - public static void glGetTexBumpParameterATI(int pname, FloatBuffer pfParam) { - BufferChecks.checkBuffer(pfParam); - nglGetTexBumpParameterfvATI(pname, pfParam, pfParam.position()); + public static void glTexBumpParameterATI(int pname, IntBuffer param) { + BufferChecks.checkBuffer(param, 4); + nglTexBumpParameterivATI(pname, param, param.position()); } + private static native void nglTexBumpParameterivATI(int pname, IntBuffer param, int param_position); - private static native void nglGetTexBumpParameterfvATI(int pname, FloatBuffer pfParam, int pfParam_offset); - - public static void glGetTexBumpParameterATI(int pname, IntBuffer piParam) { - BufferChecks.checkBuffer(piParam); - nglGetTexBumpParameterivATI(pname, piParam, piParam.position()); + public static void glTexBumpParameterATI(int pname, FloatBuffer param) { + BufferChecks.checkBuffer(param, 4); + nglTexBumpParameterfvATI(pname, param, param.position()); } - - private static native void nglGetTexBumpParameterivATI(int pname, IntBuffer piParam, int piParam_offset); + private static native void nglTexBumpParameterfvATI(int pname, FloatBuffer param, int param_position); } diff --git a/src/java/org/lwjgl/opengl/ATIFragmentShader.java b/src/java/org/lwjgl/opengl/ATIFragmentShader.java index 6f44a1fd..d5532bf6 100644 --- a/src/java/org/lwjgl/opengl/ATIFragmentShader.java +++ b/src/java/org/lwjgl/opengl/ATIFragmentShader.java @@ -1,188 +1,151 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -/* - * Note: 2X_BIT_ATI, 4X_BIT_ATI and 8X_BIT_ATI has been changed to X2_BIT_ATI, X4_BIT_ATI and X8_BIT_ATI - * because variables cannot start with a number. - * - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.FloatBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ATIFragmentShader { - - public static final int GL_FRAGMENT_SHADER_ATI = 0x8920; - public static final int GL_REG_0_ATI = 0x8921; - public static final int GL_REG_1_ATI = 0x8922; - public static final int GL_REG_2_ATI = 0x8923; - public static final int GL_REG_3_ATI = 0x8924; - public static final int GL_REG_4_ATI = 0x8925; - public static final int GL_REG_5_ATI = 0x8926; - public static final int GL_REG_6_ATI = 0x8927; - public static final int GL_REG_7_ATI = 0x8928; - public static final int GL_REG_8_ATI = 0x8929; - public static final int GL_REG_9_ATI = 0x892A; - public static final int GL_REG_10_ATI = 0x892B; - public static final int GL_REG_11_ATI = 0x892C; - public static final int GL_REG_12_ATI = 0x892D; - public static final int GL_REG_13_ATI = 0x892E; - public static final int GL_REG_14_ATI = 0x892F; - public static final int GL_REG_15_ATI = 0x8930; - public static final int GL_REG_16_ATI = 0x8931; - public static final int GL_REG_17_ATI = 0x8932; - public static final int GL_REG_18_ATI = 0x8933; - public static final int GL_REG_19_ATI = 0x8934; - public static final int GL_REG_20_ATI = 0x8935; - public static final int GL_REG_21_ATI = 0x8936; - public static final int GL_REG_22_ATI = 0x8937; - public static final int GL_REG_23_ATI = 0x8938; - public static final int GL_REG_24_ATI = 0x8939; - public static final int GL_REG_25_ATI = 0x893A; - public static final int GL_REG_26_ATI = 0x893B; - public static final int GL_REG_27_ATI = 0x893C; - public static final int GL_REG_28_ATI = 0x893D; - public static final int GL_REG_29_ATI = 0x893E; - public static final int GL_REG_30_ATI = 0x893F; - public static final int GL_REG_31_ATI = 0x8940; - public static final int GL_CON_0_ATI = 0x8941; - public static final int GL_CON_1_ATI = 0x8942; - public static final int GL_CON_2_ATI = 0x8943; - public static final int GL_CON_3_ATI = 0x8944; - public static final int GL_CON_4_ATI = 0x8945; - public static final int GL_CON_5_ATI = 0x8946; - public static final int GL_CON_6_ATI = 0x8947; - public static final int GL_CON_7_ATI = 0x8948; - public static final int GL_CON_8_ATI = 0x8949; - public static final int GL_CON_9_ATI = 0x894A; - public static final int GL_CON_10_ATI = 0x894B; - public static final int GL_CON_11_ATI = 0x894C; - public static final int GL_CON_12_ATI = 0x894D; - public static final int GL_CON_13_ATI = 0x894E; - public static final int GL_CON_14_ATI = 0x894F; - public static final int GL_CON_15_ATI = 0x8950; - public static final int GL_CON_16_ATI = 0x8951; - public static final int GL_CON_17_ATI = 0x8952; - public static final int GL_CON_18_ATI = 0x8953; - public static final int GL_CON_19_ATI = 0x8954; - public static final int GL_CON_20_ATI = 0x8955; - public static final int GL_CON_21_ATI = 0x8956; - public static final int GL_CON_22_ATI = 0x8957; - public static final int GL_CON_23_ATI = 0x8958; - public static final int GL_CON_24_ATI = 0x8959; - public static final int GL_CON_25_ATI = 0x895A; - public static final int GL_CON_26_ATI = 0x895B; - public static final int GL_CON_27_ATI = 0x895C; - public static final int GL_CON_28_ATI = 0x895D; - public static final int GL_CON_29_ATI = 0x895E; - public static final int GL_CON_30_ATI = 0x895F; - public static final int GL_CON_31_ATI = 0x8960; - public static final int GL_MOV_ATI = 0x8961; - public static final int GL_ADD_ATI = 0x8963; - public static final int GL_MUL_ATI = 0x8964; - public static final int GL_SUB_ATI = 0x8965; - public static final int GL_DOT3_ATI = 0x8966; - public static final int GL_DOT4_ATI = 0x8967; - public static final int GL_MAD_ATI = 0x8968; - public static final int GL_LERP_ATI = 0x8969; - public static final int GL_CND_ATI = 0x896A; - public static final int GL_CND0_ATI = 0x896B; - public static final int GL_DOT2_ADD_ATI = 0x896C; - public static final int GL_SECONDARY_INTERPOLATOR_ATI = 0x896D; - public static final int GL_NUM_FRAGMENT_REGISTERS_ATI = 0x896E; - public static final int GL_NUM_FRAGMENT_CONSTANTS_ATI = 0x896F; - public static final int GL_NUM_PASSES_ATI = 0x8970; - public static final int GL_NUM_INSTRUCTIONS_PER_PASS_ATI = 0x8971; - public static final int GL_NUM_INSTRUCTIONS_TOTAL_ATI = 0x8972; - public static final int GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI = 0x8973; - public static final int GL_NUM_LOOPBACK_COMPONENTS_ATI = 0x8974; - public static final int GL_COLOR_ALPHA_PAIRING_ATI = 0x8975; - public static final int GL_SWIZZLE_STR_ATI = 0x8976; - public static final int GL_SWIZZLE_STQ_ATI = 0x8977; - public static final int GL_SWIZZLE_STR_DR_ATI = 0x8978; + public static final int GL_BIAS_BIT_ATI = 0x8; + public static final int GL_NEGATE_BIT_ATI = 0x4; + public static final int GL_COMP_BIT_ATI = 0x2; + public static final int GL_SATURATE_BIT_ATI = 0x40; + public static final int GL_EIGHTH_BIT_ATI = 0x20; + public static final int GL_QUARTER_BIT_ATI = 0x10; + public static final int GL_HALF_BIT_ATI = 0x8; + public static final int GL_X8_BIT_ATI = 0x4; + public static final int GL_X4_BIT_ATI = 0x2; + public static final int GL_X2_BIT_ATI = 0x1; + public static final int GL_BLUE_BIT_ATI = 0x4; + public static final int GL_GREEN_BIT_ATI = 0x2; + public static final int GL_RED_BIT_ATI = 0x1; + public static final int GL_SWIZZLE_STRQ_DQ_ATI = 0x897b; + public static final int GL_SWIZZLE_STRQ_ATI = 0x897a; public static final int GL_SWIZZLE_STQ_DQ_ATI = 0x8979; - public static final int GL_SWIZZLE_STRQ_ATI = 0x897A; - public static final int GL_SWIZZLE_STRQ_DQ_ATI = 0x897B; - public static final int GL_RED_BIT_ATI = 0x00000001; - public static final int GL_GREEN_BIT_ATI = 0x00000002; - public static final int GL_BLUE_BIT_ATI = 0x00000004; - public static final int GL_X2_BIT_ATI = 0x00000001; - public static final int GL_X4_BIT_ATI = 0x00000002; - public static final int GL_X8_BIT_ATI = 0x00000004; - public static final int GL_HALF_BIT_ATI = 0x00000008; - public static final int GL_QUARTER_BIT_ATI = 0x00000010; - public static final int GL_EIGHTH_BIT_ATI = 0x00000020; - public static final int GL_SATURATE_BIT_ATI = 0x00000040; - public static final int GL_COMP_BIT_ATI = 0x00000002; - public static final int GL_NEGATE_BIT_ATI = 0x00000004; - public static final int GL_BIAS_BIT_ATI = 0x00000008; + public static final int GL_SWIZZLE_STR_DR_ATI = 0x8978; + public static final int GL_SWIZZLE_STQ_ATI = 0x8977; + public static final int GL_SWIZZLE_STR_ATI = 0x8976; + public static final int GL_COLOR_ALPHA_PAIRING_ATI = 0x8975; + public static final int GL_NUM_LOOPBACK_COMPONENTS_ATI = 0x8974; + public static final int GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI = 0x8973; + public static final int GL_NUM_INSTRUCTIONS_TOTAL_ATI = 0x8972; + public static final int GL_NUM_INSTRUCTIONS_PER_PASS_ATI = 0x8971; + public static final int GL_NUM_PASSES_ATI = 0x8970; + public static final int GL_NUM_FRAGMENT_CONSTANTS_ATI = 0x896f; + public static final int GL_NUM_FRAGMENT_REGISTERS_ATI = 0x896e; + public static final int GL_SECONDARY_INTERPOLATOR_ATI = 0x896d; + public static final int GL_DOT2_ADD_ATI = 0x896c; + public static final int GL_CND0_ATI = 0x896b; + public static final int GL_CND_ATI = 0x896a; + public static final int GL_LERP_ATI = 0x8969; + public static final int GL_MAD_ATI = 0x8968; + public static final int GL_DOT4_ATI = 0x8967; + public static final int GL_DOT3_ATI = 0x8966; + public static final int GL_SUB_ATI = 0x8965; + public static final int GL_MUL_ATI = 0x8964; + public static final int GL_ADD_ATI = 0x8963; + public static final int GL_MOV_ATI = 0x8961; + public static final int GL_CON_31_ATI = 0x8960; + public static final int GL_CON_30_ATI = 0x895f; + public static final int GL_CON_29_ATI = 0x895e; + public static final int GL_CON_28_ATI = 0x895d; + public static final int GL_CON_27_ATI = 0x895c; + public static final int GL_CON_26_ATI = 0x895b; + public static final int GL_CON_25_ATI = 0x895a; + public static final int GL_CON_24_ATI = 0x8959; + public static final int GL_CON_23_ATI = 0x8958; + public static final int GL_CON_22_ATI = 0x8957; + public static final int GL_CON_21_ATI = 0x8956; + public static final int GL_CON_20_ATI = 0x8955; + public static final int GL_CON_19_ATI = 0x8954; + public static final int GL_CON_18_ATI = 0x8953; + public static final int GL_CON_17_ATI = 0x8952; + public static final int GL_CON_16_ATI = 0x8951; + public static final int GL_CON_15_ATI = 0x8950; + public static final int GL_CON_14_ATI = 0x894f; + public static final int GL_CON_13_ATI = 0x894e; + public static final int GL_CON_12_ATI = 0x894d; + public static final int GL_CON_11_ATI = 0x894c; + public static final int GL_CON_10_ATI = 0x894b; + public static final int GL_CON_9_ATI = 0x894a; + public static final int GL_CON_8_ATI = 0x8949; + public static final int GL_CON_7_ATI = 0x8948; + public static final int GL_CON_6_ATI = 0x8947; + public static final int GL_CON_5_ATI = 0x8946; + public static final int GL_CON_4_ATI = 0x8945; + public static final int GL_CON_3_ATI = 0x8944; + public static final int GL_CON_2_ATI = 0x8943; + public static final int GL_CON_1_ATI = 0x8942; + public static final int GL_CON_0_ATI = 0x8941; + public static final int GL_REG_31_ATI = 0x8940; + public static final int GL_REG_30_ATI = 0x893f; + public static final int GL_REG_29_ATI = 0x893e; + public static final int GL_REG_28_ATI = 0x893d; + public static final int GL_REG_27_ATI = 0x893c; + public static final int GL_REG_26_ATI = 0x893b; + public static final int GL_REG_25_ATI = 0x893a; + public static final int GL_REG_24_ATI = 0x8939; + public static final int GL_REG_23_ATI = 0x8938; + public static final int GL_REG_22_ATI = 0x8937; + public static final int GL_REG_21_ATI = 0x8936; + public static final int GL_REG_20_ATI = 0x8935; + public static final int GL_REG_19_ATI = 0x8934; + public static final int GL_REG_18_ATI = 0x8933; + public static final int GL_REG_17_ATI = 0x8932; + public static final int GL_REG_16_ATI = 0x8931; + public static final int GL_REG_15_ATI = 0x8930; + public static final int GL_REG_14_ATI = 0x892f; + public static final int GL_REG_13_ATI = 0x892e; + public static final int GL_REG_12_ATI = 0x892d; + public static final int GL_REG_11_ATI = 0x892c; + public static final int GL_REG_10_ATI = 0x892b; + public static final int GL_REG_9_ATI = 0x892a; + public static final int GL_REG_8_ATI = 0x8929; + public static final int GL_REG_7_ATI = 0x8928; + public static final int GL_REG_6_ATI = 0x8927; + public static final int GL_REG_5_ATI = 0x8926; + public static final int GL_REG_4_ATI = 0x8925; + public static final int GL_REG_3_ATI = 0x8924; + public static final int GL_REG_2_ATI = 0x8923; + public static final int GL_REG_1_ATI = 0x8922; + public static final int GL_REG_0_ATI = 0x8921; + public static final int GL_FRAGMENT_SHADER_ATI = 0x8920; private ATIFragmentShader() { } static native void initNativeStubs() throws LWJGLException; - public static native int glGenFragmentShadersATI(int range); - - public static native void glBindFragmentShaderATI(int id); - - public static native void glDeleteFragmentShaderATI(int id); - - public static native void glBeginFragmentShaderATI(); - - public static native void glEndFragmentShaderATI(); - - public static native void glPassTexCoordATI(int dst, int coord, int swizzle); - - public static native void glSampleMapATI(int dst, int interp, int swizzle); - - public static native void glColorFragmentOp1ATI(int op, int dst, int dstMask, int dstMod, int arg1, int arg1Rep, int arg1Mod); - - public static native void glColorFragmentOp2ATI(int op, int dst, int dstMask, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod); - - public static native void glColorFragmentOp3ATI(int op, int dst, int dstMask, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod, int arg3, int arg3Rep, int arg3Mod); - - public static native void glAlphaFragmentOp1ATI(int op, int dst, int dstMod, int arg1, int arg1Rep, int arg1Mod); - - public static native void glAlphaFragmentOp2ATI(int op, int dst, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod); + public static void glSetFragmentShaderConstantATI(int dst, FloatBuffer pfValue) { + BufferChecks.checkBuffer(pfValue, 4); + nglSetFragmentShaderConstantATI(dst, pfValue, pfValue.position()); + } + private static native void nglSetFragmentShaderConstantATI(int dst, FloatBuffer pfValue, int pfValue_position); public static native void glAlphaFragmentOp3ATI(int op, int dst, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod, int arg3, int arg3Rep, int arg3Mod); - public static void glSetFragmentShaderConstantATI(int dst, FloatBuffer pfValue) { - BufferChecks.checkBuffer(pfValue); // TODO:is this correct? - nglSetFragmentShaderConstantATI(dst, pfValue, pfValue.position()); - } + public static native void glAlphaFragmentOp2ATI(int op, int dst, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod); - private static native void nglSetFragmentShaderConstantATI(int dst, FloatBuffer pfValue, int pfValue_offset); + public static native void glAlphaFragmentOp1ATI(int op, int dst, int dstMod, int arg1, int arg1Rep, int arg1Mod); + + public static native void glColorFragmentOp3ATI(int op, int dst, int dstMask, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod, int arg3, int arg3Rep, int arg3Mod); + + public static native void glColorFragmentOp2ATI(int op, int dst, int dstMask, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod); + + public static native void glColorFragmentOp1ATI(int op, int dst, int dstMask, int dstMod, int arg1, int arg1Rep, int arg1Mod); + + public static native void glSampleMapATI(int dst, int interp, int swizzle); + + public static native void glPassTexCoordATI(int dst, int coord, int swizzle); + + public static native void glEndFragmentShaderATI(); + + public static native void glBeginFragmentShaderATI(); + + public static native void glDeleteFragmentShaderATI(int id); + + public static native void glBindFragmentShaderATI(int id); + + public static native int glGenFragmentShadersATI(int range); } diff --git a/src/java/org/lwjgl/opengl/ATIMapObjectBuffer.java b/src/java/org/lwjgl/opengl/ATIMapObjectBuffer.java index 09556b1d..3d2d723a 100644 --- a/src/java/org/lwjgl/opengl/ATIMapObjectBuffer.java +++ b/src/java/org/lwjgl/opengl/ATIMapObjectBuffer.java @@ -1,61 +1,36 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -import java.nio.ByteBuffer; - import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class ATIMapObjectBuffer { + private ATIMapObjectBuffer() { } static native void initNativeStubs() throws LWJGLException; + public static native void glUnmapObjectBufferATI(int buffer); + /** * glMapObjectBufferATI maps a gl object buffer to a ByteBuffer. The oldBuffer argument can be * null, in which case a new ByteBuffer will be created, pointing to the returned memory. If * oldBuffer is non-null, it will be returned if it points to the same mapped memory, otherwise a * new ByteBuffer is created. - * - * @param size The size of the buffer area. - * @param oldBuffer A ByteBuffer. If this argument points to the same address as the new mapping, + * @param result_size The size of the buffer area. + * @param old_buffer A ByteBuffer. If this argument points to the same address as the new mapping, * it will be returned and no new buffer will be created. In that case, size is * ignored. - * * @return A ByteBuffer representing the mapped object buffer memory. */ - public static native ByteBuffer glMapObjectBufferATI(int buffer, int size, ByteBuffer oldBuffer); - - public static native void glUnmapObjectBufferATI(int buffer); - + public static java.nio.ByteBuffer glMapObjectBufferATI(int buffer, int result_size, java.nio.ByteBuffer old_buffer) { + if (old_buffer != null) + BufferChecks.checkDirect(old_buffer); + java.nio.ByteBuffer __result = nglMapObjectBufferATI(buffer, result_size, old_buffer); + return __result; + } + private static native java.nio.ByteBuffer nglMapObjectBufferATI(int buffer, int result_size, java.nio.ByteBuffer old_buffer); } diff --git a/src/java/org/lwjgl/opengl/ATIPnTriangles.java b/src/java/org/lwjgl/opengl/ATIPnTriangles.java index c20fe27a..bcdf262d 100644 --- a/src/java/org/lwjgl/opengl/ATIPnTriangles.java +++ b/src/java/org/lwjgl/opengl/ATIPnTriangles.java @@ -1,56 +1,28 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class ATIPnTriangles { - - public static final int GL_PN_TRIANGLES_ATI = 0x87F0; - public static final int GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F1; - public static final int GL_PN_TRIANGLES_POINT_MODE_ATI = 0x87F2; - public static final int GL_PN_TRIANGLES_NORMAL_MODE_ATI = 0x87F3; - public static final int GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F4; - public static final int GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI = 0x87F5; - public static final int GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI = 0x87F6; - public static final int GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI = 0x87F7; - public static final int GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI = 0x87F8; + public static final int GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI = 0x87f8; + public static final int GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI = 0x87f7; + public static final int GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI = 0x87f6; + public static final int GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI = 0x87f5; + public static final int GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87f4; + public static final int GL_PN_TRIANGLES_NORMAL_MODE_ATI = 0x87f3; + public static final int GL_PN_TRIANGLES_POINT_MODE_ATI = 0x87f2; + public static final int GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87f1; + public static final int GL_PN_TRIANGLES_ATI = 0x87f0; private ATIPnTriangles() { } static native void initNativeStubs() throws LWJGLException; - public static native void glPNTrianglesfATI(int pname, float param); - public static native void glPNTrianglesiATI(int pname, int param); + + public static native void glPNTrianglesfATI(int pname, float param); } diff --git a/src/java/org/lwjgl/opengl/ATISeparateStencil.java b/src/java/org/lwjgl/opengl/ATISeparateStencil.java index 7b95ee48..a2fb33d3 100644 --- a/src/java/org/lwjgl/opengl/ATISeparateStencil.java +++ b/src/java/org/lwjgl/opengl/ATISeparateStencil.java @@ -1,51 +1,23 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class ATISeparateStencil { - - public static final int GL_STENCIL_BACK_FUNC_ATI = 0x8800; - public static final int GL_STENCIL_BACK_FAIL_ATI = 0x8801; - public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI = 0x8802; public static final int GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI = 0x8803; + public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI = 0x8802; + public static final int GL_STENCIL_BACK_FAIL_ATI = 0x8801; + public static final int GL_STENCIL_BACK_FUNC_ATI = 0x8800; private ATISeparateStencil() { } static native void initNativeStubs() throws LWJGLException; - public static native void glStencilOpSeparateATI(int face, int sfail, int dpfail, int dppass); - public static native void glStencilFuncSeparateATI(int frontfunc, int backfunc, int ref, int mask); + + public static native void glStencilOpSeparateATI(int face, int sfail, int dpfail, int dppass); } diff --git a/src/java/org/lwjgl/opengl/ATITextureCompression3DC.java b/src/java/org/lwjgl/opengl/ATITextureCompression3DC.java index d012d413..0dee34f2 100644 --- a/src/java/org/lwjgl/opengl/ATITextureCompression3DC.java +++ b/src/java/org/lwjgl/opengl/ATITextureCompression3DC.java @@ -1,41 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ATITextureCompression3DC { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; +public final class ATITextureCompression3DC { public static final int GL_COMPRESSED_RGB_3DC_ATI = 0x8837; private ATITextureCompression3DC() { } -} \ No newline at end of file +} diff --git a/src/java/org/lwjgl/opengl/ATITextureFloat.java b/src/java/org/lwjgl/opengl/ATITextureFloat.java index 045eb724..b31973b2 100644 --- a/src/java/org/lwjgl/opengl/ATITextureFloat.java +++ b/src/java/org/lwjgl/opengl/ATITextureFloat.java @@ -1,55 +1,26 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ATITextureFloat { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - /* - * Accepted by the parameter of TexImage1D, - * TexImage2D, and TexImage3D: - */ - public static final int GL_RGBA_FLOAT32_ATI = 0x8814; - public static final int GL_RGB_FLOAT32_ATI = 0x8815; - public static final int GL_ALPHA_FLOAT32_ATI = 0x8816; - public static final int GL_INTENSITY_FLOAT32_ATI = 0x8817; - public static final int GL_LUMINANCE_FLOAT32_ATI = 0x8818; +public final class ATITextureFloat { + public static final int GL_LUMINANCE_ALPHA_FLOAT16_ATI = 0x881f; + public static final int GL_LUMINANCE_FLOAT16_ATI = 0x881e; + public static final int GL_INTENSITY_FLOAT16_ATI = 0x881d; + public static final int GL_ALPHA_FLOAT16_ATI = 0x881c; + public static final int GL_RGB_FLOAT16_ATI = 0x881b; + public static final int GL_RGBA_FLOAT16_ATI = 0x881a; public static final int GL_LUMINANCE_ALPHA_FLOAT32_ATI = 0x8819; - public static final int GL_RGBA_FLOAT16_ATI = 0x881A; - public static final int GL_RGB_FLOAT16_ATI = 0x881B; - public static final int GL_ALPHA_FLOAT16_ATI = 0x881C; - public static final int GL_INTENSITY_FLOAT16_ATI = 0x881D; - public static final int GL_LUMINANCE_FLOAT16_ATI = 0x881E; - public static final int GL_LUMINANCE_ALPHA_FLOAT16_ATI = 0x881F; + public static final int GL_LUMINANCE_FLOAT32_ATI = 0x8818; + public static final int GL_INTENSITY_FLOAT32_ATI = 0x8817; + public static final int GL_ALPHA_FLOAT32_ATI = 0x8816; + public static final int GL_RGB_FLOAT32_ATI = 0x8815; + public static final int GL_RGBA_FLOAT32_ATI = 0x8814; private ATITextureFloat() { } + } diff --git a/src/java/org/lwjgl/opengl/ATITextureMirrorOnce.java b/src/java/org/lwjgl/opengl/ATITextureMirrorOnce.java index a139a954..7390778d 100644 --- a/src/java/org/lwjgl/opengl/ATITextureMirrorOnce.java +++ b/src/java/org/lwjgl/opengl/ATITextureMirrorOnce.java @@ -1,41 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class ATITextureMirrorOnce { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_MIRROR_CLAMP_ATI = 0x8742; +public final class ATITextureMirrorOnce { public static final int GL_MIRROR_CLAMP_TO_EDGE_ATI = 0x8743; + public static final int GL_MIRROR_CLAMP_ATI = 0x8742; private ATITextureMirrorOnce() { } + } diff --git a/src/java/org/lwjgl/opengl/ATIVertexArrayObject.java b/src/java/org/lwjgl/opengl/ATIVertexArrayObject.java index 8b153b90..28692fcd 100644 --- a/src/java/org/lwjgl/opengl/ATIVertexArrayObject.java +++ b/src/java/org/lwjgl/opengl/ATIVertexArrayObject.java @@ -1,152 +1,111 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ATIVertexArrayObject { - - public static final int GL_STATIC_ATI = 0x8760; - public static final int GL_DYNAMIC_ATI = 0x8761; - public static final int GL_PRESERVE_ATI = 0x8762; - public static final int GL_DISCARD_ATI = 0x8763; - public static final int GL_OBJECT_BUFFER_SIZE_ATI = 0x8764; - public static final int GL_OBJECT_BUFFER_USAGE_ATI = 0x8765; - public static final int GL_ARRAY_OBJECT_BUFFER_ATI = 0x8766; public static final int GL_ARRAY_OBJECT_OFFSET_ATI = 0x8767; + public static final int GL_ARRAY_OBJECT_BUFFER_ATI = 0x8766; + public static final int GL_OBJECT_BUFFER_USAGE_ATI = 0x8765; + public static final int GL_OBJECT_BUFFER_SIZE_ATI = 0x8764; + public static final int GL_DISCARD_ATI = 0x8763; + public static final int GL_PRESERVE_ATI = 0x8762; + public static final int GL_DYNAMIC_ATI = 0x8761; + public static final int GL_STATIC_ATI = 0x8760; private ATIVertexArrayObject() { } static native void initNativeStubs() throws LWJGLException; - public static int glNewObjectBufferATI(int size, ByteBuffer pPointer, int usage) { - BufferChecks.checkDirectOrNull(pPointer); - return nglNewObjectBufferATI(pPointer != null ? pPointer.remaining() : size, pPointer, pPointer != null ? pPointer.position() : 0, usage); + public static void glGetVariantArrayObjectATI(int id, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetVariantArrayObjectivATI(id, pname, params, params.position()); } + private static native void nglGetVariantArrayObjectivATI(int id, int pname, IntBuffer params, int params_position); - public static int glNewObjectBufferATI(int size, ShortBuffer pPointer, int usage) { - BufferChecks.checkDirectOrNull(pPointer); - return nglNewObjectBufferATI(pPointer != null ? pPointer.remaining() << 1 : size, pPointer, pPointer != null ? pPointer.position() << 1 : 0, usage); + public static void glGetVariantArrayObjectATI(int id, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetVariantArrayObjectfvATI(id, pname, params, params.position()); } - - public static int glNewObjectBufferATI(int size, FloatBuffer pPointer, int usage) { - BufferChecks.checkDirectOrNull(pPointer); - return nglNewObjectBufferATI(pPointer != null ? pPointer.remaining() << 2 : size, pPointer, pPointer != null ? pPointer.position() << 2 : 0, usage); - } - - public static int glNewObjectBufferATI(int size, IntBuffer pPointer, int usage) { - BufferChecks.checkDirectOrNull(pPointer); - return nglNewObjectBufferATI(pPointer != null ? pPointer.remaining() << 2 : size, pPointer, pPointer != null ? pPointer.position() << 2 : 0, usage); - } - - private static native int nglNewObjectBufferATI(int size, Buffer pPointer, int pPointer_offset, int usage); - - public static native boolean glIsObjectBufferATI(int buffer); - - public static void glUpdateObjectBufferATI(int buffer, int offset, ByteBuffer pPointer, int preserve) { - BufferChecks.checkDirect(pPointer); - nglUpdateObjectBufferATI(buffer, offset, pPointer.remaining(), pPointer, pPointer.position(), preserve); - } - - public static void glUpdateObjectBufferATI(int buffer, int offset, ShortBuffer pPointer, int preserve) { - BufferChecks.checkDirect(pPointer); - nglUpdateObjectBufferATI(buffer, offset, pPointer.remaining() << 1, pPointer, pPointer.position() << 1, preserve); - } - - public static void glUpdateObjectBufferATI(int buffer, int offset, FloatBuffer pPointer, int preserve) { - BufferChecks.checkDirect(pPointer); - nglUpdateObjectBufferATI(buffer, offset, pPointer.remaining() << 2, pPointer, pPointer.position() << 2, preserve); - } - - public static void glUpdateObjectBufferATI(int buffer, int offset, IntBuffer pPointer, int preserve) { - BufferChecks.checkDirect(pPointer); - nglUpdateObjectBufferATI(buffer, offset, pPointer.remaining() << 2, pPointer, pPointer.position() << 2, preserve); - } - - private static native void nglUpdateObjectBufferATI(int buffer, int offset, int size, Buffer pPointer, int pPointer_offset, int preserve); - - public static void glGetObjectBufferATI(int buffer, int pname, FloatBuffer pfParams) { - BufferChecks.checkDirect(pfParams); - nglGetObjectBufferfvATI(buffer, pname, pfParams, pfParams.position()); - } - - private static native void nglGetObjectBufferfvATI(int buffer, int pname, FloatBuffer pfParams, int pfParams_offset); - - public static void glGetObjectBufferATI(int buffer, int pname, IntBuffer piParams) { - BufferChecks.checkDirect(piParams); - nglGetObjectBufferivATI(buffer, pname, piParams, piParams.position()); - } - - private static native void nglGetObjectBufferivATI(int buffer, int pname, IntBuffer piParams, int piParams_offset); - - public static native void glFreeObjectBufferATI(int buffer); - - public static native void glArrayObjectATI(int array, int size, int type, int stride, int buffer, int offset); - - public static void glGetArrayObjectATI(int array, int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglGetArrayObjectfvATI(array, pname, pfParams, pfParams.position()); - } - - private static native void nglGetArrayObjectfvATI(int array, int pname, FloatBuffer pfParams, int pfParams_offset); - - public static void glGetArrayObjectATI(int array, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglGetArrayObjectivATI(array, pname, piParams, piParams.position()); - } - - private static native void nglGetArrayObjectivATI(int array, int pname, IntBuffer piParams, int piParams_offset); + private static native void nglGetVariantArrayObjectfvATI(int id, int pname, FloatBuffer params, int params_position); public static native void glVariantArrayObjectATI(int id, int type, int stride, int buffer, int offset); - public static void glGetVariantArrayObjectATI(int id, int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglGetVariantArrayObjectfvATI(id, pname, pfParams, pfParams.position()); + public static void glGetArrayObjectATI(int array, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetArrayObjectivATI(array, pname, params, params.position()); } + private static native void nglGetArrayObjectivATI(int array, int pname, IntBuffer params, int params_position); - private static native void nglGetVariantArrayObjectfvATI(int id, int pname, FloatBuffer pfParams, int pfParams_offset_offset); - - public static void glGetVariantArrayObjectATI(int id, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglGetVariantArrayObjectivATI(id, pname, piParams, piParams.position()); + public static void glGetArrayObjectATI(int array, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetArrayObjectfvATI(array, pname, params, params.position()); } + private static native void nglGetArrayObjectfvATI(int array, int pname, FloatBuffer params, int params_position); - private static native void nglGetVariantArrayObjectivATI(int id, int pname, IntBuffer piParams, int piParams_offset); + public static native void glArrayObjectATI(int array, int size, int type, int stride, int buffer, int offset); + + public static native void glFreeObjectBufferATI(int buffer); + + public static void glGetObjectBufferATI(int buffer, int pname, IntBuffer params) { + BufferChecks.checkDirect(params); + nglGetObjectBufferivATI(buffer, pname, params, params.position()); + } + private static native void nglGetObjectBufferivATI(int buffer, int pname, IntBuffer params, int params_position); + + public static void glGetObjectBufferATI(int buffer, int pname, FloatBuffer params) { + BufferChecks.checkDirect(params); + nglGetObjectBufferfvATI(buffer, pname, params, params.position()); + } + private static native void nglGetObjectBufferfvATI(int buffer, int pname, FloatBuffer params, int params_position); + + public static void glUpdateObjectBufferATI(int buffer, int offset, IntBuffer pPointer, int preserve) { + BufferChecks.checkDirect(pPointer); + nglUpdateObjectBufferATI(buffer, offset, (pPointer.remaining() << 2), pPointer, pPointer.position() << 2, preserve); + } + public static void glUpdateObjectBufferATI(int buffer, int offset, FloatBuffer pPointer, int preserve) { + BufferChecks.checkDirect(pPointer); + nglUpdateObjectBufferATI(buffer, offset, (pPointer.remaining() << 2), pPointer, pPointer.position() << 2, preserve); + } + public static void glUpdateObjectBufferATI(int buffer, int offset, ShortBuffer pPointer, int preserve) { + BufferChecks.checkDirect(pPointer); + nglUpdateObjectBufferATI(buffer, offset, (pPointer.remaining() << 1), pPointer, pPointer.position() << 1, preserve); + } + public static void glUpdateObjectBufferATI(int buffer, int offset, ByteBuffer pPointer, int preserve) { + BufferChecks.checkDirect(pPointer); + nglUpdateObjectBufferATI(buffer, offset, (pPointer.remaining()), pPointer, pPointer.position(), preserve); + } + private static native void nglUpdateObjectBufferATI(int buffer, int offset, int size, Buffer pPointer, int pPointer_position, int preserve); + + public static native boolean glIsObjectBufferATI(int buffer); + + public static int glNewObjectBufferATI(int size, int usage) { + int __result = nglNewObjectBufferATI(size, null, 0, usage); + return __result; + } + public static int glNewObjectBufferATI(IntBuffer pPointer, int usage) { + BufferChecks.checkDirect(pPointer); + int __result = nglNewObjectBufferATI((pPointer.remaining() << 2), pPointer, pPointer.position() << 2, usage); + return __result; + } + public static int glNewObjectBufferATI(FloatBuffer pPointer, int usage) { + BufferChecks.checkDirect(pPointer); + int __result = nglNewObjectBufferATI((pPointer.remaining() << 2), pPointer, pPointer.position() << 2, usage); + return __result; + } + public static int glNewObjectBufferATI(ShortBuffer pPointer, int usage) { + BufferChecks.checkDirect(pPointer); + int __result = nglNewObjectBufferATI((pPointer.remaining() << 1), pPointer, pPointer.position() << 1, usage); + return __result; + } + public static int glNewObjectBufferATI(ByteBuffer pPointer, int usage) { + BufferChecks.checkDirect(pPointer); + int __result = nglNewObjectBufferATI((pPointer.remaining()), pPointer, pPointer.position(), usage); + return __result; + } + private static native int nglNewObjectBufferATI(int size, Buffer pPointer, int pPointer_position, int usage); } diff --git a/src/java/org/lwjgl/opengl/ATIVertexAttribArrayObject.java b/src/java/org/lwjgl/opengl/ATIVertexAttribArrayObject.java index faa736a5..3aca147f 100644 --- a/src/java/org/lwjgl/opengl/ATIVertexAttribArrayObject.java +++ b/src/java/org/lwjgl/opengl/ATIVertexAttribArrayObject.java @@ -1,41 +1,10 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.FloatBuffer; -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class ATIVertexAttribArrayObject { @@ -44,24 +13,17 @@ public final class ATIVertexAttribArrayObject { static native void initNativeStubs() throws LWJGLException; - public static native void glVertexAttribArrayObjectATI(int index, int size, int type, boolean normalized, int stride, int buffer, int offset); - - // --------------------------- - public static void glGetVertexAttribArrayObjectATI(int index, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetVertexAttribArrayObjectfvATI(index, pname, params, params.position()); - } - - private static native void nglGetVertexAttribArrayObjectfvATI(int index, int pname, FloatBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- public static void glGetVertexAttribArrayObjectATI(int index, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); + BufferChecks.checkBuffer(params, 4); nglGetVertexAttribArrayObjectivATI(index, pname, params, params.position()); } + private static native void nglGetVertexAttribArrayObjectivATI(int index, int pname, IntBuffer params, int params_position); - private static native void nglGetVertexAttribArrayObjectivATI(int index, int pname, IntBuffer params, int paramsOffset); - // --------------------------- + public static void glGetVertexAttribArrayObjectATI(int index, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetVertexAttribArrayObjectfvATI(index, pname, params, params.position()); + } + private static native void nglGetVertexAttribArrayObjectfvATI(int index, int pname, FloatBuffer params, int params_position); + public static native void glVertexAttribArrayObjectATI(int index, int size, int type, boolean normalized, int stride, int buffer, int offset); } diff --git a/src/java/org/lwjgl/opengl/ATIVertexStreams.java b/src/java/org/lwjgl/opengl/ATIVertexStreams.java index b9e614bc..b114772f 100644 --- a/src/java/org/lwjgl/opengl/ATIVertexStreams.java +++ b/src/java/org/lwjgl/opengl/ATIVertexStreams.java @@ -1,91 +1,57 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class ATIVertexStreams { - - public static final int GL_MAX_VERTEX_STREAMS_ATI = 0x876B; - public static final int GL_VERTEX_SOURCE_ATI = 0x876C; - public static final int GL_VERTEX_STREAM0_ATI = 0x876D; - public static final int GL_VERTEX_STREAM1_ATI = 0x876E; - public static final int GL_VERTEX_STREAM2_ATI = 0x876F; - public static final int GL_VERTEX_STREAM3_ATI = 0x8770; - public static final int GL_VERTEX_STREAM4_ATI = 0x8771; - public static final int GL_VERTEX_STREAM5_ATI = 0x8772; - public static final int GL_VERTEX_STREAM6_ATI = 0x8773; public static final int GL_VERTEX_STREAM7_ATI = 0x8774; + public static final int GL_VERTEX_STREAM6_ATI = 0x8773; + public static final int GL_VERTEX_STREAM5_ATI = 0x8772; + public static final int GL_VERTEX_STREAM4_ATI = 0x8771; + public static final int GL_VERTEX_STREAM3_ATI = 0x8770; + public static final int GL_VERTEX_STREAM2_ATI = 0x876f; + public static final int GL_VERTEX_STREAM1_ATI = 0x876e; + public static final int GL_VERTEX_STREAM0_ATI = 0x876d; + public static final int GL_VERTEX_SOURCE_ATI = 0x876c; + public static final int GL_MAX_VERTEX_STREAMS_ATI = 0x876b; private ATIVertexStreams() { } static native void initNativeStubs() throws LWJGLException; - public static native void glVertexStream1fATI(int stream, float x); - - public static native void glVertexStream1iATI(int stream, int x); - - public static native void glVertexStream1sATI(int stream, short x); - - public static native void glVertexStream2fATI(int stream, float x, float y); - - public static native void glVertexStream2iATI(int stream, int x, int y); - - public static native void glVertexStream2sATI(int stream, short x, short y); - - public static native void glVertexStream3fATI(int stream, float x, float y, float z); - - public static native void glVertexStream3iATI(int stream, int x, int y, int z); - - public static native void glVertexStream3sATI(int stream, short x, short y, short z); - - public static native void glVertexStream4fATI(int stream, float x, float y, float z, float w); - - public static native void glVertexStream4iATI(int stream, int x, int y, int z, int w); - - public static native void glVertexStream4sATI(int stream, short x, short y, short z, short w); - - public static native void glNormalStream3bATI(int stream, byte x, byte y, byte z); - - public static native void glNormalStream3fATI(int stream, float x, float y, float z); - - public static native void glNormalStream3iATI(int stream, int x, int y, int z); - - public static native void glNormalStream3sATI(int stream, short x, short y, short z); - - public static native void glClientActiveVertexStreamATI(int stream); + public static native void glVertexBlendEnviATI(int pname, int param); public static native void glVertexBlendEnvfATI(int pname, float param); - public static native void glVertexBlendEnviATI(int pname, int param); + public static native void glClientActiveVertexStreamATI(int stream); + + public static native void glNormalStream3sATI(int stream, short x, short y, short z); + + public static native void glNormalStream3iATI(int stream, int x, int y, int z); + + public static native void glNormalStream3fATI(int stream, float x, float y, float z); + + public static native void glNormalStream3bATI(int stream, byte x, byte y, byte z); + + public static native void glVertexStream4sATI(int stream, short x, short y, short z, short w); + + public static native void glVertexStream4iATI(int stream, int x, int y, int z, int w); + + public static native void glVertexStream4fATI(int stream, float x, float y, float z, float w); + + public static native void glVertexStream3sATI(int stream, short x, short y, short z); + + public static native void glVertexStream3iATI(int stream, int x, int y, int z); + + public static native void glVertexStream3fATI(int stream, float x, float y, float z); + + public static native void glVertexStream2sATI(int stream, short x, short y); + + public static native void glVertexStream2iATI(int stream, int x, int y); + + public static native void glVertexStream2fATI(int stream, float x, float y); } diff --git a/src/java/org/lwjgl/opengl/BufferObjectTracker.java b/src/java/org/lwjgl/opengl/BufferObjectTracker.java index 28b5ed1b..37c40798 100644 --- a/src/java/org/lwjgl/opengl/BufferObjectTracker.java +++ b/src/java/org/lwjgl/opengl/BufferObjectTracker.java @@ -34,6 +34,8 @@ package org.lwjgl.opengl; import java.util.WeakHashMap; import java.util.Map; +import java.nio.IntBuffer; + /** Track Vertex Buffer Objects by context. */ final class BufferObjectTracker { @@ -81,13 +83,33 @@ final class BufferObjectTracker { } } - static void bindVBOBuffer(int target, int buffer) { + static void deleteBuffers(IntBuffer buffers) { + for (int i = buffers.position(); i < buffers.limit(); i++) { + int buffer_handle = buffers.get(i); + if (getVBOArrayStack().getState() == buffer_handle) + getVBOArrayStack().setState(0); + if (getVBOElementStack().getState() == buffer_handle) + getVBOElementStack().setState(0); + if (getPBOPackStack().getState() == buffer_handle) + getPBOPackStack().setState(0); + if (getPBOUnpackStack().getState() == buffer_handle) + getPBOUnpackStack().setState(0); + } + } + + static void bindBuffer(int target, int buffer) { switch ( target ) { - case GL15.GL_ELEMENT_ARRAY_BUFFER: + case ARBVertexBufferObject.GL_ARRAY_BUFFER_ARB: + getVBOArrayStack().setState(buffer); + break; + case ARBVertexBufferObject.GL_ELEMENT_ARRAY_BUFFER_ARB: getVBOElementStack().setState(buffer); break; - case GL15.GL_ARRAY_BUFFER: - getVBOArrayStack().setState(buffer); + case ARBPixelBufferObject.GL_PIXEL_PACK_BUFFER_ARB: + getPBOPackStack().setState(buffer); + break; + case ARBPixelBufferObject.GL_PIXEL_UNPACK_BUFFER_ARB: + getPBOUnpackStack().setState(buffer); break; default: throw new IllegalArgumentException("Unsupported VBO target " + target); diff --git a/src/java/org/lwjgl/opengl/EXTAbgr.java b/src/java/org/lwjgl/opengl/EXTAbgr.java index 6370d7f5..c41bd2c2 100644 --- a/src/java/org/lwjgl/opengl/EXTAbgr.java +++ b/src/java/org/lwjgl/opengl/EXTAbgr.java @@ -1,40 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTAbgr { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; +public final class EXTAbgr { public static final int GL_ABGR_EXT = 0x8000; private EXTAbgr() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTBgra.java b/src/java/org/lwjgl/opengl/EXTBgra.java index 5316970f..af92d5f8 100644 --- a/src/java/org/lwjgl/opengl/EXTBgra.java +++ b/src/java/org/lwjgl/opengl/EXTBgra.java @@ -1,46 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -/** - * EXT_bgra_constants - * - * @author cas - */ -public final class EXTBgra { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_BGR_EXT = 0x80E0; - public static final int GL_BGRA_EXT = 0x80E1; +public final class EXTBgra { + public static final int GL_BGRA_EXT = 0x80e1; + public static final int GL_BGR_EXT = 0x80e0; private EXTBgra() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTBlendEquationSeparate.java b/src/java/org/lwjgl/opengl/EXTBlendEquationSeparate.java index cdc19b73..2fc19d62 100644 --- a/src/java/org/lwjgl/opengl/EXTBlendEquationSeparate.java +++ b/src/java/org/lwjgl/opengl/EXTBlendEquationSeparate.java @@ -1,46 +1,14 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTBlendEquationSeparate { - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ + public static final int GL_BLEND_EQUATION_ALPHA_EXT = 0x883d; public static final int GL_BLEND_EQUATION_RGB_EXT = 0x8009; - public static final int GL_BLEND_EQUATION_ALPHA_EXT = 0x883D; private EXTBlendEquationSeparate() { } diff --git a/src/java/org/lwjgl/opengl/EXTBlendFuncSeparate.java b/src/java/org/lwjgl/opengl/EXTBlendFuncSeparate.java index 89a46430..71ae4d60 100644 --- a/src/java/org/lwjgl/opengl/EXTBlendFuncSeparate.java +++ b/src/java/org/lwjgl/opengl/EXTBlendFuncSeparate.java @@ -1,44 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTBlendFuncSeparate { - - public static final int GL_BLEND_DST_RGB_EXT = 0x80C8; - public static final int GL_BLEND_SRC_RGB_EXT = 0x80C9; - public static final int GL_BLEND_DST_ALPHA_EXT = 0x80CA; - public static final int GL_BLEND_SRC_ALPHA_EXT = 0x80CB; + public static final int GL_BLEND_SRC_ALPHA_EXT = 0x80cb; + public static final int GL_BLEND_DST_ALPHA_EXT = 0x80ca; + public static final int GL_BLEND_SRC_RGB_EXT = 0x80c9; + public static final int GL_BLEND_DST_RGB_EXT = 0x80c8; private EXTBlendFuncSeparate() { } diff --git a/src/java/org/lwjgl/opengl/EXTBlendSubtract.java b/src/java/org/lwjgl/opengl/EXTBlendSubtract.java index fa53ddf2..1d56c10b 100644 --- a/src/java/org/lwjgl/opengl/EXTBlendSubtract.java +++ b/src/java/org/lwjgl/opengl/EXTBlendSubtract.java @@ -1,46 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -/** - * EXT_blend_subtract constants - * - * @author cas - */ -public final class EXTBlendSubtract { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_FUNC_SUBTRACT_EXT = 0x800A; - public static final int GL_FUNC_REVERSE_SUBTRACT_EXT = 0x800B; +public final class EXTBlendSubtract { + public static final int GL_FUNC_REVERSE_SUBTRACT_EXT = 0x800b; + public static final int GL_FUNC_SUBTRACT_EXT = 0x800a; private EXTBlendSubtract() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTCgShader.java b/src/java/org/lwjgl/opengl/EXTCgShader.java index eb426fda..a1a976c5 100644 --- a/src/java/org/lwjgl/opengl/EXTCgShader.java +++ b/src/java/org/lwjgl/opengl/EXTCgShader.java @@ -1,48 +1,22 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTCgShader { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; +public final class EXTCgShader { + public static final int GL_CG_FRAGMENT_SHADER_EXT = 0x890f; /** * You can pass GL_CG_VERTEX_SHADER_EXT to glCreateShaderARB instead of GL_VERTEX_SHADER_ARB to create a vertex shader object * that will parse and compile its shader source with the Cg compiler front-end rather than the GLSL front-end. Likewise, you * can pass GL_CG_FRAGMENT_SHADER_EXT to glCreateShaderARB instead of GL_FRAGMENT_SHADER_ARB to create a fragment shader object * that will parse and compile its shader source with the Cg front-end rather than the GLSL front-end. */ - public static final int GL_CG_VERTEX_SHADER_EXT = 0x890E; - public static final int GL_CG_FRAGMENT_SHADER_EXT = 0x890F; + public static final int GL_CG_VERTEX_SHADER_EXT = 0x890e; private EXTCgShader() { } -} \ No newline at end of file +} diff --git a/src/java/org/lwjgl/opengl/EXTCompiledVertexArray.java b/src/java/org/lwjgl/opengl/EXTCompiledVertexArray.java index 123d0773..dddef690 100644 --- a/src/java/org/lwjgl/opengl/EXTCompiledVertexArray.java +++ b/src/java/org/lwjgl/opengl/EXTCompiledVertexArray.java @@ -1,49 +1,21 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTCompiledVertexArray { - - public static final int GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = 0x81A8; - public static final int GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = 0x81A9; + public static final int GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = 0x81a9; + public static final int GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = 0x81a8; private EXTCompiledVertexArray() { } static native void initNativeStubs() throws LWJGLException; - public static native void glLockArraysEXT(int first, int count); - public static native void glUnlockArraysEXT(); + + public static native void glLockArraysEXT(int first, int count); } diff --git a/src/java/org/lwjgl/opengl/EXTDepthBoundsTest.java b/src/java/org/lwjgl/opengl/EXTDepthBoundsTest.java index b128f1b3..714e7fd2 100644 --- a/src/java/org/lwjgl/opengl/EXTDepthBoundsTest.java +++ b/src/java/org/lwjgl/opengl/EXTDepthBoundsTest.java @@ -1,58 +1,19 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTDepthBoundsTest { - - /* - Accepted by the parameter of Enable, Disable, and IsEnabled, - and by the parameter of GetBooleanv, GetIntegerv, - GetFloatv, and GetDoublev: - */ - public static final int DEPTH_BOUNDS_TEST_EXT = 0x8890; - - /* - Accepted by the parameter of GetBooleanv, GetIntegerv, - GetFloatv, and GetDoublev: - */ public static final int DEPTH_BOUNDS_EXT = 0x8891; + public static final int DEPTH_BOUNDS_TEST_EXT = 0x8890; private EXTDepthBoundsTest() { } static native void initNativeStubs() throws LWJGLException; - public static native void glDepthBoundsEXT(float zmin, float zmax); - + public static native void glDepthBoundsEXT(double zmin, double zmax); } diff --git a/src/java/org/lwjgl/opengl/EXTDrawRangeElements.java b/src/java/org/lwjgl/opengl/EXTDrawRangeElements.java index fc0ef926..8013847f 100644 --- a/src/java/org/lwjgl/opengl/EXTDrawRangeElements.java +++ b/src/java/org/lwjgl/opengl/EXTDrawRangeElements.java @@ -1,78 +1,39 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTDrawRangeElements { - - public static final int GL_MAX_ELEMENTS_VERTICES_EXT = 0x80E8; - public static final int GL_MAX_ELEMENTS_INDICES_EXT = 0x80E9; + public static final int GL_MAX_ELEMENTS_INDICES_EXT = 0x80e9; + public static final int GL_MAX_ELEMENTS_VERTICES_EXT = 0x80e8; private EXTDrawRangeElements() { } static native void initNativeStubs() throws LWJGLException; - public static void glDrawRangeElementsEXT(int mode, int start, int end, ByteBuffer pIndices) { - BufferChecks.checkDirect(pIndices); - GLBufferChecks.ensureElementVBOdisabled(); - nglDrawRangeElementsEXT(mode, start, end, pIndices.remaining(), GL11.GL_UNSIGNED_BYTE, pIndices, pIndices.position()); - } - - public static void glDrawRangeElementsEXT(int mode, int start, int end, ShortBuffer pIndices) { - BufferChecks.checkDirect(pIndices); - GLBufferChecks.ensureElementVBOdisabled(); - nglDrawRangeElementsEXT(mode, start, end, pIndices.remaining(), GL11.GL_UNSIGNED_SHORT, pIndices, pIndices.position() << 1); - } - public static void glDrawRangeElementsEXT(int mode, int start, int end, IntBuffer pIndices) { - BufferChecks.checkDirect(pIndices); GLBufferChecks.ensureElementVBOdisabled(); - nglDrawRangeElementsEXT(mode, start, end, pIndices.remaining(), GL11.GL_UNSIGNED_INT, pIndices, pIndices.position() << 2); + BufferChecks.checkDirect(pIndices); + nglDrawRangeElementsEXT(mode, start, end, (pIndices.remaining()), GL11.GL_UNSIGNED_INT, pIndices, pIndices.position() << 2); } - - private static native void nglDrawRangeElementsEXT(int mode, int start, int end, int count, int type, Buffer pIndices, int pIndices_offset); - - public static void glDrawRangeElementsEXT(int mode, int start, int end, int count, int type, int buffer_offset) { + public static void glDrawRangeElementsEXT(int mode, int start, int end, ShortBuffer pIndices) { + GLBufferChecks.ensureElementVBOdisabled(); + BufferChecks.checkDirect(pIndices); + nglDrawRangeElementsEXT(mode, start, end, (pIndices.remaining()), GL11.GL_UNSIGNED_SHORT, pIndices, pIndices.position() << 1); + } + public static void glDrawRangeElementsEXT(int mode, int start, int end, ByteBuffer pIndices) { + GLBufferChecks.ensureElementVBOdisabled(); + BufferChecks.checkDirect(pIndices); + nglDrawRangeElementsEXT(mode, start, end, (pIndices.remaining()), GL11.GL_UNSIGNED_BYTE, pIndices, pIndices.position()); + } + private static native void nglDrawRangeElementsEXT(int mode, int start, int end, int count, int type, Buffer pIndices, int pIndices_position); + public static void glDrawRangeElementsEXT(int mode, int start, int end, int count, int type, int pIndices_buffer_offset) { GLBufferChecks.ensureElementVBOenabled(); - nglDrawRangeElementsEXTVBO(mode, start, end, count, type, buffer_offset); + nglDrawRangeElementsEXTBO(mode, start, end, count, type, pIndices_buffer_offset); } - - private static native void nglDrawRangeElementsEXTVBO(int mode, int start, int end, int count, int type, int buffer_offset); + private static native void nglDrawRangeElementsEXTBO(int mode, int start, int end, int count, int type, int pIndices_buffer_offset); } diff --git a/src/java/org/lwjgl/opengl/EXTFogCoord.java b/src/java/org/lwjgl/opengl/EXTFogCoord.java index e93ebb32..60a0eb5d 100644 --- a/src/java/org/lwjgl/opengl/EXTFogCoord.java +++ b/src/java/org/lwjgl/opengl/EXTFogCoord.java @@ -1,72 +1,37 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.FloatBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTFogCoord { - - public static final int GL_FOG_COORDINATE_SOURCE_EXT = 0x8450; - public static final int GL_FOG_COORDINATE_EXT = 0x8451; - public static final int GL_FRAGMENT_DEPTH_EXT = 0x8452; - public static final int GL_CURRENT_FOG_COORDINATE_EXT = 0x8453; - public static final int GL_FOG_COORDINATE_ARRAY_TYPE_EXT = 0x8454; - public static final int GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = 0x8455; - public static final int GL_FOG_COORDINATE_ARRAY_POINTER_EXT = 0x8456; public static final int GL_FOG_COORDINATE_ARRAY_EXT = 0x8457; + public static final int GL_FOG_COORDINATE_ARRAY_POINTER_EXT = 0x8456; + public static final int GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = 0x8455; + public static final int GL_FOG_COORDINATE_ARRAY_TYPE_EXT = 0x8454; + public static final int GL_CURRENT_FOG_COORDINATE_EXT = 0x8453; + public static final int GL_FRAGMENT_DEPTH_EXT = 0x8452; + public static final int GL_FOG_COORDINATE_EXT = 0x8451; + public static final int GL_FOG_COORDINATE_SOURCE_EXT = 0x8450; private EXTFogCoord() { } static native void initNativeStubs() throws LWJGLException; - public static native void glFogCoordfEXT(float coord); - public static void glFogCoordPointerEXT(int stride, FloatBuffer data) { - BufferChecks.checkDirect(data); GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(data); nglFogCoordPointerEXT(GL11.GL_FLOAT, stride, data, data.position() << 2); } - - private static native void nglFogCoordPointerEXT(int type, int stride, Buffer data, int data_offset); - - public static void glFogCoordPointerEXT(int type, int stride, int buffer_offset) { + private static native void nglFogCoordPointerEXT(int type, int stride, Buffer data, int data_position); + public static void glFogCoordPointerEXT(int type, int stride, int data_buffer_offset) { GLBufferChecks.ensureArrayVBOenabled(); - nglFogCoordPointerEXTVBO(type, stride, buffer_offset); + nglFogCoordPointerEXTBO(type, stride, data_buffer_offset); } + private static native void nglFogCoordPointerEXTBO(int type, int stride, int data_buffer_offset); - private static native void nglFogCoordPointerEXTVBO(int type, int stride, int buffer_offset); + public static native void glFogCoordfEXT(float coord); } diff --git a/src/java/org/lwjgl/opengl/EXTFramebufferObject.java b/src/java/org/lwjgl/opengl/EXTFramebufferObject.java index f0dbeed5..42f35277 100644 --- a/src/java/org/lwjgl/opengl/EXTFramebufferObject.java +++ b/src/java/org/lwjgl/opengl/EXTFramebufferObject.java @@ -1,209 +1,130 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -import org.lwjgl.BufferChecks; import org.lwjgl.LWJGLException; - -import java.nio.IntBuffer; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTFramebufferObject { - - - /** - * Accepted by the <target> parameter of BindFramebufferEXT, - * CheckFramebufferStatusEXT, FramebufferTexture{1D|2D|3D}EXT, and - * FramebufferRenderbufferEXT: - */ - public static final int GL_FRAMEBUFFER_EXT = 0x8D40; - - /** - * Accepted by the <target> parameter of BindRenderbufferEXT, - * RenderbufferStorageEXT, and GetRenderbufferParameterivEXT, and - * returned by GetFramebufferAttachmentParameterivEXT: - */ - public static final int GL_RENDERBUFFER_EXT = 0x8D41; - - /** - * Accepted by the <internalformat> parameter of - * RenderbufferStorageEXT: - */ - public static final int GL_STENCIL_INDEX_EXT = 0x8D45; - public static final int GL_STENCIL_INDEX1_EXT = 0x8D46; - public static final int GL_STENCIL_INDEX4_EXT = 0x8D47; - public static final int GL_STENCIL_INDEX8_EXT = 0x8D48; - public static final int GL_STENCIL_INDEX16_EXT = 0x8D49; - - /** - * Accepted by the <pname> parameter of GetRenderbufferParameterivEXT: - */ - public static final int GL_RENDERBUFFER_WIDTH_EXT = 0x8D42; - public static final int GL_RENDERBUFFER_HEIGHT_EXT = 0x8D43; - public static final int GL_RENDERBUFFER_INTERNAL_FORMAT_EXT = 0x8D44; - - /** - * Accepted by the <pname> parameter of - * GetFramebufferAttachmentParameterivEXT: - */ - public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = 0x8CD0; - public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = 0x8CD1; - public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = 0x8CD2; - public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = 0x8CD3; - public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = 0x8CD4; - - /** - * Accepted by the <attachment> parameter of - * FramebufferTexture{1D|2D|3D}EXT, FramebufferRenderbufferEXT, and - * GetFramebufferAttachmentParameterivEXT - */ - public static final int GL_COLOR_ATTACHMENT0_EXT = 0x8CE0; - public static final int GL_COLOR_ATTACHMENT1_EXT = 0x8CE1; - public static final int GL_COLOR_ATTACHMENT2_EXT = 0x8CE2; - public static final int GL_COLOR_ATTACHMENT3_EXT = 0x8CE3; - public static final int GL_COLOR_ATTACHMENT4_EXT = 0x8CE4; - public static final int GL_COLOR_ATTACHMENT5_EXT = 0x8CE5; - public static final int GL_COLOR_ATTACHMENT6_EXT = 0x8CE6; - public static final int GL_COLOR_ATTACHMENT7_EXT = 0x8CE7; - public static final int GL_COLOR_ATTACHMENT8_EXT = 0x8CE8; - public static final int GL_COLOR_ATTACHMENT9_EXT = 0x8CE9; - public static final int GL_COLOR_ATTACHMENT10_EXT = 0x8CEA; - public static final int GL_COLOR_ATTACHMENT11_EXT = 0x8CEB; - public static final int GL_COLOR_ATTACHMENT12_EXT = 0x8CEC; - public static final int GL_COLOR_ATTACHMENT13_EXT = 0x8CED; - public static final int GL_COLOR_ATTACHMENT14_EXT = 0x8CEE; - public static final int GL_COLOR_ATTACHMENT15_EXT = 0x8CEF; - public static final int GL_DEPTH_ATTACHMENT_EXT = 0x8D00; - public static final int GL_STENCIL_ATTACHMENT_EXT = 0x8D20; - - /** - * Returned by CheckFramebufferStatusEXT(): - */ - public static final int GL_FRAMEBUFFER_COMPLETE_EXT = 0x8CD5; - public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = 0x8CD6; - public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = 0x8CD7; - public static final int GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT = 0x8CD8; - public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = 0x8CD9; - public static final int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT = 0x8CDA; - public static final int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT = 0x8CDB; - public static final int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT = 0x8CDC; - public static final int GL_FRAMEBUFFER_UNSUPPORTED_EXT = 0x8CDD; - public static final int GL_FRAMEBUFFER_STATUS_ERROR_EXT = 0x8CDE; - - /** - * Accepted by GetIntegerv(): - */ - public static final int GL_FRAMEBUFFER_BINDING_EXT = 0x8CA6; - public static final int GL_RENDERBUFFER_BINDING_EXT = 0x8CA7; - public static final int GL_MAX_COLOR_ATTACHMENTS_EXT = 0x8CDF; - public static final int GL_MAX_RENDERBUFFER_SIZE_EXT = 0x84E8; - /** * Returned by GetError(): */ - public static final int GL_INVALID_FRAMEBUFFER_OPERATION_EXT = 0x0506; + public static final int GL_INVALID_FRAMEBUFFER_OPERATION_EXT = 0x506; + public static final int GL_MAX_RENDERBUFFER_SIZE_EXT = 0x84e8; + public static final int GL_MAX_COLOR_ATTACHMENTS_EXT = 0x8cdf; + public static final int GL_RENDERBUFFER_BINDING_EXT = 0x8ca7; + /** + * Accepted by GetIntegerv(): + */ + public static final int GL_FRAMEBUFFER_BINDING_EXT = 0x8ca6; + public static final int GL_FRAMEBUFFER_STATUS_ERROR_EXT = 0x8cde; + public static final int GL_FRAMEBUFFER_UNSUPPORTED_EXT = 0x8cdd; + public static final int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT = 0x8cdc; + public static final int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT = 0x8cdb; + public static final int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT = 0x8cda; + public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = 0x8cd9; + public static final int GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT = 0x8cd8; + public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = 0x8cd7; + public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = 0x8cd6; + /** + * Returned by CheckFramebufferStatusEXT(): + */ + public static final int GL_FRAMEBUFFER_COMPLETE_EXT = 0x8cd5; + public static final int GL_STENCIL_ATTACHMENT_EXT = 0x8d20; + public static final int GL_DEPTH_ATTACHMENT_EXT = 0x8d00; + public static final int GL_COLOR_ATTACHMENT15_EXT = 0x8cef; + public static final int GL_COLOR_ATTACHMENT14_EXT = 0x8cee; + public static final int GL_COLOR_ATTACHMENT13_EXT = 0x8ced; + public static final int GL_COLOR_ATTACHMENT12_EXT = 0x8cec; + public static final int GL_COLOR_ATTACHMENT11_EXT = 0x8ceb; + public static final int GL_COLOR_ATTACHMENT10_EXT = 0x8cea; + public static final int GL_COLOR_ATTACHMENT9_EXT = 0x8ce9; + public static final int GL_COLOR_ATTACHMENT8_EXT = 0x8ce8; + public static final int GL_COLOR_ATTACHMENT7_EXT = 0x8ce7; + public static final int GL_COLOR_ATTACHMENT6_EXT = 0x8ce6; + public static final int GL_COLOR_ATTACHMENT5_EXT = 0x8ce5; + public static final int GL_COLOR_ATTACHMENT4_EXT = 0x8ce4; + public static final int GL_COLOR_ATTACHMENT3_EXT = 0x8ce3; + public static final int GL_COLOR_ATTACHMENT2_EXT = 0x8ce2; + public static final int GL_COLOR_ATTACHMENT1_EXT = 0x8ce1; + public static final int GL_COLOR_ATTACHMENT0_EXT = 0x8ce0; + public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = 0x8cd4; + public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = 0x8cd3; + public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = 0x8cd2; + public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = 0x8cd1; + public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = 0x8cd0; + public static final int GL_RENDERBUFFER_INTERNAL_FORMAT_EXT = 0x8d44; + public static final int GL_RENDERBUFFER_HEIGHT_EXT = 0x8d43; + public static final int GL_RENDERBUFFER_WIDTH_EXT = 0x8d42; + public static final int GL_STENCIL_INDEX16_EXT = 0x8d49; + public static final int GL_STENCIL_INDEX8_EXT = 0x8d48; + public static final int GL_STENCIL_INDEX4_EXT = 0x8d47; + public static final int GL_STENCIL_INDEX1_EXT = 0x8d46; + public static final int GL_STENCIL_INDEX_EXT = 0x8d45; + public static final int GL_RENDERBUFFER_EXT = 0x8d41; + public static final int GL_FRAMEBUFFER_EXT = 0x8d40; private EXTFramebufferObject() { } static native void initNativeStubs() throws LWJGLException; - public static native boolean glIsRenderbufferEXT(int renderbuffer); + public static native void glGenerateMipmapEXT(int target); - public static native void glBindRenderbufferEXT(int target, int renderbuffer); - - // --------------------------- - public static void glDeleteRenderbuffersEXT(IntBuffer renderbuffers) { - BufferChecks.checkDirect(renderbuffers); - nglDeleteRenderbuffersEXT(renderbuffers.remaining(), renderbuffers, renderbuffers.position()); + public static void glGetFramebufferAttachmentParameterEXT(int target, int attachment, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetFramebufferAttachmentParameterivEXT(target, attachment, pname, params, params.position()); } - private static native void nglDeleteRenderbuffersEXT(int n, IntBuffer renderbuffers, int offset); - // --------------------------- - - // --------------------------- - public static void glGenRenderbuffersEXT(IntBuffer renderbuffers) { - BufferChecks.checkDirect(renderbuffers); - nglGenRenderbuffersEXT(renderbuffers.remaining(), renderbuffers, renderbuffers.position()); - } - private static native void nglGenRenderbuffersEXT(int n, IntBuffer renderbuffers, int offset); - // --------------------------- - - public static native void glRenderbufferStorageEXT(int target, int internalformat, int width, int height); - - // --------------------------- - public static void glGetRenderbufferParameterivEXT(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetRenderbufferParameterivEXT(target, pname, params, params.position()); - } - private static native void nglGetRenderbufferParameterivEXT(int target, int pname, IntBuffer params, int offset); - // --------------------------- - - public static native boolean glIsFramebufferEXT(int framebuffer); - - public static native void glBindFramebufferEXT(int target, int framebuffer); - - // --------------------------- - public static void glDeleteFramebuffersEXT(IntBuffer framebuffers) { - BufferChecks.checkDirect(framebuffers); - nglDeleteFramebuffersEXT(framebuffers.remaining(), framebuffers, framebuffers.position()); - } - private static native void nglDeleteFramebuffersEXT(int n, IntBuffer framebuffers, int offset); - // --------------------------- - - // --------------------------- - public static void glGenFramebuffersEXT(IntBuffer framebuffers) { - BufferChecks.checkDirect(framebuffers); - nglGenFramebuffersEXT(framebuffers.remaining(), framebuffers, framebuffers.position()); - } - private static native void nglGenFramebuffersEXT(int n, IntBuffer framebuffers, int offset); - // --------------------------- - - public static native int glCheckFramebufferStatusEXT(int target); - - public static native void glFramebufferTexture1DEXT(int target, int attachment, int textarget, int texture, int level); - - public static native void glFramebufferTexture2DEXT(int target, int attachment, int textarget, int texture, int level); - - public static native void glFramebufferTexture3DEXT(int target, int attachment, int textarget, int texture, int level, int zoffset); + private static native void nglGetFramebufferAttachmentParameterivEXT(int target, int attachment, int pname, IntBuffer params, int params_position); public static native void glFramebufferRenderbufferEXT(int target, int attachment, int renderbuffertarget, int renderbuffer); - // --------------------------- - public static void glGetFramebufferAttachmentParameterivEXT(int target, int attachment, int pname, IntBuffer params) { - BufferChecks.checkDirect(params); - nglGetFramebufferAttachmentParameterivEXT(target, attachment, pname, params, params.position()); + public static native void glFramebufferTexture3DEXT(int target, int attachment, int textarget, int texture, int level, int zoffset); + + public static native void glFramebufferTexture2DEXT(int target, int attachment, int textarget, int texture, int level); + + public static native void glFramebufferTexture1DEXT(int target, int attachment, int textarget, int texture, int level); + + public static native int glCheckFramebufferStatusEXT(int target); + + public static void glGenFramebuffersEXT(IntBuffer framebuffers) { + BufferChecks.checkDirect(framebuffers); + nglGenFramebuffersEXT((framebuffers.remaining()), framebuffers, framebuffers.position()); } - private static native void nglGetFramebufferAttachmentParameterivEXT(int target, int attachment, int pname, IntBuffer params, int offset); - // --------------------------- + private static native void nglGenFramebuffersEXT(int n, IntBuffer framebuffers, int framebuffers_position); - public static native void glGenerateMipmapEXT(int target); + public static void glDeleteFramebuffersEXT(IntBuffer framebuffers) { + BufferChecks.checkDirect(framebuffers); + nglDeleteFramebuffersEXT((framebuffers.remaining()), framebuffers, framebuffers.position()); + } + private static native void nglDeleteFramebuffersEXT(int n, IntBuffer framebuffers, int framebuffers_position); -} \ No newline at end of file + public static native void glBindFramebufferEXT(int target, int framebuffer); + + public static native boolean glIsFramebufferEXT(int framebuffer); + + public static void glGetRenderbufferParameterEXT(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetRenderbufferParameterivEXT(target, pname, params, params.position()); + } + private static native void nglGetRenderbufferParameterivEXT(int target, int pname, IntBuffer params, int params_position); + + public static native void glRenderbufferStorageEXT(int target, int internalformat, int width, int height); + + public static void glGenRenderbuffersEXT(IntBuffer renderbuffers) { + BufferChecks.checkDirect(renderbuffers); + nglGenRenderbuffersEXT((renderbuffers.remaining()), renderbuffers, renderbuffers.position()); + } + private static native void nglGenRenderbuffersEXT(int n, IntBuffer renderbuffers, int renderbuffers_position); + + public static void glDeleteRenderbuffersEXT(IntBuffer renderbuffers) { + BufferChecks.checkDirect(renderbuffers); + nglDeleteRenderbuffersEXT((renderbuffers.remaining()), renderbuffers, renderbuffers.position()); + } + private static native void nglDeleteRenderbuffersEXT(int n, IntBuffer renderbuffers, int renderbuffers_position); + + public static native void glBindRenderbufferEXT(int target, int renderbuffer); + + public static native boolean glIsRenderbufferEXT(int renderbuffer); +} diff --git a/src/java/org/lwjgl/opengl/EXTMultiDrawArrays.java b/src/java/org/lwjgl/opengl/EXTMultiDrawArrays.java index fae9925e..00c4f946 100644 --- a/src/java/org/lwjgl/opengl/EXTMultiDrawArrays.java +++ b/src/java/org/lwjgl/opengl/EXTMultiDrawArrays.java @@ -1,40 +1,10 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTMultiDrawArrays { @@ -46,11 +16,10 @@ public final class EXTMultiDrawArrays { public static void glMultiDrawArraysEXT(int mode, IntBuffer piFirst, IntBuffer piCount) { BufferChecks.checkDirect(piFirst); BufferChecks.checkDirect(piCount); - if ( piFirst.remaining() != piCount.remaining() ) { + if (piFirst.remaining() != piCount.remaining()) { throw new IllegalArgumentException("piFirst.remaining() != piCount.remaining()"); } - nglMultiDrawArraysEXT(mode, piFirst, piFirst.position(), piCount, piCount.position(), piFirst.remaining()); + nglMultiDrawArraysEXT(mode, piFirst, piFirst.position(), piCount, piCount.position(), (piFirst.remaining())); } - - private static native void nglMultiDrawArraysEXT(int mode, IntBuffer piFirst, int piFirst_offset, IntBuffer piCount, int piCount_offset, int primcount); + private static native void nglMultiDrawArraysEXT(int mode, IntBuffer piFirst, int piFirst_position, IntBuffer piCount, int piCount_position, int primcount); } diff --git a/src/java/org/lwjgl/opengl/EXTPackedPixels.java b/src/java/org/lwjgl/opengl/EXTPackedPixels.java index 925a4fde..8704985f 100644 --- a/src/java/org/lwjgl/opengl/EXTPackedPixels.java +++ b/src/java/org/lwjgl/opengl/EXTPackedPixels.java @@ -1,44 +1,19 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTPackedPixels { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_UNSIGNED_BYTE_3_3_2_EXT = 0x8032; - public static final int GL_UNSIGNED_SHORT_4_4_4_4_EXT = 0x8033; - public static final int GL_UNSIGNED_SHORT_5_5_5_1_EXT = 0x8034; - public static final int GL_UNSIGNED_INT_8_8_8_8_EXT = 0x8035; +public final class EXTPackedPixels { public static final int GL_UNSIGNED_INT_10_10_10_2_EXT = 0x8036; + public static final int GL_UNSIGNED_INT_8_8_8_8_EXT = 0x8035; + public static final int GL_UNSIGNED_SHORT_5_5_5_1_EXT = 0x8034; + public static final int GL_UNSIGNED_SHORT_4_4_4_4_EXT = 0x8033; + public static final int GL_UNSIGNED_BYTE_3_3_2_EXT = 0x8032; private EXTPackedPixels() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTPalettedTexture.java b/src/java/org/lwjgl/opengl/EXTPalettedTexture.java index 3e733286..ac0cf314 100644 --- a/src/java/org/lwjgl/opengl/EXTPalettedTexture.java +++ b/src/java/org/lwjgl/opengl/EXTPalettedTexture.java @@ -1,163 +1,96 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; - import java.nio.*; public final class EXTPalettedTexture { - - /* - * Accepted by the internalformat parameter of TexImage1D, TexImage2D and - * TexImage3DEXT: - */ - public static final int GL_COLOR_INDEX1_EXT = 0x80E2; - public static final int GL_COLOR_INDEX2_EXT = 0x80E3; - public static final int GL_COLOR_INDEX4_EXT = 0x80E4; - public static final int GL_COLOR_INDEX8_EXT = 0x80E5; - public static final int GL_COLOR_INDEX12_EXT = 0x80E6; - public static final int GL_COLOR_INDEX16_EXT = 0x80E7; - - /* - * Accepted by the pname parameter of GetColorTableParameterivEXT and - * GetColorTableParameterfvEXT: - */ - public static final int GL_COLOR_TABLE_FORMAT_EXT = 0x80D8; - public static final int GL_COLOR_TABLE_WIDTH_EXT = 0x80D9; - public static final int GL_COLOR_TABLE_RED_SIZE_EXT = 0x80DA; - public static final int GL_COLOR_TABLE_GREEN_SIZE_EXT = 0x80DB; - public static final int GL_COLOR_TABLE_BLUE_SIZE_EXT = 0x80DC; - public static final int GL_COLOR_TABLE_ALPHA_SIZE_EXT = 0x80DD; - public static final int GL_COLOR_TABLE_LUMINANCE_SIZE_EXT = 0x80DE; - public static final int GL_COLOR_TABLE_INTENSITY_SIZE_EXT = 0x80DF; - - /* - * Accepted by the value parameter of GetTexLevelParameter{if}v: - */ - public static final int GL_TEXTURE_INDEX_SIZE_EXT = 0x80ED; + public static final int GL_TEXTURE_INDEX_SIZE_EXT = 0x80ed; + public static final int GL_COLOR_TABLE_INTENSITY_SIZE_EXT = 0x80df; + public static final int GL_COLOR_TABLE_LUMINANCE_SIZE_EXT = 0x80de; + public static final int GL_COLOR_TABLE_ALPHA_SIZE_EXT = 0x80dd; + public static final int GL_COLOR_TABLE_BLUE_SIZE_EXT = 0x80dc; + public static final int GL_COLOR_TABLE_GREEN_SIZE_EXT = 0x80db; + public static final int GL_COLOR_TABLE_RED_SIZE_EXT = 0x80da; + public static final int GL_COLOR_TABLE_WIDTH_EXT = 0x80d9; + public static final int GL_COLOR_TABLE_FORMAT_EXT = 0x80d8; + public static final int GL_COLOR_INDEX16_EXT = 0x80e7; + public static final int GL_COLOR_INDEX12_EXT = 0x80e6; + public static final int GL_COLOR_INDEX8_EXT = 0x80e5; + public static final int GL_COLOR_INDEX4_EXT = 0x80e4; + public static final int GL_COLOR_INDEX2_EXT = 0x80e3; + public static final int GL_COLOR_INDEX1_EXT = 0x80e2; private EXTPalettedTexture() { } static native void initNativeStubs() throws LWJGLException; - // --------------------------- - public static void glColorTableEXT(int target, int internalFormat, int width, int format, int type, ByteBuffer data) { - BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1)); - nglColorTableEXT(target, internalFormat, width, format, type, data, data.position()); - } - - public static void glColorTableEXT(int target, int internalFormat, int width, int format, int type, ShortBuffer data) { - BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1) >> 1); - nglColorTableEXT(target, internalFormat, width, format, type, data, data.position() << 1); - } - - public static void glColorTableEXT(int target, int internalFormat, int width, int format, int type, IntBuffer data) { - BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1) >> 2); - nglColorTableEXT(target, internalFormat, width, format, type, data, data.position() << 2); - } - - public static void glColorTableEXT(int target, int internalFormat, int width, int format, int type, FloatBuffer data) { - BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1) >> 2); - nglColorTableEXT(target, internalFormat, width, format, type, data, data.position() << 2); - } - - private static native void nglColorTableEXT(int target, int internalFormat, int width, int format, int type, - Buffer data, int dataOffset); - // --------------------------- - - // --------------------------- - public static void glColorSubTableEXT(int target, int start, int count, int format, int type, ByteBuffer data) { - BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(format, type, count, 1, 1)); - nglColorSubTableEXT(target, start, count, format, type, data, data.position()); - } - - public static void glColorSubTableEXT(int target, int start, int count, int format, int type, ShortBuffer data) { - BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(format, type, count, 1, 1) << 1); - nglColorSubTableEXT(target, start, count, format, type, data, data.position() << 1); - } - - public static void glColorSubTableEXT(int target, int start, int count, int format, int type, IntBuffer data) { - BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(format, type, count, 1, 1) << 2); - nglColorSubTableEXT(target, start, count, format, type, data, data.position() << 2); - } - - public static void glColorSubTableEXT(int target, int start, int count, int format, int type, FloatBuffer data) { - BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(format, type, count, 1, 1) << 2); - nglColorSubTableEXT(target, start, count, format, type, data, data.position() << 2); - } - - private static native void nglColorSubTableEXT(int target, int start, int count, int format, int type, - Buffer data, int dataOffset); - // --------------------------- - - // --------------------------- - public static void glGetColorTableEXT(int target, int format, int type, ByteBuffer data) { - nglGetColorTableEXT(target, format, type, data, data.position()); - } - - public static void glGetColorTableEXT(int target, int format, int type, ShortBuffer data) { - nglGetColorTableEXT(target, format, type, data, data.position() << 1); - } - - public static void glGetColorTableEXT(int target, int format, int type, IntBuffer data) { - nglGetColorTableEXT(target, format, type, data, data.position() << 2); - } - - public static void glGetColorTableEXT(int target, int format, int type, FloatBuffer data) { - nglGetColorTableEXT(target, format, type, data, data.position() << 2); - } - - private static native void nglGetColorTableEXT(int target, int format, int type, Buffer data, int dataOffset); - // --------------------------- - - // --------------------------- - public static void glGetColorTableParameterivEXT(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetColorTableParameterivEXT(target, pname, params, params.position()); - } - - private static native void nglGetColorTableParameterivEXT(int target, int pname, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetColorTableParameterfvEXT(int target, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); + public static void glGetColorTableParameterEXT(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); nglGetColorTableParameterfvEXT(target, pname, params, params.position()); } + private static native void nglGetColorTableParameterfvEXT(int target, int pname, FloatBuffer params, int params_position); - private static native void nglGetColorTableParameterfvEXT(int target, int pname, FloatBuffer params, int paramsOffset); - // --------------------------- + public static void glGetColorTableParameterEXT(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetColorTableParameterivEXT(target, pname, params, params.position()); + } + private static native void nglGetColorTableParameterivEXT(int target, int pname, IntBuffer params, int params_position); -} \ No newline at end of file + public static void glGetColorTableEXT(int target, int format, int type, ShortBuffer data) { + BufferChecks.checkDirect(data); + nglGetColorTableEXT(target, format, type, data, data.position() << 1); + } + public static void glGetColorTableEXT(int target, int format, int type, FloatBuffer data) { + BufferChecks.checkDirect(data); + nglGetColorTableEXT(target, format, type, data, data.position() << 2); + } + public static void glGetColorTableEXT(int target, int format, int type, ByteBuffer data) { + BufferChecks.checkDirect(data); + nglGetColorTableEXT(target, format, type, data, data.position()); + } + public static void glGetColorTableEXT(int target, int format, int type, IntBuffer data) { + BufferChecks.checkDirect(data); + nglGetColorTableEXT(target, format, type, data, data.position() << 2); + } + private static native void nglGetColorTableEXT(int target, int format, int type, Buffer data, int data_position); + + public static void glColorSubTableEXT(int target, int start, int count, int format, int type, ShortBuffer data) { + BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(data, format, type, count, 1, 1)); + nglColorSubTableEXT(target, start, count, format, type, data, data.position() << 1); + } + public static void glColorSubTableEXT(int target, int start, int count, int format, int type, FloatBuffer data) { + BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(data, format, type, count, 1, 1)); + nglColorSubTableEXT(target, start, count, format, type, data, data.position() << 2); + } + public static void glColorSubTableEXT(int target, int start, int count, int format, int type, ByteBuffer data) { + BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(data, format, type, count, 1, 1)); + nglColorSubTableEXT(target, start, count, format, type, data, data.position()); + } + public static void glColorSubTableEXT(int target, int start, int count, int format, int type, IntBuffer data) { + BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(data, format, type, count, 1, 1)); + nglColorSubTableEXT(target, start, count, format, type, data, data.position() << 2); + } + private static native void nglColorSubTableEXT(int target, int start, int count, int format, int type, Buffer data, int data_position); + + public static void glColorTableEXT(int target, int internalFormat, int width, int format, int type, ShortBuffer data) { + BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(data, format, type, width, 1, 1)); + nglColorTableEXT(target, internalFormat, width, format, type, data, data.position() << 1); + } + public static void glColorTableEXT(int target, int internalFormat, int width, int format, int type, FloatBuffer data) { + BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(data, format, type, width, 1, 1)); + nglColorTableEXT(target, internalFormat, width, format, type, data, data.position() << 2); + } + public static void glColorTableEXT(int target, int internalFormat, int width, int format, int type, ByteBuffer data) { + BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(data, format, type, width, 1, 1)); + nglColorTableEXT(target, internalFormat, width, format, type, data, data.position()); + } + public static void glColorTableEXT(int target, int internalFormat, int width, int format, int type, IntBuffer data) { + BufferChecks.checkBuffer(data, GLBufferChecks.calculateImageStorage(data, format, type, width, 1, 1)); + nglColorTableEXT(target, internalFormat, width, format, type, data, data.position() << 2); + } + private static native void nglColorTableEXT(int target, int internalFormat, int width, int format, int type, Buffer data, int data_position); +} diff --git a/src/java/org/lwjgl/opengl/EXTPixelBufferObject.java b/src/java/org/lwjgl/opengl/EXTPixelBufferObject.java index cc60aefa..0b3483b4 100644 --- a/src/java/org/lwjgl/opengl/EXTPixelBufferObject.java +++ b/src/java/org/lwjgl/opengl/EXTPixelBufferObject.java @@ -1,53 +1,18 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; + public final class EXTPixelBufferObject extends ARBBufferObject { - - /* - * Accepted by the parameters of BindBuffer, BufferData, - * BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData, - * GetBufferParameteriv, and GetBufferPointerv: - */ - public static final int GL_PIXEL_PACK_BUFFER_EXT = 0x88EB; - public static final int GL_PIXEL_UNPACK_BUFFER_EXT = 0x88EC; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ - public static final int PIXEL_PACK_BUFFER_BINDING_EXT = 0x88ED; - public static final int PIXEL_UNPACK_BUFFER_BINDING_EXT = 0x88EF; + public static final int PIXEL_UNPACK_BUFFER_BINDING_EXT = 0x88ef; + public static final int PIXEL_PACK_BUFFER_BINDING_EXT = 0x88ed; + public static final int GL_PIXEL_UNPACK_BUFFER_EXT = 0x88ec; + public static final int GL_PIXEL_PACK_BUFFER_EXT = 0x88eb; private EXTPixelBufferObject() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTPointParameters.java b/src/java/org/lwjgl/opengl/EXTPointParameters.java index 98631fa3..038d84c9 100644 --- a/src/java/org/lwjgl/opengl/EXTPointParameters.java +++ b/src/java/org/lwjgl/opengl/EXTPointParameters.java @@ -1,60 +1,27 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.FloatBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTPointParameters { - - public static final int GL_POINT_SIZE_MIN_EXT = 0x8126; - public static final int GL_POINT_SIZE_MAX_EXT = 0x8127; - public static final int GL_POINT_FADE_THRESHOLD_SIZE_EXT = 0x8128; public static final int GL_DISTANCE_ATTENUATION_EXT = 0x8129; + public static final int GL_POINT_FADE_THRESHOLD_SIZE_EXT = 0x8128; + public static final int GL_POINT_SIZE_MAX_EXT = 0x8127; + public static final int GL_POINT_SIZE_MIN_EXT = 0x8126; private EXTPointParameters() { } static native void initNativeStubs() throws LWJGLException; - public static native void glPointParameterfEXT(int pname, float param); - public static void glPointParameterEXT(int pname, FloatBuffer pfParams) { - BufferChecks.checkDirect(pfParams); - BufferChecks.checkBuffer(pfParams); + BufferChecks.checkBuffer(pfParams, 4); nglPointParameterfvEXT(pname, pfParams, pfParams.position()); } + private static native void nglPointParameterfvEXT(int pname, FloatBuffer pfParams, int pfParams_position); - private static native void nglPointParameterfvEXT(int pname, FloatBuffer pfParams, int pfParams_offset); + public static native void glPointParameterfEXT(int pname, float param); } diff --git a/src/java/org/lwjgl/opengl/EXTRescaleNormal.java b/src/java/org/lwjgl/opengl/EXTRescaleNormal.java index a9c76115..dc53471d 100644 --- a/src/java/org/lwjgl/opengl/EXTRescaleNormal.java +++ b/src/java/org/lwjgl/opengl/EXTRescaleNormal.java @@ -1,40 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTRescaleNormal { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_RESCALE_NORMAL_EXT = 0x803A; +public final class EXTRescaleNormal { + public static final int GL_RESCALE_NORMAL_EXT = 0x803a; private EXTRescaleNormal() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTSecondaryColor.java b/src/java/org/lwjgl/opengl/EXTSecondaryColor.java index 6b17c82b..608fb3c8 100644 --- a/src/java/org/lwjgl/opengl/EXTSecondaryColor.java +++ b/src/java/org/lwjgl/opengl/EXTSecondaryColor.java @@ -1,82 +1,45 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTSecondaryColor { - - public static final int GL_COLOR_SUM_EXT = 0x8458; + public static final int GL_SECONDARY_COLOR_ARRAY_EXT = 0x845e; + public static final int GL_SECONDARY_COLOR_ARRAY_POINTER_EXT = 0x845d; + public static final int GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT = 0x845c; + public static final int GL_SECONDARY_COLOR_ARRAY_TYPE_EXT = 0x845b; + public static final int GL_SECONDARY_COLOR_ARRAY_SIZE_EXT = 0x845a; public static final int GL_CURRENT_SECONDARY_COLOR_EXT = 0x8459; - public static final int GL_SECONDARY_COLOR_ARRAY_SIZE_EXT = 0x845A; - public static final int GL_SECONDARY_COLOR_ARRAY_TYPE_EXT = 0x845B; - public static final int GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT = 0x845C; - public static final int GL_SECONDARY_COLOR_ARRAY_POINTER_EXT = 0x845D; - public static final int GL_SECONDARY_COLOR_ARRAY_EXT = 0x845E; + public static final int GL_COLOR_SUM_EXT = 0x8458; private EXTSecondaryColor() { } static native void initNativeStubs() throws LWJGLException; - public static native void glSecondaryColor3bEXT(byte red, byte green, byte blue); - - public static native void glSecondaryColor3fEXT(float red, float green, float blue); + public static void glSecondaryColorPointerEXT(int size, int stride, FloatBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglSecondaryColorPointerEXT(size, GL11.GL_FLOAT, stride, pPointer, pPointer.position() << 2); + } + public static void glSecondaryColorPointerEXT(int size, boolean unsigned, int stride, ByteBuffer pPointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); + nglSecondaryColorPointerEXT(size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, pPointer, pPointer.position()); + } + private static native void nglSecondaryColorPointerEXT(int size, int type, int stride, Buffer pPointer, int pPointer_position); + public static void glSecondaryColorPointerEXT(int size, int type, int stride, int pPointer_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglSecondaryColorPointerEXTBO(size, type, stride, pPointer_buffer_offset); + } + private static native void nglSecondaryColorPointerEXTBO(int size, int type, int stride, int pPointer_buffer_offset); public static native void glSecondaryColor3ubEXT(byte red, byte green, byte blue); - public static void glSecondaryColorPointerEXT(int size, boolean unsigned, int stride, ByteBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglSecondaryColorPointerEXT(size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, pPointer, pPointer.position()); - } + public static native void glSecondaryColor3fEXT(float red, float green, float blue); - public static void glSecondaryColorPointerEXT(int size, int stride, FloatBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglSecondaryColorPointerEXT(size, GL11.GL_FLOAT, stride, pPointer, pPointer.position() << 2); - } - - private static native void nglSecondaryColorPointerEXT(int size, int type, int stride, Buffer pPointer, int pPointer_offset); - - public static void glSecondaryColorPointerEXT(int size, int type, int stride, int buffer_offset) { - GLBufferChecks.ensureArrayVBOenabled(); - nglSecondaryColorPointerEXTVBO(size, type, stride, buffer_offset); - } - - private static native void nglSecondaryColorPointerEXTVBO(int size, int type, int stride, int buffer_offset); + public static native void glSecondaryColor3bEXT(byte red, byte green, byte blue); } diff --git a/src/java/org/lwjgl/opengl/EXTSeparateSpecularColor.java b/src/java/org/lwjgl/opengl/EXTSeparateSpecularColor.java index def67b90..5d820a5e 100644 --- a/src/java/org/lwjgl/opengl/EXTSeparateSpecularColor.java +++ b/src/java/org/lwjgl/opengl/EXTSeparateSpecularColor.java @@ -1,42 +1,17 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTSeparateSpecularColor { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_SINGLE_COLOR_EXT = 0x81F9; - public static final int GL_SEPARATE_SPECULAR_COLOR_EXT = 0x81FA; - public static final int GL_LIGHT_MODEL_COLOR_CONTROL_EXT = 0x81F8; +public final class EXTSeparateSpecularColor { + public static final int GL_LIGHT_MODEL_COLOR_CONTROL_EXT = 0x81f8; + public static final int GL_SEPARATE_SPECULAR_COLOR_EXT = 0x81fa; + public static final int GL_SINGLE_COLOR_EXT = 0x81f9; private EXTSeparateSpecularColor() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTSharedTexturePalette.java b/src/java/org/lwjgl/opengl/EXTSharedTexturePalette.java index 5152b462..a974449f 100644 --- a/src/java/org/lwjgl/opengl/EXTSharedTexturePalette.java +++ b/src/java/org/lwjgl/opengl/EXTSharedTexturePalette.java @@ -1,40 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTSharedTexturePalette { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_SHARED_TEXTURE_PALETTE_EXT = 0x81FB; +public final class EXTSharedTexturePalette { + public static final int GL_SHARED_TEXTURE_PALETTE_EXT = 0x81fb; private EXTSharedTexturePalette() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTStencilTwoSide.java b/src/java/org/lwjgl/opengl/EXTStencilTwoSide.java index a1ab5223..268e0ae6 100644 --- a/src/java/org/lwjgl/opengl/EXTStencilTwoSide.java +++ b/src/java/org/lwjgl/opengl/EXTStencilTwoSide.java @@ -1,42 +1,14 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTStencilTwoSide { - - public static final int GL_STENCIL_TEST_TWO_SIDE_EXT = 0x8910; public static final int GL_ACTIVE_STENCIL_FACE_EXT = 0x8911; + public static final int GL_STENCIL_TEST_TWO_SIDE_EXT = 0x8910; private EXTStencilTwoSide() { } diff --git a/src/java/org/lwjgl/opengl/EXTStencilWrap.java b/src/java/org/lwjgl/opengl/EXTStencilWrap.java index eeee731b..77df2fe3 100644 --- a/src/java/org/lwjgl/opengl/EXTStencilWrap.java +++ b/src/java/org/lwjgl/opengl/EXTStencilWrap.java @@ -1,41 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTStencilWrap { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_INCR_WRAP_EXT = 0x8507; +public final class EXTStencilWrap { public static final int GL_DECR_WRAP_EXT = 0x8508; + public static final int GL_INCR_WRAP_EXT = 0x8507; private EXTStencilWrap() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTTextureCompressionS3TC.java b/src/java/org/lwjgl/opengl/EXTTextureCompressionS3TC.java index bbac5194..aefb9a56 100644 --- a/src/java/org/lwjgl/opengl/EXTTextureCompressionS3TC.java +++ b/src/java/org/lwjgl/opengl/EXTTextureCompressionS3TC.java @@ -1,43 +1,18 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTTextureCompressionS3TC { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0; - public static final int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; - public static final int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; - public static final int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; +public final class EXTTextureCompressionS3TC { + public static final int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83f3; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83f2; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83f1; + public static final int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83f0; private EXTTextureCompressionS3TC() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTTextureEnvCombine.java b/src/java/org/lwjgl/opengl/EXTTextureEnvCombine.java index 12741fd5..1424a67b 100644 --- a/src/java/org/lwjgl/opengl/EXTTextureEnvCombine.java +++ b/src/java/org/lwjgl/opengl/EXTTextureEnvCombine.java @@ -1,61 +1,35 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -/** Insert the type's description here. Creation date: (22/02/00 01:26:05) */ -public final class EXTTextureEnvCombine { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_COMBINE_EXT = 0x8570; - public static final int GL_COMBINE_RGB_EXT = 0x8571; - public static final int GL_COMBINE_ALPHA_EXT = 0x8572; - public static final int GL_SOURCE0_RGB_EXT = 0x8580; - public static final int GL_SOURCE1_RGB_EXT = 0x8581; - public static final int GL_SOURCE2_RGB_EXT = 0x8582; - public static final int GL_SOURCE0_ALPHA_EXT = 0x8588; - public static final int GL_SOURCE1_ALPHA_EXT = 0x8589; - public static final int GL_SOURCE2_ALPHA_EXT = 0x858A; - public static final int GL_OPERAND0_RGB_EXT = 0x8590; - public static final int GL_OPERAND1_RGB_EXT = 0x8591; - public static final int GL_OPERAND2_RGB_EXT = 0x8592; - public static final int GL_OPERAND0_ALPHA_EXT = 0x8598; - public static final int GL_OPERAND1_ALPHA_EXT = 0x8599; - public static final int GL_OPERAND2_ALPHA_EXT = 0x859A; - public static final int GL_RGB_SCALE_EXT = 0x8573; - public static final int GL_ADD_SIGNED_EXT = 0x8574; - public static final int GL_INTERPOLATE_EXT = 0x8575; - public static final int GL_CONSTANT_EXT = 0x8576; - public static final int GL_PRIMARY_COLOR_EXT = 0x8577; +public final class EXTTextureEnvCombine { public static final int GL_PREVIOUS_EXT = 0x8578; + public static final int GL_PRIMARY_COLOR_EXT = 0x8577; + public static final int GL_CONSTANT_EXT = 0x8576; + public static final int GL_INTERPOLATE_EXT = 0x8575; + public static final int GL_ADD_SIGNED_EXT = 0x8574; + public static final int GL_RGB_SCALE_EXT = 0x8573; + public static final int GL_OPERAND2_ALPHA_EXT = 0x859a; + public static final int GL_OPERAND1_ALPHA_EXT = 0x8599; + public static final int GL_OPERAND0_ALPHA_EXT = 0x8598; + public static final int GL_OPERAND2_RGB_EXT = 0x8592; + public static final int GL_OPERAND1_RGB_EXT = 0x8591; + public static final int GL_OPERAND0_RGB_EXT = 0x8590; + public static final int GL_SOURCE2_ALPHA_EXT = 0x858a; + public static final int GL_SOURCE1_ALPHA_EXT = 0x8589; + public static final int GL_SOURCE0_ALPHA_EXT = 0x8588; + public static final int GL_SOURCE2_RGB_EXT = 0x8582; + public static final int GL_SOURCE1_RGB_EXT = 0x8581; + public static final int GL_SOURCE0_RGB_EXT = 0x8580; + public static final int GL_COMBINE_ALPHA_EXT = 0x8572; + public static final int GL_COMBINE_RGB_EXT = 0x8571; + public static final int GL_COMBINE_EXT = 0x8570; private EXTTextureEnvCombine() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTTextureEnvDot3.java b/src/java/org/lwjgl/opengl/EXTTextureEnvDot3.java index 38f0e45c..d587e3bf 100644 --- a/src/java/org/lwjgl/opengl/EXTTextureEnvDot3.java +++ b/src/java/org/lwjgl/opengl/EXTTextureEnvDot3.java @@ -1,41 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTTextureEnvDot3 { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_DOT3_RGB_EXT = 0x8740; +public final class EXTTextureEnvDot3 { public static final int GL_DOT3_RGBA_EXT = 0x8741; + public static final int GL_DOT3_RGB_EXT = 0x8740; private EXTTextureEnvDot3() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTTextureFilterAnisotropic.java b/src/java/org/lwjgl/opengl/EXTTextureFilterAnisotropic.java index 17ae20d0..095a4d96 100644 --- a/src/java/org/lwjgl/opengl/EXTTextureFilterAnisotropic.java +++ b/src/java/org/lwjgl/opengl/EXTTextureFilterAnisotropic.java @@ -1,41 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTTextureFilterAnisotropic { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE; - public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF; +public final class EXTTextureFilterAnisotropic { + public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84ff; + public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84fe; private EXTTextureFilterAnisotropic() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTTextureLODBias.java b/src/java/org/lwjgl/opengl/EXTTextureLODBias.java index 92e4a552..a45cf6e5 100644 --- a/src/java/org/lwjgl/opengl/EXTTextureLODBias.java +++ b/src/java/org/lwjgl/opengl/EXTTextureLODBias.java @@ -1,42 +1,17 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTTextureLODBias { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_TEXTURE_FILTER_CONTROL_EXT = 0x8500; +public final class EXTTextureLODBias { + public static final int GL_MAX_TEXTURE_LOD_BIAS_EXT = 0x84fd; public static final int GL_TEXTURE_LOD_BIAS_EXT = 0x8501; - public static final int GL_MAX_TEXTURE_LOD_BIAS_EXT = 0x84FD; + public static final int GL_TEXTURE_FILTER_CONTROL_EXT = 0x8500; private EXTTextureLODBias() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTTextureMirrorClamp.java b/src/java/org/lwjgl/opengl/EXTTextureMirrorClamp.java index e5921816..3602b9a1 100644 --- a/src/java/org/lwjgl/opengl/EXTTextureMirrorClamp.java +++ b/src/java/org/lwjgl/opengl/EXTTextureMirrorClamp.java @@ -1,48 +1,17 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTTextureMirrorClamp { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - /* - * Accepted by the parameter of TexParameteri and TexParameterf, - * and by the parameter of TexParameteriv and TexParameterfv, - * when their parameter is TEXTURE_WRAP_S, TEXTURE_WRAP_T, - * or TEXTURE_WRAP_R: - */ - public static final int GL_MIRROR_CLAMP_EXT = 0x8742; - public static final int GL_MIRROR_CLAMP_TO_EDGE_EXT = 0x8743; +public final class EXTTextureMirrorClamp { public static final int GL_MIRROR_CLAMP_TO_BORDER_EXT = 0x8912; + public static final int GL_MIRROR_CLAMP_TO_EDGE_EXT = 0x8743; + public static final int GL_MIRROR_CLAMP_EXT = 0x8742; private EXTTextureMirrorClamp() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTTextureRectangle.java b/src/java/org/lwjgl/opengl/EXTTextureRectangle.java index 80b7f740..f9cf1f4a 100644 --- a/src/java/org/lwjgl/opengl/EXTTextureRectangle.java +++ b/src/java/org/lwjgl/opengl/EXTTextureRectangle.java @@ -1,43 +1,18 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class EXTTextureRectangle { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_TEXTURE_RECTANGLE_EXT = 0x84F5; - public static final int GL_TEXTURE_BINDING_RECTANGLE_EXT = 0x84F6; - public static final int GL_PROXY_TEXTURE_RECTANGLE_EXT = 0x84F7; - public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT = 0x84F8; +public final class EXTTextureRectangle { + public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT = 0x84f8; + public static final int GL_PROXY_TEXTURE_RECTANGLE_EXT = 0x84f7; + public static final int GL_TEXTURE_BINDING_RECTANGLE_EXT = 0x84f6; + public static final int GL_TEXTURE_RECTANGLE_EXT = 0x84f5; private EXTTextureRectangle() { } + } diff --git a/src/java/org/lwjgl/opengl/EXTVertexShader.java b/src/java/org/lwjgl/opengl/EXTVertexShader.java index 5e1894f2..096a8806 100644 --- a/src/java/org/lwjgl/opengl/EXTVertexShader.java +++ b/src/java/org/lwjgl/opengl/EXTVertexShader.java @@ -1,393 +1,332 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTVertexShader { - - public static final int GL_VERTEX_SHADER_EXT = 0x8780; - public static final int GL_VERTEX_SHADER_BINDING_EXT = 0x8781; - public static final int GL_OP_INDEX_EXT = 0x8782; - public static final int GL_OP_NEGATE_EXT = 0x8783; - public static final int GL_OP_DOT3_EXT = 0x8784; - public static final int GL_OP_DOT4_EXT = 0x8785; - public static final int GL_OP_MUL_EXT = 0x8786; - public static final int GL_OP_ADD_EXT = 0x8787; - public static final int GL_OP_MADD_EXT = 0x8788; - public static final int GL_OP_FRAC_EXT = 0x8789; - public static final int GL_OP_MAX_EXT = 0x878A; - public static final int GL_OP_MIN_EXT = 0x878B; - public static final int GL_OP_SET_GE_EXT = 0x878C; - public static final int GL_OP_SET_LT_EXT = 0x878D; - public static final int GL_OP_CLAMP_EXT = 0x878E; - public static final int GL_OP_FLOOR_EXT = 0x878F; - public static final int GL_OP_ROUND_EXT = 0x8790; - public static final int GL_OP_EXP_BASE_2_EXT = 0x8791; - public static final int GL_OP_LOG_BASE_2_EXT = 0x8792; - public static final int GL_OP_POWER_EXT = 0x8793; - public static final int GL_OP_RECIP_EXT = 0x8794; - public static final int GL_OP_RECIP_SQRT_EXT = 0x8795; - public static final int GL_OP_SUB_EXT = 0x8796; - public static final int GL_OP_CROSS_PRODUCT_EXT = 0x8797; - public static final int GL_OP_MULTIPLY_MATRIX_EXT = 0x8798; + public static final int GL_LOCAL_CONSTANT_DATATYPE_EXT = 0x87ed; + public static final int GL_LOCAL_CONSTANT_VALUE_EXT = 0x87ec; + public static final int GL_INVARIANT_DATATYPE_EXT = 0x87eb; + public static final int GL_INVARIANT_VALUE_EXT = 0x87ea; + public static final int GL_VARIANT_ARRAY_POINTER_EXT = 0x87e9; + public static final int GL_VARIANT_ARRAY_EXT = 0x87e8; + public static final int GL_VARIANT_ARRAY_TYPE_EXT = 0x87e7; + public static final int GL_VARIANT_ARRAY_STRIDE_EXT = 0x87e6; + public static final int GL_VARIANT_DATATYPE_EXT = 0x87e5; + public static final int GL_VARIANT_VALUE_EXT = 0x87e4; + public static final int GL_MVP_MATRIX_EXT = 0x87e3; + public static final int GL_CURRENT_VERTEX_EXT = 0x87e2; + public static final int GL_FULL_RANGE_EXT = 0x87e1; + public static final int GL_NORMALIZED_RANGE_EXT = 0x87e0; + public static final int GL_NEGATIVE_ONE_EXT = 0x87df; + public static final int GL_ONE_EXT = 0x87de; + public static final int GL_ZERO_EXT = 0x87dd; + public static final int GL_NEGATIVE_W_EXT = 0x87dc; + public static final int GL_NEGATIVE_Z_EXT = 0x87db; + public static final int GL_NEGATIVE_Y_EXT = 0x87da; + public static final int GL_NEGATIVE_X_EXT = 0x87d9; + public static final int GL_W_EXT = 0x87d8; + public static final int GL_Z_EXT = 0x87d7; + public static final int GL_Y_EXT = 0x87d6; + public static final int GL_X_EXT = 0x87d5; + public static final int GL_VERTEX_SHADER_OPTIMIZED_EXT = 0x87d4; + public static final int GL_VERTEX_SHADER_LOCALS_EXT = 0x87d3; + public static final int GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87d2; + public static final int GL_VERTEX_SHADER_INVARIANTS_EXT = 0x87d1; + public static final int GL_VERTEX_SHADER_VARIANTS_EXT = 0x87d0; + public static final int GL_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87cf; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = 0x87ce; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87cd; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = 0x87cc; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = 0x87cb; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87ca; + public static final int GL_MAX_VERTEX_SHADER_LOCALS_EXT = 0x87c9; + public static final int GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87c8; + public static final int GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = 0x87c7; + public static final int GL_MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87c6; + public static final int GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87c5; + public static final int GL_LOCAL_EXT = 0x87c4; + public static final int GL_LOCAL_CONSTANT_EXT = 0x87c3; + public static final int GL_INVARIANT_EXT = 0x87c2; + public static final int GL_VARIANT_EXT = 0x87c1; + public static final int GL_MATRIX_EXT = 0x87c0; + public static final int GL_VECTOR_EXT = 0x87bf; + public static final int GL_SCALAR_EXT = 0x87be; + public static final int GL_OUTPUT_FOG_EXT = 0x87bd; + public static final int GL_OUTPUT_TEXTURE_COORD31_EXT = 0x87bc; + public static final int GL_OUTPUT_TEXTURE_COORD30_EXT = 0x87bb; + public static final int GL_OUTPUT_TEXTURE_COORD29_EXT = 0x87ba; + public static final int GL_OUTPUT_TEXTURE_COORD28_EXT = 0x87b9; + public static final int GL_OUTPUT_TEXTURE_COORD27_EXT = 0x87b8; + public static final int GL_OUTPUT_TEXTURE_COORD26_EXT = 0x87b7; + public static final int GL_OUTPUT_TEXTURE_COORD25_EXT = 0x87b6; + public static final int GL_OUTPUT_TEXTURE_COORD24_EXT = 0x87b5; + public static final int GL_OUTPUT_TEXTURE_COORD23_EXT = 0x87b4; + public static final int GL_OUTPUT_TEXTURE_COORD22_EXT = 0x87b3; + public static final int GL_OUTPUT_TEXTURE_COORD21_EXT = 0x87b2; + public static final int GL_OUTPUT_TEXTURE_COORD20_EXT = 0x87b1; + public static final int GL_OUTPUT_TEXTURE_COORD19_EXT = 0x87b0; + public static final int GL_OUTPUT_TEXTURE_COORD18_EXT = 0x87af; + public static final int GL_OUTPUT_TEXTURE_COORD17_EXT = 0x87ae; + public static final int GL_OUTPUT_TEXTURE_COORD16_EXT = 0x87ad; + public static final int GL_OUTPUT_TEXTURE_COORD15_EXT = 0x87ac; + public static final int GL_OUTPUT_TEXTURE_COORD14_EXT = 0x87ab; + public static final int GL_OUTPUT_TEXTURE_COORD13_EXT = 0x87aa; + public static final int GL_OUTPUT_TEXTURE_COORD12_EXT = 0x87a9; + public static final int GL_OUTPUT_TEXTURE_COORD11_EXT = 0x87a8; + public static final int GL_OUTPUT_TEXTURE_COORD10_EXT = 0x87a7; + public static final int GL_OUTPUT_TEXTURE_COORD9_EXT = 0x87a6; + public static final int GL_OUTPUT_TEXTURE_COORD8_EXT = 0x87a5; + public static final int GL_OUTPUT_TEXTURE_COORD7_EXT = 0x87a4; + public static final int GL_OUTPUT_TEXTURE_COORD6_EXT = 0x87a3; + public static final int GL_OUTPUT_TEXTURE_COORD5_EXT = 0x87a2; + public static final int GL_OUTPUT_TEXTURE_COORD4_EXT = 0x87a1; + public static final int GL_OUTPUT_TEXTURE_COORD3_EXT = 0x87a0; + public static final int GL_OUTPUT_TEXTURE_COORD2_EXT = 0x879f; + public static final int GL_OUTPUT_TEXTURE_COORD1_EXT = 0x879e; + public static final int GL_OUTPUT_TEXTURE_COORD0_EXT = 0x879d; + public static final int GL_OUTPUT_COLOR1_EXT = 0x879c; + public static final int GL_OUTPUT_COLOR0_EXT = 0x879b; + public static final int GL_OUTPUT_VERTEX_EXT = 0x879a; public static final int GL_OP_MOV_EXT = 0x8799; - public static final int GL_OUTPUT_VERTEX_EXT = 0x879A; - public static final int GL_OUTPUT_COLOR0_EXT = 0x879B; - public static final int GL_OUTPUT_COLOR1_EXT = 0x879C; - public static final int GL_OUTPUT_TEXTURE_COORD0_EXT = 0x879D; - public static final int GL_OUTPUT_TEXTURE_COORD1_EXT = 0x879E; - public static final int GL_OUTPUT_TEXTURE_COORD2_EXT = 0x879F; - public static final int GL_OUTPUT_TEXTURE_COORD3_EXT = 0x87A0; - public static final int GL_OUTPUT_TEXTURE_COORD4_EXT = 0x87A1; - public static final int GL_OUTPUT_TEXTURE_COORD5_EXT = 0x87A2; - public static final int GL_OUTPUT_TEXTURE_COORD6_EXT = 0x87A3; - public static final int GL_OUTPUT_TEXTURE_COORD7_EXT = 0x87A4; - public static final int GL_OUTPUT_TEXTURE_COORD8_EXT = 0x87A5; - public static final int GL_OUTPUT_TEXTURE_COORD9_EXT = 0x87A6; - public static final int GL_OUTPUT_TEXTURE_COORD10_EXT = 0x87A7; - public static final int GL_OUTPUT_TEXTURE_COORD11_EXT = 0x87A8; - public static final int GL_OUTPUT_TEXTURE_COORD12_EXT = 0x87A9; - public static final int GL_OUTPUT_TEXTURE_COORD13_EXT = 0x87AA; - public static final int GL_OUTPUT_TEXTURE_COORD14_EXT = 0x87AB; - public static final int GL_OUTPUT_TEXTURE_COORD15_EXT = 0x87AC; - public static final int GL_OUTPUT_TEXTURE_COORD16_EXT = 0x87AD; - public static final int GL_OUTPUT_TEXTURE_COORD17_EXT = 0x87AE; - public static final int GL_OUTPUT_TEXTURE_COORD18_EXT = 0x87AF; - public static final int GL_OUTPUT_TEXTURE_COORD19_EXT = 0x87B0; - public static final int GL_OUTPUT_TEXTURE_COORD20_EXT = 0x87B1; - public static final int GL_OUTPUT_TEXTURE_COORD21_EXT = 0x87B2; - public static final int GL_OUTPUT_TEXTURE_COORD22_EXT = 0x87B3; - public static final int GL_OUTPUT_TEXTURE_COORD23_EXT = 0x87B4; - public static final int GL_OUTPUT_TEXTURE_COORD24_EXT = 0x87B5; - public static final int GL_OUTPUT_TEXTURE_COORD25_EXT = 0x87B6; - public static final int GL_OUTPUT_TEXTURE_COORD26_EXT = 0x87B7; - public static final int GL_OUTPUT_TEXTURE_COORD27_EXT = 0x87B8; - public static final int GL_OUTPUT_TEXTURE_COORD28_EXT = 0x87B9; - public static final int GL_OUTPUT_TEXTURE_COORD29_EXT = 0x87BA; - public static final int GL_OUTPUT_TEXTURE_COORD30_EXT = 0x87BB; - public static final int GL_OUTPUT_TEXTURE_COORD31_EXT = 0x87BC; - public static final int GL_OUTPUT_FOG_EXT = 0x87BD; - public static final int GL_SCALAR_EXT = 0x87BE; - public static final int GL_VECTOR_EXT = 0x87BF; - public static final int GL_MATRIX_EXT = 0x87C0; - public static final int GL_VARIANT_EXT = 0x87C1; - public static final int GL_INVARIANT_EXT = 0x87C2; - public static final int GL_LOCAL_CONSTANT_EXT = 0x87C3; - public static final int GL_LOCAL_EXT = 0x87C4; - public static final int GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87C5; - public static final int GL_MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87C6; - public static final int GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = 0x87C7; - public static final int GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87C8; - public static final int GL_MAX_VERTEX_SHADER_LOCALS_EXT = 0x87C9; - public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CA; - public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = 0x87CB; - public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = 0x87CC; - public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87CD; - public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = 0x87CE; - public static final int GL_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CF; - public static final int GL_VERTEX_SHADER_VARIANTS_EXT = 0x87D0; - public static final int GL_VERTEX_SHADER_INVARIANTS_EXT = 0x87D1; - public static final int GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87D2; - public static final int GL_VERTEX_SHADER_LOCALS_EXT = 0x87D3; - public static final int GL_VERTEX_SHADER_OPTIMIZED_EXT = 0x87D4; - public static final int GL_X_EXT = 0x87D5; - public static final int GL_Y_EXT = 0x87D6; - public static final int GL_Z_EXT = 0x87D7; - public static final int GL_W_EXT = 0x87D8; - public static final int GL_NEGATIVE_X_EXT = 0x87D9; - public static final int GL_NEGATIVE_Y_EXT = 0x87DA; - public static final int GL_NEGATIVE_Z_EXT = 0x87DB; - public static final int GL_NEGATIVE_W_EXT = 0x87DC; - public static final int GL_ZERO_EXT = 0x87DD; - public static final int GL_ONE_EXT = 0x87DE; - public static final int GL_NEGATIVE_ONE_EXT = 0x87DF; - public static final int GL_NORMALIZED_RANGE_EXT = 0x87E0; - public static final int GL_FULL_RANGE_EXT = 0x87E1; - public static final int GL_CURRENT_VERTEX_EXT = 0x87E2; - public static final int GL_MVP_MATRIX_EXT = 0x87E3; - public static final int GL_VARIANT_VALUE_EXT = 0x87E4; - public static final int GL_VARIANT_DATATYPE_EXT = 0x87E5; - public static final int GL_VARIANT_ARRAY_STRIDE_EXT = 0x87E6; - public static final int GL_VARIANT_ARRAY_TYPE_EXT = 0x87E7; - public static final int GL_VARIANT_ARRAY_EXT = 0x87E8; - public static final int GL_VARIANT_ARRAY_POINTER_EXT = 0x87E9; - public static final int GL_INVARIANT_VALUE_EXT = 0x87EA; - public static final int GL_INVARIANT_DATATYPE_EXT = 0x87EB; - public static final int GL_LOCAL_CONSTANT_VALUE_EXT = 0x87EC; - public static final int GL_LOCAL_CONSTANT_DATATYPE_EXT = 0x87ED; + public static final int GL_OP_MULTIPLY_MATRIX_EXT = 0x8798; + public static final int GL_OP_CROSS_PRODUCT_EXT = 0x8797; + public static final int GL_OP_SUB_EXT = 0x8796; + public static final int GL_OP_RECIP_SQRT_EXT = 0x8795; + public static final int GL_OP_RECIP_EXT = 0x8794; + public static final int GL_OP_POWER_EXT = 0x8793; + public static final int GL_OP_LOG_BASE_2_EXT = 0x8792; + public static final int GL_OP_EXP_BASE_2_EXT = 0x8791; + public static final int GL_OP_ROUND_EXT = 0x8790; + public static final int GL_OP_FLOOR_EXT = 0x878f; + public static final int GL_OP_CLAMP_EXT = 0x878e; + public static final int GL_OP_SET_LT_EXT = 0x878d; + public static final int GL_OP_SET_GE_EXT = 0x878c; + public static final int GL_OP_MIN_EXT = 0x878b; + public static final int GL_OP_MAX_EXT = 0x878a; + public static final int GL_OP_FRAC_EXT = 0x8789; + public static final int GL_OP_MADD_EXT = 0x8788; + public static final int GL_OP_ADD_EXT = 0x8787; + public static final int GL_OP_MUL_EXT = 0x8786; + public static final int GL_OP_DOT4_EXT = 0x8785; + public static final int GL_OP_DOT3_EXT = 0x8784; + public static final int GL_OP_NEGATE_EXT = 0x8783; + public static final int GL_OP_INDEX_EXT = 0x8782; + public static final int GL_VERTEX_SHADER_BINDING_EXT = 0x8781; + public static final int GL_VERTEX_SHADER_EXT = 0x8780; private EXTVertexShader() { } static native void initNativeStubs() throws LWJGLException; - public static native void glBeginVertexShaderEXT(); - - public static native void glEndVertexShaderEXT(); - - public static native void glBindVertexShaderEXT(int id); - - public static native int glGenVertexShadersEXT(int range); - - public static native void glDeleteVertexShaderEXT(int id); - - public static native void glShaderOp1EXT(int op, int res, int arg1); - - public static native void glShaderOp2EXT(int op, int res, int arg1, int arg2); - - public static native void glShaderOp3EXT(int op, int res, int arg1, int arg2, int arg3); - - public static native void glSwizzleEXT(int res, int in, int outX, int outY, int outZ, int outW); - - public static native void glWriteMaskEXT(int res, int in, int outX, int outY, int outZ, int outW); - - public static native void glInsertComponentEXT(int res, int src, int num); - - public static native void glExtractComponentEXT(int res, int src, int num); - - public static native int glGenSymbolsEXT(int dataType, int storageType, int range, int components); - - public static void glSetInvariantEXT(int id, boolean unsigned, ByteBuffer pAddr) { - BufferChecks.checkBuffer(pAddr); - nglSetInvariantEXT(id, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, pAddr, pAddr.position()); + public static void glGetLocalConstantFloatEXT(int id, int value, FloatBuffer pbData) { + BufferChecks.checkBuffer(pbData, 4); + nglGetLocalConstantFloatvEXT(id, value, pbData, pbData.position()); } + private static native void nglGetLocalConstantFloatvEXT(int id, int value, FloatBuffer pbData, int pbData_position); - public static void glSetInvariantEXT(int id, boolean unsigned, ShortBuffer pAddr) { - BufferChecks.checkBuffer(pAddr); - nglSetInvariantEXT(id, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, pAddr, pAddr.position() << 1); + public static void glGetLocalConstantIntegerEXT(int id, int value, IntBuffer pbData) { + BufferChecks.checkBuffer(pbData, 4); + nglGetLocalConstantIntegervEXT(id, value, pbData, pbData.position()); } + private static native void nglGetLocalConstantIntegervEXT(int id, int value, IntBuffer pbData, int pbData_position); - public static void glSetInvariantEXT(int id, FloatBuffer pAddr) { - BufferChecks.checkBuffer(pAddr); - nglSetInvariantEXT(id, GL11.GL_FLOAT, pAddr, pAddr.position() << 2); + public static void glGetLocalConstantBooleanEXT(int id, int value, ByteBuffer pbData) { + BufferChecks.checkBuffer(pbData, 4); + nglGetLocalConstantBooleanvEXT(id, value, pbData, pbData.position()); } + private static native void nglGetLocalConstantBooleanvEXT(int id, int value, ByteBuffer pbData, int pbData_position); - public static void glSetInvariantEXT(int id, boolean unsigned, IntBuffer pAddr) { - BufferChecks.checkBuffer(pAddr); - nglSetInvariantEXT(id, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, pAddr, pAddr.position() << 2); + public static void glGetInvariantFloatEXT(int id, int value, FloatBuffer pbData) { + BufferChecks.checkBuffer(pbData, 4); + nglGetInvariantFloatvEXT(id, value, pbData, pbData.position()); } + private static native void nglGetInvariantFloatvEXT(int id, int value, FloatBuffer pbData, int pbData_position); - private static native void nglSetInvariantEXT(int id, int type, Buffer pAddr, int pAddr_offset); - - public static void glSetLocalConstantEXT(int id, boolean unsigned, ByteBuffer pAddr) { - BufferChecks.checkBuffer(pAddr); - nglSetLocalConstantEXT(id, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, pAddr, pAddr.position()); + public static void glGetInvariantIntegerEXT(int id, int value, IntBuffer pbData) { + BufferChecks.checkBuffer(pbData, 4); + nglGetInvariantIntegervEXT(id, value, pbData, pbData.position()); } + private static native void nglGetInvariantIntegervEXT(int id, int value, IntBuffer pbData, int pbData_position); - public static void glSetLocalConstantEXT(int id, boolean unsigned, ShortBuffer pAddr) { - BufferChecks.checkBuffer(pAddr); - nglSetLocalConstantEXT(id, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, pAddr, pAddr.position() << 1); + public static void glGetInvariantBooleanEXT(int id, int value, ByteBuffer pbData) { + BufferChecks.checkBuffer(pbData, 4); + nglGetInvariantBooleanvEXT(id, value, pbData, pbData.position()); } + private static native void nglGetInvariantBooleanvEXT(int id, int value, ByteBuffer pbData, int pbData_position); - public static void glSetLocalConstantEXT(int id, FloatBuffer pAddr) { - BufferChecks.checkBuffer(pAddr); - nglSetLocalConstantEXT(id, GL11.GL_FLOAT, pAddr, pAddr.position() << 2); + public static java.nio.ByteBuffer glGetVariantPointerEXT(int id, int value, int result_size) { + java.nio.ByteBuffer __result = nglGetVariantPointervEXT(id, value, result_size); + return __result; } + private static native java.nio.ByteBuffer nglGetVariantPointervEXT(int id, int value, int result_size); - public static void glSetLocalConstantEXT(int id, boolean unsigned, IntBuffer pAddr) { - BufferChecks.checkBuffer(pAddr); - nglSetLocalConstantEXT(id, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, pAddr, pAddr.position() << 2); + public static void glGetVariantFloatEXT(int id, int value, FloatBuffer pbData) { + BufferChecks.checkBuffer(pbData, 4); + nglGetVariantFloatvEXT(id, value, pbData, pbData.position()); } + private static native void nglGetVariantFloatvEXT(int id, int value, FloatBuffer pbData, int pbData_position); - private static native void nglSetLocalConstantEXT(int id, int type, Buffer pAddr, int pAddr_offset); - - public static void glVariantEXT(int id, ByteBuffer pAddr) { - BufferChecks.checkBuffer(pAddr); - nglVariantbvEXT(id, pAddr, pAddr.position()); + public static void glGetVariantIntegerEXT(int id, int value, IntBuffer pbData) { + BufferChecks.checkBuffer(pbData, 4); + nglGetVariantIntegervEXT(id, value, pbData, pbData.position()); } + private static native void nglGetVariantIntegervEXT(int id, int value, IntBuffer pbData, int pbData_position); - private static native void nglVariantbvEXT(int id, ByteBuffer pAddr, int pAddr_offset); - - public static void glVariantEXT(int id, ShortBuffer psAddr) { - BufferChecks.checkBuffer(psAddr); - nglVariantsvEXT(id, psAddr, psAddr.position()); + public static void glGetVariantBooleanEXT(int id, int value, ByteBuffer pbData) { + BufferChecks.checkBuffer(pbData, 4); + nglGetVariantBooleanvEXT(id, value, pbData, pbData.position()); } - - private static native void nglVariantsvEXT(int id, ShortBuffer psAddr, int psAddr_offset); - - public static void glVariantEXT(int id, FloatBuffer pfAddr) { - BufferChecks.checkBuffer(pfAddr); - nglVariantfvEXT(id, pfAddr, pfAddr.position()); - } - - private static native void nglVariantfvEXT(int id, FloatBuffer pfAddr, int pfAddr_offset); - - public static void glVariantEXT(int id, IntBuffer piAddr) { - BufferChecks.checkBuffer(piAddr); - nglVariantivEXT(id, piAddr, piAddr.position()); - } - - private static native void nglVariantivEXT(int id, IntBuffer piAddr, int piAddr_offset); - - public static void glVariantuEXT(int id, ByteBuffer pAddr) { - BufferChecks.checkBuffer(pAddr); - nglVariantubvEXT(id, pAddr, pAddr.position()); - } - - private static native void nglVariantubvEXT(int id, ByteBuffer pAddr, int pAddr_offset); - - public static void glVariantuEXT(int id, ShortBuffer psAddr) { - BufferChecks.checkBuffer(psAddr); - nglVariantusvEXT(id, psAddr, psAddr.position()); - } - - private static native void nglVariantusvEXT(int id, ShortBuffer psAddr, int psAddr_offset); - - public static void glVariantuEXT(int id, IntBuffer piAddr) { - BufferChecks.checkBuffer(piAddr); - nglVariantuivEXT(id, piAddr, piAddr.position()); - } - - private static native void nglVariantuivEXT(int id, IntBuffer piAddr, int piAddr_offset); - - public static void glVariantPointerEXT(int id, boolean unsigned, int stride, ByteBuffer pAddr) { - BufferChecks.checkDirect(pAddr); - GLBufferChecks.ensureArrayVBOdisabled(); - nglVariantPointerEXT(id, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, pAddr, pAddr.position()); - } - - public static void glVariantPointerEXT(int id, boolean unsigned, int stride, ShortBuffer pAddr) { - BufferChecks.checkDirect(pAddr); - GLBufferChecks.ensureArrayVBOdisabled(); - nglVariantPointerEXT(id, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, stride, pAddr, pAddr.position() << 1); - } - - public static void glVariantPointerEXT(int id, int stride, FloatBuffer pAddr) { - BufferChecks.checkDirect(pAddr); - GLBufferChecks.ensureArrayVBOdisabled(); - nglVariantPointerEXT(id, GL11.GL_FLOAT, stride, pAddr, pAddr.position() << 2); - } - - public static void glVariantPointerEXT(int id, boolean unsigned, int stride, IntBuffer pAddr) { - BufferChecks.checkDirect(pAddr); - GLBufferChecks.ensureArrayVBOdisabled(); - nglVariantPointerEXT(id, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, stride, pAddr, pAddr.position() << 2); - } - - private static native void nglVariantPointerEXT(int id, int type, int stride, Buffer pAddr, int pAddr_offset); - - public static void glVariantPointerEXT(int id, int type, int stride, int buffer_offset) { - GLBufferChecks.ensureArrayVBOenabled(); - nglVariantPointerEXTVBO(id, type, stride, buffer_offset); - } - - private static native void nglVariantPointerEXTVBO(int id, int type, int stride, int buffer_offset); - - public static native void glEnableVariantClientStateEXT(int id); - - public static native void glDisableVariantClientStateEXT(int id); - - public static native int glBindLightParameterEXT(int light, int value); - - public static native int glBindMaterialParameterEXT(int face, int value); - - public static native int glBindTexGenParameterEXT(int unit, int coord, int value); - - public static native int glBindTextureUnitParameterEXT(int unit, int value); - - public static native int glBindParameterEXT(int value); + private static native void nglGetVariantBooleanvEXT(int id, int value, ByteBuffer pbData, int pbData_position); public static native boolean glIsVariantEnabledEXT(int id, int cap); - public static void glGetVariantBooleanEXT(int id, int value, ByteBuffer pbData) { - BufferChecks.checkDirect(pbData); - nglGetVariantBooleanvEXT(id, value, pbData, pbData.position()); + public static native int glBindParameterEXT(int value); + + public static native int glBindTextureUnitParameterEXT(int unit, int value); + + public static native int glBindTexGenParameterEXT(int unit, int coord, int value); + + public static native int glBindMaterialParameterEXT(int face, int value); + + public static native int glBindLightParameterEXT(int light, int value); + + public static native void glDisableVariantClientStateEXT(int id); + + public static native void glEnableVariantClientStateEXT(int id); + + public static void glVariantPointerEXT(int id, int stride, FloatBuffer pAddr) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pAddr); + nglVariantPointerEXT(id, GL11.GL_FLOAT, stride, pAddr, pAddr.position() << 2); } - - private static native void nglGetVariantBooleanvEXT(int id, int value, ByteBuffer pbData, int pbData_offset); - - public static void glGetVariantIntegerEXT(int id, int value, IntBuffer piData) { - BufferChecks.checkDirect(piData); - nglGetVariantIntegervEXT(id, value, piData, piData.position()); + public static void glVariantPointerEXT(int id, boolean unsigned, int stride, IntBuffer pAddr) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pAddr); + nglVariantPointerEXT(id, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, stride, pAddr, pAddr.position() << 2); } - - private static native void nglGetVariantIntegervEXT(int id, int value, IntBuffer piData, int piData_offset); - - public static void glGetVariantFloatEXT(int id, int value, FloatBuffer pfData) { - BufferChecks.checkDirect(pfData); - nglGetVariantFloatvEXT(id, value, pfData, pfData.position()); + public static void glVariantPointerEXT(int id, boolean unsigned, int stride, ShortBuffer pAddr) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pAddr); + nglVariantPointerEXT(id, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, stride, pAddr, pAddr.position() << 1); } - - private static native void nglGetVariantFloatvEXT(int id, int value, FloatBuffer pfData, int pfData_offset); - - public static native ByteBuffer glGetVariantPointerEXT(int id, int value, int size); - - public static void glGetInvariantBooleanEXT(int id, int value, ByteBuffer pbData) { - BufferChecks.checkDirect(pbData); - nglGetInvariantBooleanvEXT(id, value, pbData, pbData.position()); + public static void glVariantPointerEXT(int id, boolean unsigned, int stride, ByteBuffer pAddr) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pAddr); + nglVariantPointerEXT(id, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, pAddr, pAddr.position()); } - - private static native void nglGetInvariantBooleanvEXT(int id, int value, ByteBuffer pbData, int pbData_offset); - - public static void glGetInvariantIntegerEXT(int id, int value, IntBuffer piData) { - BufferChecks.checkDirect(piData); - nglGetInvariantIntegervEXT(id, value, piData, piData.position()); + private static native void nglVariantPointerEXT(int id, int type, int stride, Buffer pAddr, int pAddr_position); + public static void glVariantPointerEXT(int id, int type, int stride, int pAddr_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglVariantPointerEXTBO(id, type, stride, pAddr_buffer_offset); } + private static native void nglVariantPointerEXTBO(int id, int type, int stride, int pAddr_buffer_offset); - private static native void nglGetInvariantIntegervEXT(int id, int value, IntBuffer piData, int piData_offset); - - public static void glGetInvariantFloatEXT(int id, int value, FloatBuffer pfData) { - BufferChecks.checkDirect(pfData); - nglGetInvariantFloatvEXT(id, value, pfData, pfData.position()); + public static void glVariantuEXT(int id, IntBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglVariantuivEXT(id, pAddr, pAddr.position()); } + private static native void nglVariantuivEXT(int id, IntBuffer pAddr, int pAddr_position); - private static native void nglGetInvariantFloatvEXT(int id, int value, FloatBuffer pfData, int pfData_offset); - - public static void glGetLocalConstantBooleanEXT(int id, int value, ByteBuffer pbData) { - BufferChecks.checkDirect(pbData); - nglGetLocalConstantBooleanvEXT(id, value, pbData, pbData.position()); + public static void glVariantuEXT(int id, ShortBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglVariantusvEXT(id, pAddr, pAddr.position()); } + private static native void nglVariantusvEXT(int id, ShortBuffer pAddr, int pAddr_position); - private static native void nglGetLocalConstantBooleanvEXT(int id, int value, ByteBuffer pbData, int pbData_offset); - - public static void glGetLocalConstantIntegerEXT(int id, int value, IntBuffer piData) { - BufferChecks.checkDirect(piData); - nglGetLocalConstantIntegervEXT(id, value, piData, piData.position()); + public static void glVariantuEXT(int id, ByteBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglVariantubvEXT(id, pAddr, pAddr.position()); } + private static native void nglVariantubvEXT(int id, ByteBuffer pAddr, int pAddr_position); - private static native void nglGetLocalConstantIntegervEXT(int id, int value, IntBuffer piData, int piData_offset); - - public static void glGetLocalConstantFloatEXT(int id, int value, FloatBuffer pfData) { - BufferChecks.checkDirect(pfData); - nglGetLocalConstantFloatvEXT(id, value, pfData, pfData.position()); + public static void glVariantEXT(int id, FloatBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglVariantfvEXT(id, pAddr, pAddr.position()); } + private static native void nglVariantfvEXT(int id, FloatBuffer pAddr, int pAddr_position); - private static native void nglGetLocalConstantFloatvEXT(int id, int value, FloatBuffer pfData, int pfData_offset); + public static void glVariantEXT(int id, IntBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglVariantivEXT(id, pAddr, pAddr.position()); + } + private static native void nglVariantivEXT(int id, IntBuffer pAddr, int pAddr_position); + + public static void glVariantEXT(int id, ShortBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglVariantsvEXT(id, pAddr, pAddr.position()); + } + private static native void nglVariantsvEXT(int id, ShortBuffer pAddr, int pAddr_position); + + public static void glVariantEXT(int id, ByteBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglVariantbvEXT(id, pAddr, pAddr.position()); + } + private static native void nglVariantbvEXT(int id, ByteBuffer pAddr, int pAddr_position); + + public static void glSetLocalConstantEXT(int id, FloatBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglSetLocalConstantEXT(id, GL11.GL_FLOAT, pAddr, pAddr.position() << 2); + } + public static void glSetLocalConstantEXT(int id, boolean unsigned, IntBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglSetLocalConstantEXT(id, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, pAddr, pAddr.position() << 2); + } + public static void glSetLocalConstantEXT(int id, boolean unsigned, ShortBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglSetLocalConstantEXT(id, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, pAddr, pAddr.position() << 1); + } + public static void glSetLocalConstantEXT(int id, boolean unsigned, ByteBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglSetLocalConstantEXT(id, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, pAddr, pAddr.position()); + } + private static native void nglSetLocalConstantEXT(int id, int type, Buffer pAddr, int pAddr_position); + + public static void glSetInvariantEXT(int id, FloatBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglSetInvariantEXT(id, GL11.GL_FLOAT, pAddr, pAddr.position() << 2); + } + public static void glSetInvariantEXT(int id, boolean unsigned, IntBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglSetInvariantEXT(id, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, pAddr, pAddr.position() << 2); + } + public static void glSetInvariantEXT(int id, boolean unsigned, ShortBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglSetInvariantEXT(id, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, pAddr, pAddr.position() << 1); + } + public static void glSetInvariantEXT(int id, boolean unsigned, ByteBuffer pAddr) { + BufferChecks.checkBuffer(pAddr, 4); + nglSetInvariantEXT(id, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, pAddr, pAddr.position()); + } + private static native void nglSetInvariantEXT(int id, int type, Buffer pAddr, int pAddr_position); + + public static native int glGenSymbolsEXT(int dataType, int storageType, int range, int components); + + public static native void glExtractComponentEXT(int res, int src, int num); + + public static native void glInsertComponentEXT(int res, int src, int num); + + public static native void glWriteMaskEXT(int res, int in, int outX, int outY, int outZ, int outW); + + public static native void glSwizzleEXT(int res, int in, int outX, int outY, int outZ, int outW); + + public static native void glShaderOp3EXT(int op, int res, int arg1, int arg2, int arg3); + + public static native void glShaderOp2EXT(int op, int res, int arg1, int arg2); + + public static native void glShaderOp1EXT(int op, int res, int arg1); + + public static native void glDeleteVertexShaderEXT(int id); + + public static native int glGenVertexShadersEXT(int range); + + public static native void glBindVertexShaderEXT(int id); + + public static native void glEndVertexShaderEXT(); + + public static native void glBeginVertexShaderEXT(); } diff --git a/src/java/org/lwjgl/opengl/EXTVertexWeighting.java b/src/java/org/lwjgl/opengl/EXTVertexWeighting.java index af2c12a8..a48ae847 100644 --- a/src/java/org/lwjgl/opengl/EXTVertexWeighting.java +++ b/src/java/org/lwjgl/opengl/EXTVertexWeighting.java @@ -1,77 +1,42 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.FloatBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class EXTVertexWeighting { - - public static final int GL_MODELVIEW0_STACK_DEPTH_EXT = 0x0BA3; - public static final int GL_MODELVIEW1_STACK_DEPTH_EXT = 0x8502; - public static final int GL_MODELVIEW0_MATRIX_EXT = 0x0BA6; - public static final int GL_MODELVIEW1_MATRIX_EXT = 0x8506; - public static final int GL_VERTEX_WEIGHTING_EXT = 0x8509; - public static final int GL_MODELVIEW0_EXT = 0x1700; - public static final int GL_MODELVIEW1_EXT = 0x850A; - public static final int GL_CURRENT_VERTEX_WEIGHT_EXT = 0x850B; - public static final int GL_VERTEX_WEIGHT_ARRAY_EXT = 0x850C; - public static final int GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT = 0x850D; - public static final int GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT = 0x850E; - public static final int GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT = 0x850F; public static final int GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT = 0x8510; + public static final int GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT = 0x850f; + public static final int GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT = 0x850e; + public static final int GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT = 0x850d; + public static final int GL_VERTEX_WEIGHT_ARRAY_EXT = 0x850c; + public static final int GL_CURRENT_VERTEX_WEIGHT_EXT = 0x850b; + public static final int GL_MODELVIEW1_EXT = 0x850a; + public static final int GL_MODELVIEW0_EXT = 0x1700; + public static final int GL_VERTEX_WEIGHTING_EXT = 0x8509; + public static final int GL_MODELVIEW1_MATRIX_EXT = 0x8506; + public static final int GL_MODELVIEW0_MATRIX_EXT = 0xba6; + public static final int GL_MODELVIEW1_STACK_DEPTH_EXT = 0x8502; + public static final int GL_MODELVIEW0_STACK_DEPTH_EXT = 0xba3; private EXTVertexWeighting() { } static native void initNativeStubs() throws LWJGLException; - public static native void glVertexWeightfEXT(float weight); - public static void glVertexWeightPointerEXT(int size, int stride, FloatBuffer pPointer) { - BufferChecks.checkDirect(pPointer); GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pPointer); nglVertexWeightPointerEXT(size, GL11.GL_FLOAT, stride, pPointer, pPointer.position() << 2); } - - private static native void nglVertexWeightPointerEXT(int size, int type, int stride, Buffer pPointer, int pPointer_offset); - - public static void glVertexWeightPointerEXT(int size, int type, int stride, int buffer_offset) { + private static native void nglVertexWeightPointerEXT(int size, int type, int stride, Buffer pPointer, int pPointer_position); + public static void glVertexWeightPointerEXT(int size, int type, int stride, int pPointer_buffer_offset) { GLBufferChecks.ensureArrayVBOenabled(); - nglVertexWeightPointerEXTVBO(size, type, stride, buffer_offset); + nglVertexWeightPointerEXTBO(size, type, stride, pPointer_buffer_offset); } + private static native void nglVertexWeightPointerEXTBO(int size, int type, int stride, int pPointer_buffer_offset); - private static native void nglVertexWeightPointerEXTVBO(int size, int type, int stride, int buffer_offset); + public static native void glVertexWeightfEXT(float weight); } diff --git a/src/java/org/lwjgl/opengl/GL11.java b/src/java/org/lwjgl/opengl/GL11.java index 80265459..5930daeb 100644 --- a/src/java/org/lwjgl/opengl/GL11.java +++ b/src/java/org/lwjgl/opengl/GL11.java @@ -1,1435 +1,776 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.DoubleBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; - -import org.lwjgl.BufferChecks; import org.lwjgl.LWJGLException; - -/** - * $Id$ - * - * The core OpenGL1.1 API. - * - * @author cix_foo - * @version $Revision$ - */ +import org.lwjgl.BufferChecks; +import java.nio.*; public final class GL11 { - - /* AccumOp */ - public static final int GL_ACCUM = 0x0100; - public static final int GL_LOAD = 0x0101; - public static final int GL_RETURN = 0x0102; - public static final int GL_MULT = 0x0103; - public static final int GL_ADD = 0x0104; - - /* AlphaFunction */ - public static final int GL_NEVER = 0x0200; - public static final int GL_LESS = 0x0201; - public static final int GL_EQUAL = 0x0202; - public static final int GL_LEQUAL = 0x0203; - public static final int GL_GREATER = 0x0204; - public static final int GL_NOTEQUAL = 0x0205; - public static final int GL_GEQUAL = 0x0206; - public static final int GL_ALWAYS = 0x0207; - - /* AttribMask */ - public static final int GL_CURRENT_BIT = 0x00000001; - public static final int GL_POINT_BIT = 0x00000002; - public static final int GL_LINE_BIT = 0x00000004; - public static final int GL_POLYGON_BIT = 0x00000008; - public static final int GL_POLYGON_STIPPLE_BIT = 0x00000010; - public static final int GL_PIXEL_MODE_BIT = 0x00000020; - public static final int GL_LIGHTING_BIT = 0x00000040; - public static final int GL_FOG_BIT = 0x00000080; - public static final int GL_DEPTH_BUFFER_BIT = 0x00000100; - public static final int GL_ACCUM_BUFFER_BIT = 0x00000200; - public static final int GL_STENCIL_BUFFER_BIT = 0x00000400; - public static final int GL_VIEWPORT_BIT = 0x00000800; - public static final int GL_TRANSFORM_BIT = 0x00001000; - public static final int GL_ENABLE_BIT = 0x00002000; - public static final int GL_COLOR_BUFFER_BIT = 0x00004000; - public static final int GL_HINT_BIT = 0x00008000; - public static final int GL_EVAL_BIT = 0x00010000; - public static final int GL_LIST_BIT = 0x00020000; - public static final int GL_TEXTURE_BIT = 0x00040000; - public static final int GL_SCISSOR_BIT = 0x00080000; - public static final int GL_ALL_ATTRIB_BITS = 0x000fffff; - - /* BeginMode */ - public static final int GL_POINTS = 0x0000; - public static final int GL_LINES = 0x0001; - public static final int GL_LINE_LOOP = 0x0002; - public static final int GL_LINE_STRIP = 0x0003; - public static final int GL_TRIANGLES = 0x0004; - public static final int GL_TRIANGLE_STRIP = 0x0005; - public static final int GL_TRIANGLE_FAN = 0x0006; - public static final int GL_QUADS = 0x0007; - public static final int GL_QUAD_STRIP = 0x0008; - public static final int GL_POLYGON = 0x0009; - - /* BlendingFactorDest */ - public static final int GL_ZERO = 0; - public static final int GL_ONE = 1; - public static final int GL_SRC_COLOR = 0x0300; - public static final int GL_ONE_MINUS_SRC_COLOR = 0x0301; - public static final int GL_SRC_ALPHA = 0x0302; - public static final int GL_ONE_MINUS_SRC_ALPHA = 0x0303; - public static final int GL_DST_ALPHA = 0x0304; - public static final int GL_ONE_MINUS_DST_ALPHA = 0x0305; - - /* BlendingFactorSrc */ - /* GL_ZERO */ - /* GL_ONE */ - public static final int GL_DST_COLOR = 0x0306; - public static final int GL_ONE_MINUS_DST_COLOR = 0x0307; - public static final int GL_SRC_ALPHA_SATURATE = 0x0308; - public static final int GL_CONSTANT_COLOR = 0x8001; - public static final int GL_ONE_MINUS_CONSTANT_COLOR = 0x8002; - public static final int GL_CONSTANT_ALPHA = 0x8003; - public static final int GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004; - - /* Boolean */ - public static final int GL_TRUE = 1; - public static final int GL_FALSE = 0; - - /* ClipPlaneName */ - public static final int GL_CLIP_PLANE0 = 0x3000; - public static final int GL_CLIP_PLANE1 = 0x3001; - public static final int GL_CLIP_PLANE2 = 0x3002; - public static final int GL_CLIP_PLANE3 = 0x3003; - public static final int GL_CLIP_PLANE4 = 0x3004; - public static final int GL_CLIP_PLANE5 = 0x3005; - - /* DataType */ - public static final int GL_BYTE = 0x1400; - public static final int GL_UNSIGNED_BYTE = 0x1401; - public static final int GL_SHORT = 0x1402; - public static final int GL_UNSIGNED_SHORT = 0x1403; - public static final int GL_INT = 0x1404; - public static final int GL_UNSIGNED_INT = 0x1405; - public static final int GL_FLOAT = 0x1406; - public static final int GL_2_BYTES = 0x1407; - public static final int GL_3_BYTES = 0x1408; - public static final int GL_4_BYTES = 0x1409; - public static final int GL_DOUBLE = 0x140A; - - /* DrawBufferMode */ - public static final int GL_NONE = 0; - public static final int GL_FRONT_LEFT = 0x0400; - public static final int GL_FRONT_RIGHT = 0x0401; - public static final int GL_BACK_LEFT = 0x0402; - public static final int GL_BACK_RIGHT = 0x0403; - public static final int GL_FRONT = 0x0404; - public static final int GL_BACK = 0x0405; - public static final int GL_LEFT = 0x0406; - public static final int GL_RIGHT = 0x0407; - public static final int GL_FRONT_AND_BACK = 0x0408; - public static final int GL_AUX0 = 0x0409; - public static final int GL_AUX1 = 0x040A; - public static final int GL_AUX2 = 0x040B; - public static final int GL_AUX3 = 0x040C; - - /* ErrorCode */ - public static final int GL_NO_ERROR = 0; - public static final int GL_INVALID_ENUM = 0x0500; - public static final int GL_INVALID_VALUE = 0x0501; - public static final int GL_INVALID_OPERATION = 0x0502; - public static final int GL_STACK_OVERFLOW = 0x0503; - public static final int GL_STACK_UNDERFLOW = 0x0504; - public static final int GL_OUT_OF_MEMORY = 0x0505; - - /* FeedBackMode */ - public static final int GL_2D = 0x0600; - public static final int GL_3D = 0x0601; - public static final int GL_3D_COLOR = 0x0602; - public static final int GL_3D_COLOR_TEXTURE = 0x0603; - public static final int GL_4D_COLOR_TEXTURE = 0x0604; - - /* FeedBackToken */ - public static final int GL_PASS_THROUGH_TOKEN = 0x0700; - public static final int GL_POINT_TOKEN = 0x0701; - public static final int GL_LINE_TOKEN = 0x0702; - public static final int GL_POLYGON_TOKEN = 0x0703; - public static final int GL_BITMAP_TOKEN = 0x0704; - public static final int GL_DRAW_PIXEL_TOKEN = 0x0705; - public static final int GL_COPY_PIXEL_TOKEN = 0x0706; - public static final int GL_LINE_RESET_TOKEN = 0x0707; - - /* FogMode */ - /* GL_LINEAR */ - public static final int GL_EXP = 0x0800; - public static final int GL_EXP2 = 0x0801; - - /* FrontFaceDirection */ - public static final int GL_CW = 0x0900; - public static final int GL_CCW = 0x0901; - - /* GetMapTarget */ - public static final int GL_COEFF = 0x0A00; - public static final int GL_ORDER = 0x0A01; - public static final int GL_DOMAIN = 0x0A02; - - /* GetTarget */ - public static final int GL_CURRENT_COLOR = 0x0B00; - public static final int GL_CURRENT_INDEX = 0x0B01; - public static final int GL_CURRENT_NORMAL = 0x0B02; - public static final int GL_CURRENT_TEXTURE_COORDS = 0x0B03; - public static final int GL_CURRENT_RASTER_COLOR = 0x0B04; - public static final int GL_CURRENT_RASTER_INDEX = 0x0B05; - public static final int GL_CURRENT_RASTER_TEXTURE_COORDS = 0x0B06; - public static final int GL_CURRENT_RASTER_POSITION = 0x0B07; - public static final int GL_CURRENT_RASTER_POSITION_VALID = 0x0B08; - public static final int GL_CURRENT_RASTER_DISTANCE = 0x0B09; - public static final int GL_POINT_SMOOTH = 0x0B10; - public static final int GL_POINT_SIZE = 0x0B11; - public static final int GL_POINT_SIZE_RANGE = 0x0B12; - public static final int GL_POINT_SIZE_GRANULARITY = 0x0B13; - public static final int GL_LINE_SMOOTH = 0x0B20; - public static final int GL_LINE_WIDTH = 0x0B21; - public static final int GL_LINE_WIDTH_RANGE = 0x0B22; - public static final int GL_LINE_WIDTH_GRANULARITY = 0x0B23; - public static final int GL_LINE_STIPPLE = 0x0B24; - public static final int GL_LINE_STIPPLE_PATTERN = 0x0B25; - public static final int GL_LINE_STIPPLE_REPEAT = 0x0B26; - public static final int GL_LIST_MODE = 0x0B30; - public static final int GL_MAX_LIST_NESTING = 0x0B31; - public static final int GL_LIST_BASE = 0x0B32; - public static final int GL_LIST_INDEX = 0x0B33; - public static final int GL_POLYGON_MODE = 0x0B40; - public static final int GL_POLYGON_SMOOTH = 0x0B41; - public static final int GL_POLYGON_STIPPLE = 0x0B42; - public static final int GL_EDGE_FLAG = 0x0B43; - public static final int GL_CULL_FACE = 0x0B44; - public static final int GL_CULL_FACE_MODE = 0x0B45; - public static final int GL_FRONT_FACE = 0x0B46; - public static final int GL_LIGHTING = 0x0B50; - public static final int GL_LIGHT_MODEL_LOCAL_VIEWER = 0x0B51; - public static final int GL_LIGHT_MODEL_TWO_SIDE = 0x0B52; - public static final int GL_LIGHT_MODEL_AMBIENT = 0x0B53; - public static final int GL_SHADE_MODEL = 0x0B54; - public static final int GL_COLOR_MATERIAL_FACE = 0x0B55; - public static final int GL_COLOR_MATERIAL_PARAMETER = 0x0B56; - public static final int GL_COLOR_MATERIAL = 0x0B57; - public static final int GL_FOG = 0x0B60; - public static final int GL_FOG_INDEX = 0x0B61; - public static final int GL_FOG_DENSITY = 0x0B62; - public static final int GL_FOG_START = 0x0B63; - public static final int GL_FOG_END = 0x0B64; - public static final int GL_FOG_MODE = 0x0B65; - public static final int GL_FOG_COLOR = 0x0B66; - public static final int GL_DEPTH_RANGE = 0x0B70; - public static final int GL_DEPTH_TEST = 0x0B71; - public static final int GL_DEPTH_WRITEMASK = 0x0B72; - public static final int GL_DEPTH_CLEAR_VALUE = 0x0B73; - public static final int GL_DEPTH_FUNC = 0x0B74; - public static final int GL_ACCUM_CLEAR_VALUE = 0x0B80; - public static final int GL_STENCIL_TEST = 0x0B90; - public static final int GL_STENCIL_CLEAR_VALUE = 0x0B91; - public static final int GL_STENCIL_FUNC = 0x0B92; - public static final int GL_STENCIL_VALUE_MASK = 0x0B93; - public static final int GL_STENCIL_FAIL = 0x0B94; - public static final int GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95; - public static final int GL_STENCIL_PASS_DEPTH_PASS = 0x0B96; - public static final int GL_STENCIL_REF = 0x0B97; - public static final int GL_STENCIL_WRITEMASK = 0x0B98; - public static final int GL_MATRIX_MODE = 0x0BA0; - public static final int GL_NORMALIZE = 0x0BA1; - public static final int GL_VIEWPORT = 0x0BA2; - public static final int GL_MODELVIEW_STACK_DEPTH = 0x0BA3; - public static final int GL_PROJECTION_STACK_DEPTH = 0x0BA4; - public static final int GL_TEXTURE_STACK_DEPTH = 0x0BA5; - public static final int GL_MODELVIEW_MATRIX = 0x0BA6; - public static final int GL_PROJECTION_MATRIX = 0x0BA7; - public static final int GL_TEXTURE_MATRIX = 0x0BA8; - public static final int GL_ATTRIB_STACK_DEPTH = 0x0BB0; - public static final int GL_CLIENT_ATTRIB_STACK_DEPTH = 0x0BB1; - public static final int GL_ALPHA_TEST = 0x0BC0; - public static final int GL_ALPHA_TEST_FUNC = 0x0BC1; - public static final int GL_ALPHA_TEST_REF = 0x0BC2; - public static final int GL_DITHER = 0x0BD0; - public static final int GL_BLEND_DST = 0x0BE0; - public static final int GL_BLEND_SRC = 0x0BE1; - public static final int GL_BLEND = 0x0BE2; - public static final int GL_LOGIC_OP_MODE = 0x0BF0; - public static final int GL_INDEX_LOGIC_OP = 0x0BF1; - public static final int GL_COLOR_LOGIC_OP = 0x0BF2; - public static final int GL_AUX_BUFFERS = 0x0C00; - public static final int GL_DRAW_BUFFER = 0x0C01; - public static final int GL_READ_BUFFER = 0x0C02; - public static final int GL_SCISSOR_BOX = 0x0C10; - public static final int GL_SCISSOR_TEST = 0x0C11; - public static final int GL_INDEX_CLEAR_VALUE = 0x0C20; - public static final int GL_INDEX_WRITEMASK = 0x0C21; - public static final int GL_COLOR_CLEAR_VALUE = 0x0C22; - public static final int GL_COLOR_WRITEMASK = 0x0C23; - public static final int GL_INDEX_MODE = 0x0C30; - public static final int GL_RGBA_MODE = 0x0C31; - public static final int GL_DOUBLEBUFFER = 0x0C32; - public static final int GL_STEREO = 0x0C33; - public static final int GL_RENDER_MODE = 0x0C40; - public static final int GL_PERSPECTIVE_CORRECTION_HINT = 0x0C50; - public static final int GL_POINT_SMOOTH_HINT = 0x0C51; - public static final int GL_LINE_SMOOTH_HINT = 0x0C52; - public static final int GL_POLYGON_SMOOTH_HINT = 0x0C53; - public static final int GL_FOG_HINT = 0x0C54; - public static final int GL_TEXTURE_GEN_S = 0x0C60; - public static final int GL_TEXTURE_GEN_T = 0x0C61; - public static final int GL_TEXTURE_GEN_R = 0x0C62; - public static final int GL_TEXTURE_GEN_Q = 0x0C63; - public static final int GL_PIXEL_MAP_I_TO_I = 0x0C70; - public static final int GL_PIXEL_MAP_S_TO_S = 0x0C71; - public static final int GL_PIXEL_MAP_I_TO_R = 0x0C72; - public static final int GL_PIXEL_MAP_I_TO_G = 0x0C73; - public static final int GL_PIXEL_MAP_I_TO_B = 0x0C74; - public static final int GL_PIXEL_MAP_I_TO_A = 0x0C75; - public static final int GL_PIXEL_MAP_R_TO_R = 0x0C76; - public static final int GL_PIXEL_MAP_G_TO_G = 0x0C77; - public static final int GL_PIXEL_MAP_B_TO_B = 0x0C78; - public static final int GL_PIXEL_MAP_A_TO_A = 0x0C79; - public static final int GL_PIXEL_MAP_I_TO_I_SIZE = 0x0CB0; - public static final int GL_PIXEL_MAP_S_TO_S_SIZE = 0x0CB1; - public static final int GL_PIXEL_MAP_I_TO_R_SIZE = 0x0CB2; - public static final int GL_PIXEL_MAP_I_TO_G_SIZE = 0x0CB3; - public static final int GL_PIXEL_MAP_I_TO_B_SIZE = 0x0CB4; - public static final int GL_PIXEL_MAP_I_TO_A_SIZE = 0x0CB5; - public static final int GL_PIXEL_MAP_R_TO_R_SIZE = 0x0CB6; - public static final int GL_PIXEL_MAP_G_TO_G_SIZE = 0x0CB7; - public static final int GL_PIXEL_MAP_B_TO_B_SIZE = 0x0CB8; - public static final int GL_PIXEL_MAP_A_TO_A_SIZE = 0x0CB9; - public static final int GL_UNPACK_SWAP_BYTES = 0x0CF0; - public static final int GL_UNPACK_LSB_FIRST = 0x0CF1; - public static final int GL_UNPACK_ROW_LENGTH = 0x0CF2; - public static final int GL_UNPACK_SKIP_ROWS = 0x0CF3; - public static final int GL_UNPACK_SKIP_PIXELS = 0x0CF4; - public static final int GL_UNPACK_ALIGNMENT = 0x0CF5; - public static final int GL_PACK_SWAP_BYTES = 0x0D00; - public static final int GL_PACK_LSB_FIRST = 0x0D01; - public static final int GL_PACK_ROW_LENGTH = 0x0D02; - public static final int GL_PACK_SKIP_ROWS = 0x0D03; - public static final int GL_PACK_SKIP_PIXELS = 0x0D04; - public static final int GL_PACK_ALIGNMENT = 0x0D05; - public static final int GL_MAP_COLOR = 0x0D10; - public static final int GL_MAP_STENCIL = 0x0D11; - public static final int GL_INDEX_SHIFT = 0x0D12; - public static final int GL_INDEX_OFFSET = 0x0D13; - public static final int GL_RED_SCALE = 0x0D14; - public static final int GL_RED_BIAS = 0x0D15; - public static final int GL_ZOOM_X = 0x0D16; - public static final int GL_ZOOM_Y = 0x0D17; - public static final int GL_GREEN_SCALE = 0x0D18; - public static final int GL_GREEN_BIAS = 0x0D19; - public static final int GL_BLUE_SCALE = 0x0D1A; - public static final int GL_BLUE_BIAS = 0x0D1B; - public static final int GL_ALPHA_SCALE = 0x0D1C; - public static final int GL_ALPHA_BIAS = 0x0D1D; - public static final int GL_DEPTH_SCALE = 0x0D1E; - public static final int GL_DEPTH_BIAS = 0x0D1F; - public static final int GL_MAX_EVAL_ORDER = 0x0D30; - public static final int GL_MAX_LIGHTS = 0x0D31; - public static final int GL_MAX_CLIP_PLANES = 0x0D32; - public static final int GL_MAX_TEXTURE_SIZE = 0x0D33; - public static final int GL_MAX_PIXEL_MAP_TABLE = 0x0D34; - public static final int GL_MAX_ATTRIB_STACK_DEPTH = 0x0D35; - public static final int GL_MAX_MODELVIEW_STACK_DEPTH = 0x0D36; - public static final int GL_MAX_NAME_STACK_DEPTH = 0x0D37; - public static final int GL_MAX_PROJECTION_STACK_DEPTH = 0x0D38; - public static final int GL_MAX_TEXTURE_STACK_DEPTH = 0x0D39; - public static final int GL_MAX_VIEWPORT_DIMS = 0x0D3A; - public static final int GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = 0x0D3B; - public static final int GL_SUBPIXEL_BITS = 0x0D50; - public static final int GL_INDEX_BITS = 0x0D51; - public static final int GL_RED_BITS = 0x0D52; - public static final int GL_GREEN_BITS = 0x0D53; - public static final int GL_BLUE_BITS = 0x0D54; - public static final int GL_ALPHA_BITS = 0x0D55; - public static final int GL_DEPTH_BITS = 0x0D56; - public static final int GL_STENCIL_BITS = 0x0D57; - public static final int GL_ACCUM_RED_BITS = 0x0D58; - public static final int GL_ACCUM_GREEN_BITS = 0x0D59; - public static final int GL_ACCUM_BLUE_BITS = 0x0D5A; - public static final int GL_ACCUM_ALPHA_BITS = 0x0D5B; - public static final int GL_NAME_STACK_DEPTH = 0x0D70; - public static final int GL_AUTO_NORMAL = 0x0D80; - public static final int GL_MAP1_COLOR_4 = 0x0D90; - public static final int GL_MAP1_INDEX = 0x0D91; - public static final int GL_MAP1_NORMAL = 0x0D92; - public static final int GL_MAP1_TEXTURE_COORD_1 = 0x0D93; - public static final int GL_MAP1_TEXTURE_COORD_2 = 0x0D94; - public static final int GL_MAP1_TEXTURE_COORD_3 = 0x0D95; - public static final int GL_MAP1_TEXTURE_COORD_4 = 0x0D96; - public static final int GL_MAP1_VERTEX_3 = 0x0D97; - public static final int GL_MAP1_VERTEX_4 = 0x0D98; - public static final int GL_MAP2_COLOR_4 = 0x0DB0; - public static final int GL_MAP2_INDEX = 0x0DB1; - public static final int GL_MAP2_NORMAL = 0x0DB2; - public static final int GL_MAP2_TEXTURE_COORD_1 = 0x0DB3; - public static final int GL_MAP2_TEXTURE_COORD_2 = 0x0DB4; - public static final int GL_MAP2_TEXTURE_COORD_3 = 0x0DB5; - public static final int GL_MAP2_TEXTURE_COORD_4 = 0x0DB6; - public static final int GL_MAP2_VERTEX_3 = 0x0DB7; - public static final int GL_MAP2_VERTEX_4 = 0x0DB8; - public static final int GL_MAP1_GRID_DOMAIN = 0x0DD0; - public static final int GL_MAP1_GRID_SEGMENTS = 0x0DD1; - public static final int GL_MAP2_GRID_DOMAIN = 0x0DD2; - public static final int GL_MAP2_GRID_SEGMENTS = 0x0DD3; - public static final int GL_TEXTURE_1D = 0x0DE0; - public static final int GL_TEXTURE_2D = 0x0DE1; - public static final int GL_FEEDBACK_BUFFER_POINTER = 0x0DF0; - public static final int GL_FEEDBACK_BUFFER_SIZE = 0x0DF1; - public static final int GL_FEEDBACK_BUFFER_TYPE = 0x0DF2; - public static final int GL_SELECTION_BUFFER_POINTER = 0x0DF3; - public static final int GL_SELECTION_BUFFER_SIZE = 0x0DF4; - - /* GetTextureParameter */ - /* GL_TEXTURE_MAG_FILTER */ - /* GL_TEXTURE_MIN_FILTER */ - /* GL_TEXTURE_WRAP_S */ - /* GL_TEXTURE_WRAP_T */ - public static final int GL_TEXTURE_WIDTH = 0x1000; - public static final int GL_TEXTURE_HEIGHT = 0x1001; - public static final int GL_TEXTURE_INTERNAL_FORMAT = 0x1003; - public static final int GL_TEXTURE_BORDER_COLOR = 0x1004; - public static final int GL_TEXTURE_BORDER = 0x1005; - /* GL_TEXTURE_RED_SIZE */ - /* GL_TEXTURE_GREEN_SIZE */ - /* GL_TEXTURE_BLUE_SIZE */ - /* GL_TEXTURE_ALPHA_SIZE */ - /* GL_TEXTURE_LUMINANCE_SIZE */ - /* GL_TEXTURE_INTENSITY_SIZE */ - /* GL_TEXTURE_PRIORITY */ - /* GL_TEXTURE_RESIDENT */ - - /* HintMode */ - public static final int GL_DONT_CARE = 0x1100; - public static final int GL_FASTEST = 0x1101; - public static final int GL_NICEST = 0x1102; - - /* LightName */ - public static final int GL_LIGHT0 = 0x4000; - public static final int GL_LIGHT1 = 0x4001; - public static final int GL_LIGHT2 = 0x4002; - public static final int GL_LIGHT3 = 0x4003; - public static final int GL_LIGHT4 = 0x4004; - public static final int GL_LIGHT5 = 0x4005; - public static final int GL_LIGHT6 = 0x4006; - public static final int GL_LIGHT7 = 0x4007; - - /* LightParameter */ - public static final int GL_AMBIENT = 0x1200; - public static final int GL_DIFFUSE = 0x1201; - public static final int GL_SPECULAR = 0x1202; - public static final int GL_POSITION = 0x1203; - public static final int GL_SPOT_DIRECTION = 0x1204; - public static final int GL_SPOT_EXPONENT = 0x1205; - public static final int GL_SPOT_CUTOFF = 0x1206; - public static final int GL_CONSTANT_ATTENUATION = 0x1207; - public static final int GL_LINEAR_ATTENUATION = 0x1208; - public static final int GL_QUADRATIC_ATTENUATION = 0x1209; - - /* ListMode */ - public static final int GL_COMPILE = 0x1300; - public static final int GL_COMPILE_AND_EXECUTE = 0x1301; - - /* LogicOp */ - public static final int GL_CLEAR = 0x1500; - public static final int GL_AND = 0x1501; - public static final int GL_AND_REVERSE = 0x1502; - public static final int GL_COPY = 0x1503; - public static final int GL_AND_INVERTED = 0x1504; - public static final int GL_NOOP = 0x1505; - public static final int GL_XOR = 0x1506; - public static final int GL_OR = 0x1507; - public static final int GL_NOR = 0x1508; - public static final int GL_EQUIV = 0x1509; - public static final int GL_INVERT = 0x150A; - public static final int GL_OR_REVERSE = 0x150B; - public static final int GL_COPY_INVERTED = 0x150C; - public static final int GL_OR_INVERTED = 0x150D; - public static final int GL_NAND = 0x150E; - public static final int GL_SET = 0x150F; - - /* MaterialParameter */ - public static final int GL_EMISSION = 0x1600; - public static final int GL_SHININESS = 0x1601; - public static final int GL_AMBIENT_AND_DIFFUSE = 0x1602; - public static final int GL_COLOR_INDEXES = 0x1603; - /* GL_AMBIENT */ - /* GL_DIFFUSE */ - /* GL_SPECULAR */ - - /* MatrixMode */ - public static final int GL_MODELVIEW = 0x1700; - public static final int GL_PROJECTION = 0x1701; - public static final int GL_TEXTURE = 0x1702; - - /* PixelCopyType */ - public static final int GL_COLOR = 0x1800; - public static final int GL_DEPTH = 0x1801; - public static final int GL_STENCIL = 0x1802; - - /* PixelFormat */ - public static final int GL_COLOR_INDEX = 0x1900; - public static final int GL_STENCIL_INDEX = 0x1901; - public static final int GL_DEPTH_COMPONENT = 0x1902; - public static final int GL_RED = 0x1903; - public static final int GL_GREEN = 0x1904; - public static final int GL_BLUE = 0x1905; - public static final int GL_ALPHA = 0x1906; - public static final int GL_RGB = 0x1907; - public static final int GL_RGBA = 0x1908; - public static final int GL_LUMINANCE = 0x1909; - public static final int GL_LUMINANCE_ALPHA = 0x190A; - - /* PixelType */ - public static final int GL_BITMAP = 0x1A00; - /* GL_BYTE */ - /* GL_UNSIGNED_BYTE */ - /* GL_SHORT */ - /* GL_UNSIGNED_SHORT */ - /* GL_INT */ - /* GL_UNSIGNED_INT */ - /* GL_FLOAT */ - - /* PolygonMode */ - public static final int GL_POINT = 0x1B00; - public static final int GL_LINE = 0x1B01; - public static final int GL_FILL = 0x1B02; - - /* RenderingMode */ - public static final int GL_RENDER = 0x1C00; - public static final int GL_FEEDBACK = 0x1C01; - public static final int GL_SELECT = 0x1C02; - - /* ShadingModel */ - public static final int GL_FLAT = 0x1D00; - public static final int GL_SMOOTH = 0x1D01; - - /* StencilOp */ - /* GL_ZERO */ - public static final int GL_KEEP = 0x1E00; - public static final int GL_REPLACE = 0x1E01; - public static final int GL_INCR = 0x1E02; - public static final int GL_DECR = 0x1E03; - /* GL_INVERT */ - - /* StringName */ - public static final int GL_VENDOR = 0x1F00; - public static final int GL_RENDERER = 0x1F01; - public static final int GL_VERSION = 0x1F02; - public static final int GL_EXTENSIONS = 0x1F03; - - /* TextureCoordName */ - public static final int GL_S = 0x2000; - public static final int GL_T = 0x2001; - public static final int GL_R = 0x2002; - public static final int GL_Q = 0x2003; - - /* TexCoordPointerType */ - /* GL_SHORT */ - /* GL_INT */ - /* GL_FLOAT */ - /* GL_DOUBLE */ - - /* TextureEnvMode */ - public static final int GL_MODULATE = 0x2100; - public static final int GL_DECAL = 0x2101; - /* GL_BLEND */ - /* GL_REPLACE */ - - /* TextureEnvParameter */ - public static final int GL_TEXTURE_ENV_MODE = 0x2200; - public static final int GL_TEXTURE_ENV_COLOR = 0x2201; - - /* TextureEnvTarget */ - public static final int GL_TEXTURE_ENV = 0x2300; - - /* TextureGenMode */ - public static final int GL_EYE_LINEAR = 0x2400; - public static final int GL_OBJECT_LINEAR = 0x2401; - public static final int GL_SPHERE_MAP = 0x2402; - - /* TextureGenParameter */ - public static final int GL_TEXTURE_GEN_MODE = 0x2500; - public static final int GL_OBJECT_PLANE = 0x2501; - public static final int GL_EYE_PLANE = 0x2502; - - /* TextureMagFilter */ - public static final int GL_NEAREST = 0x2600; - public static final int GL_LINEAR = 0x2601; - - /* TextureMinFilter */ - /* GL_NEAREST */ - /* GL_LINEAR */ - public static final int GL_NEAREST_MIPMAP_NEAREST = 0x2700; - public static final int GL_LINEAR_MIPMAP_NEAREST = 0x2701; - public static final int GL_NEAREST_MIPMAP_LINEAR = 0x2702; - public static final int GL_LINEAR_MIPMAP_LINEAR = 0x2703; - - /* TextureParameterName */ - public static final int GL_TEXTURE_MAG_FILTER = 0x2800; - public static final int GL_TEXTURE_MIN_FILTER = 0x2801; - public static final int GL_TEXTURE_WRAP_S = 0x2802; - public static final int GL_TEXTURE_WRAP_T = 0x2803; - /* GL_TEXTURE_BORDER_COLOR */ - /* GL_TEXTURE_PRIORITY */ - - /* TextureWrapMode */ - public static final int GL_CLAMP = 0x2900; - public static final int GL_REPEAT = 0x2901; - - /* ClientAttribMask */ - public static final int GL_CLIENT_PIXEL_STORE_BIT = 0x00000001; - public static final int GL_CLIENT_VERTEX_ARRAY_BIT = 0x00000002; - public static final int GL_ALL_CLIENT_ATTRIB_BITS = 0xffffffff; - - /* polygon_offset */ - public static final int GL_POLYGON_OFFSET_FACTOR = 0x8038; - public static final int GL_POLYGON_OFFSET_UNITS = 0x2A00; - public static final int GL_POLYGON_OFFSET_POINT = 0x2A01; - public static final int GL_POLYGON_OFFSET_LINE = 0x2A02; - public static final int GL_POLYGON_OFFSET_FILL = 0x8037; - - /* texture */ - public static final int GL_ALPHA4 = 0x803B; - public static final int GL_ALPHA8 = 0x803C; - public static final int GL_ALPHA12 = 0x803D; - public static final int GL_ALPHA16 = 0x803E; - public static final int GL_LUMINANCE4 = 0x803F; - public static final int GL_LUMINANCE8 = 0x8040; - public static final int GL_LUMINANCE12 = 0x8041; - public static final int GL_LUMINANCE16 = 0x8042; - public static final int GL_LUMINANCE4_ALPHA4 = 0x8043; - public static final int GL_LUMINANCE6_ALPHA2 = 0x8044; - public static final int GL_LUMINANCE8_ALPHA8 = 0x8045; - public static final int GL_LUMINANCE12_ALPHA4 = 0x8046; - public static final int GL_LUMINANCE12_ALPHA12 = 0x8047; - public static final int GL_LUMINANCE16_ALPHA16 = 0x8048; - public static final int GL_INTENSITY = 0x8049; - public static final int GL_INTENSITY4 = 0x804A; - public static final int GL_INTENSITY8 = 0x804B; - public static final int GL_INTENSITY12 = 0x804C; - public static final int GL_INTENSITY16 = 0x804D; - public static final int GL_R3_G3_B2 = 0x2A10; - public static final int GL_RGB4 = 0x804F; - public static final int GL_RGB5 = 0x8050; - public static final int GL_RGB8 = 0x8051; - public static final int GL_RGB10 = 0x8052; - public static final int GL_RGB12 = 0x8053; - public static final int GL_RGB16 = 0x8054; - public static final int GL_RGBA2 = 0x8055; - public static final int GL_RGBA4 = 0x8056; - public static final int GL_RGB5_A1 = 0x8057; - public static final int GL_RGBA8 = 0x8058; - public static final int GL_RGB10_A2 = 0x8059; - public static final int GL_RGBA12 = 0x805A; - public static final int GL_RGBA16 = 0x805B; - public static final int GL_TEXTURE_RED_SIZE = 0x805C; - public static final int GL_TEXTURE_GREEN_SIZE = 0x805D; - public static final int GL_TEXTURE_BLUE_SIZE = 0x805E; - public static final int GL_TEXTURE_ALPHA_SIZE = 0x805F; - public static final int GL_TEXTURE_LUMINANCE_SIZE = 0x8060; - public static final int GL_TEXTURE_INTENSITY_SIZE = 0x8061; - public static final int GL_PROXY_TEXTURE_1D = 0x8063; - public static final int GL_PROXY_TEXTURE_2D = 0x8064; - - /* texture_object */ - public static final int GL_TEXTURE_PRIORITY = 0x8066; - public static final int GL_TEXTURE_RESIDENT = 0x8067; - public static final int GL_TEXTURE_BINDING_1D = 0x8068; - public static final int GL_TEXTURE_BINDING_2D = 0x8069; - - /* vertex_array */ - public static final int GL_VERTEX_ARRAY = 0x8074; - public static final int GL_NORMAL_ARRAY = 0x8075; - public static final int GL_COLOR_ARRAY = 0x8076; - public static final int GL_INDEX_ARRAY = 0x8077; - public static final int GL_TEXTURE_COORD_ARRAY = 0x8078; - public static final int GL_EDGE_FLAG_ARRAY = 0x8079; - public static final int GL_VERTEX_ARRAY_SIZE = 0x807A; - public static final int GL_VERTEX_ARRAY_TYPE = 0x807B; - public static final int GL_VERTEX_ARRAY_STRIDE = 0x807C; - public static final int GL_NORMAL_ARRAY_TYPE = 0x807E; - public static final int GL_NORMAL_ARRAY_STRIDE = 0x807F; - public static final int GL_COLOR_ARRAY_SIZE = 0x8081; - public static final int GL_COLOR_ARRAY_TYPE = 0x8082; - public static final int GL_COLOR_ARRAY_STRIDE = 0x8083; - public static final int GL_INDEX_ARRAY_TYPE = 0x8085; - public static final int GL_INDEX_ARRAY_STRIDE = 0x8086; - public static final int GL_TEXTURE_COORD_ARRAY_SIZE = 0x8088; - public static final int GL_TEXTURE_COORD_ARRAY_TYPE = 0x8089; - public static final int GL_TEXTURE_COORD_ARRAY_STRIDE = 0x808A; - public static final int GL_EDGE_FLAG_ARRAY_STRIDE = 0x808C; - public static final int GL_VERTEX_ARRAY_POINTER = 0x808E; - public static final int GL_NORMAL_ARRAY_POINTER = 0x808F; - public static final int GL_COLOR_ARRAY_POINTER = 0x8090; - public static final int GL_INDEX_ARRAY_POINTER = 0x8091; - public static final int GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092; - public static final int GL_EDGE_FLAG_ARRAY_POINTER = 0x8093; - public static final int GL_V2F = 0x2A20; - public static final int GL_V3F = 0x2A21; - public static final int GL_C4UB_V2F = 0x2A22; - public static final int GL_C4UB_V3F = 0x2A23; - public static final int GL_C3F_V3F = 0x2A24; - public static final int GL_N3F_V3F = 0x2A25; - public static final int GL_C4F_N3F_V3F = 0x2A26; - public static final int GL_T2F_V3F = 0x2A27; - public static final int GL_T4F_V4F = 0x2A28; - public static final int GL_T2F_C4UB_V3F = 0x2A29; - public static final int GL_T2F_C3F_V3F = 0x2A2A; - public static final int GL_T2F_N3F_V3F = 0x2A2B; - public static final int GL_T2F_C4F_N3F_V3F = 0x2A2C; - public static final int GL_T4F_C4F_N3F_V4F = 0x2A2D; - - /* For compatibility with OpenGL v1.0 */ - public static final int GL_LOGIC_OP = GL_INDEX_LOGIC_OP; - public static final int GL_TEXTURE_COMPONENTS = GL_TEXTURE_INTERNAL_FORMAT; + public static final int GL_TEXTURE_COMPONENTS = 0x1003; + public static final int GL_LOGIC_OP = 0xbf1; + public static final int GL_T4F_C4F_N3F_V4F = 0x2a2d; + public static final int GL_T2F_C4F_N3F_V3F = 0x2a2c; + public static final int GL_T2F_N3F_V3F = 0x2a2b; + public static final int GL_T2F_C3F_V3F = 0x2a2a; + public static final int GL_T2F_C4UB_V3F = 0x2a29; + public static final int GL_T4F_V4F = 0x2a28; + public static final int GL_T2F_V3F = 0x2a27; + public static final int GL_C4F_N3F_V3F = 0x2a26; + public static final int GL_N3F_V3F = 0x2a25; + public static final int GL_C3F_V3F = 0x2a24; + public static final int GL_C4UB_V3F = 0x2a23; + public static final int GL_C4UB_V2F = 0x2a22; + public static final int GL_V3F = 0x2a21; + public static final int GL_V2F = 0x2a20; + public static final int GL_EDGE_FLAG_ARRAY_POINTER = 0x8093; + public static final int GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092; + public static final int GL_INDEX_ARRAY_POINTER = 0x8091; + public static final int GL_COLOR_ARRAY_POINTER = 0x8090; + public static final int GL_NORMAL_ARRAY_POINTER = 0x808f; + public static final int GL_VERTEX_ARRAY_POINTER = 0x808e; + public static final int GL_EDGE_FLAG_ARRAY_STRIDE = 0x808c; + public static final int GL_TEXTURE_COORD_ARRAY_STRIDE = 0x808a; + public static final int GL_TEXTURE_COORD_ARRAY_TYPE = 0x8089; + public static final int GL_TEXTURE_COORD_ARRAY_SIZE = 0x8088; + public static final int GL_INDEX_ARRAY_STRIDE = 0x8086; + public static final int GL_INDEX_ARRAY_TYPE = 0x8085; + public static final int GL_COLOR_ARRAY_STRIDE = 0x8083; + public static final int GL_COLOR_ARRAY_TYPE = 0x8082; + public static final int GL_COLOR_ARRAY_SIZE = 0x8081; + public static final int GL_NORMAL_ARRAY_STRIDE = 0x807f; + public static final int GL_NORMAL_ARRAY_TYPE = 0x807e; + public static final int GL_VERTEX_ARRAY_STRIDE = 0x807c; + public static final int GL_VERTEX_ARRAY_TYPE = 0x807b; + public static final int GL_VERTEX_ARRAY_SIZE = 0x807a; + public static final int GL_EDGE_FLAG_ARRAY = 0x8079; + public static final int GL_TEXTURE_COORD_ARRAY = 0x8078; + public static final int GL_INDEX_ARRAY = 0x8077; + public static final int GL_COLOR_ARRAY = 0x8076; + public static final int GL_NORMAL_ARRAY = 0x8075; + public static final int GL_VERTEX_ARRAY = 0x8074; + public static final int GL_TEXTURE_BINDING_2D = 0x8069; + public static final int GL_TEXTURE_BINDING_1D = 0x8068; + public static final int GL_TEXTURE_RESIDENT = 0x8067; + public static final int GL_TEXTURE_PRIORITY = 0x8066; + public static final int GL_PROXY_TEXTURE_2D = 0x8064; + public static final int GL_PROXY_TEXTURE_1D = 0x8063; + public static final int GL_TEXTURE_INTENSITY_SIZE = 0x8061; + public static final int GL_TEXTURE_LUMINANCE_SIZE = 0x8060; + public static final int GL_TEXTURE_ALPHA_SIZE = 0x805f; + public static final int GL_TEXTURE_BLUE_SIZE = 0x805e; + public static final int GL_TEXTURE_GREEN_SIZE = 0x805d; + public static final int GL_TEXTURE_RED_SIZE = 0x805c; + public static final int GL_RGBA16 = 0x805b; + public static final int GL_RGBA12 = 0x805a; + public static final int GL_RGB10_A2 = 0x8059; + public static final int GL_RGBA8 = 0x8058; + public static final int GL_RGB5_A1 = 0x8057; + public static final int GL_RGBA4 = 0x8056; + public static final int GL_RGBA2 = 0x8055; + public static final int GL_RGB16 = 0x8054; + public static final int GL_RGB12 = 0x8053; + public static final int GL_RGB10 = 0x8052; + public static final int GL_RGB8 = 0x8051; + public static final int GL_RGB5 = 0x8050; + public static final int GL_RGB4 = 0x804f; + public static final int GL_R3_G3_B2 = 0x2a10; + public static final int GL_INTENSITY16 = 0x804d; + public static final int GL_INTENSITY12 = 0x804c; + public static final int GL_INTENSITY8 = 0x804b; + public static final int GL_INTENSITY4 = 0x804a; + public static final int GL_INTENSITY = 0x8049; + public static final int GL_LUMINANCE16_ALPHA16 = 0x8048; + public static final int GL_LUMINANCE12_ALPHA12 = 0x8047; + public static final int GL_LUMINANCE12_ALPHA4 = 0x8046; + public static final int GL_LUMINANCE8_ALPHA8 = 0x8045; + public static final int GL_LUMINANCE6_ALPHA2 = 0x8044; + public static final int GL_LUMINANCE4_ALPHA4 = 0x8043; + public static final int GL_LUMINANCE16 = 0x8042; + public static final int GL_LUMINANCE12 = 0x8041; + public static final int GL_LUMINANCE8 = 0x8040; + public static final int GL_LUMINANCE4 = 0x803f; + public static final int GL_ALPHA16 = 0x803e; + public static final int GL_ALPHA12 = 0x803d; + public static final int GL_ALPHA8 = 0x803c; + public static final int GL_ALPHA4 = 0x803b; + public static final int GL_POLYGON_OFFSET_FILL = 0x8037; + public static final int GL_POLYGON_OFFSET_LINE = 0x2a02; + public static final int GL_POLYGON_OFFSET_POINT = 0x2a01; + public static final int GL_POLYGON_OFFSET_UNITS = 0x2a00; + public static final int GL_POLYGON_OFFSET_FACTOR = 0x8038; + public static final int GL_ALL_CLIENT_ATTRIB_BITS = 0xffffffff; + public static final int GL_CLIENT_VERTEX_ARRAY_BIT = 0x2; + public static final int GL_CLIENT_PIXEL_STORE_BIT = 0x1; + public static final int GL_REPEAT = 0x2901; + public static final int GL_CLAMP = 0x2900; + public static final int GL_TEXTURE_WRAP_T = 0x2803; + public static final int GL_TEXTURE_WRAP_S = 0x2802; + public static final int GL_TEXTURE_MIN_FILTER = 0x2801; + public static final int GL_TEXTURE_MAG_FILTER = 0x2800; + public static final int GL_LINEAR_MIPMAP_LINEAR = 0x2703; + public static final int GL_NEAREST_MIPMAP_LINEAR = 0x2702; + public static final int GL_LINEAR_MIPMAP_NEAREST = 0x2701; + public static final int GL_NEAREST_MIPMAP_NEAREST = 0x2700; + public static final int GL_LINEAR = 0x2601; + public static final int GL_NEAREST = 0x2600; + public static final int GL_EYE_PLANE = 0x2502; + public static final int GL_OBJECT_PLANE = 0x2501; + public static final int GL_TEXTURE_GEN_MODE = 0x2500; + public static final int GL_SPHERE_MAP = 0x2402; + public static final int GL_OBJECT_LINEAR = 0x2401; + public static final int GL_EYE_LINEAR = 0x2400; + public static final int GL_TEXTURE_ENV = 0x2300; + public static final int GL_TEXTURE_ENV_COLOR = 0x2201; + public static final int GL_TEXTURE_ENV_MODE = 0x2200; + public static final int GL_DECAL = 0x2101; + public static final int GL_MODULATE = 0x2100; + public static final int GL_Q = 0x2003; + public static final int GL_R = 0x2002; + public static final int GL_T = 0x2001; + public static final int GL_S = 0x2000; + public static final int GL_EXTENSIONS = 0x1f03; + public static final int GL_VERSION = 0x1f02; + public static final int GL_RENDERER = 0x1f01; + public static final int GL_VENDOR = 0x1f00; + public static final int GL_DECR = 0x1e03; + public static final int GL_INCR = 0x1e02; + public static final int GL_REPLACE = 0x1e01; + public static final int GL_KEEP = 0x1e00; + public static final int GL_SMOOTH = 0x1d01; + public static final int GL_FLAT = 0x1d00; + public static final int GL_SELECT = 0x1c02; + public static final int GL_FEEDBACK = 0x1c01; + public static final int GL_RENDER = 0x1c00; + public static final int GL_FILL = 0x1b02; + public static final int GL_LINE = 0x1b01; + public static final int GL_POINT = 0x1b00; + public static final int GL_BITMAP = 0x1a00; + public static final int GL_LUMINANCE_ALPHA = 0x190a; + public static final int GL_LUMINANCE = 0x1909; + public static final int GL_RGBA = 0x1908; + public static final int GL_RGB = 0x1907; + public static final int GL_ALPHA = 0x1906; + public static final int GL_BLUE = 0x1905; + public static final int GL_GREEN = 0x1904; + public static final int GL_RED = 0x1903; + public static final int GL_DEPTH_COMPONENT = 0x1902; + public static final int GL_STENCIL_INDEX = 0x1901; + public static final int GL_COLOR_INDEX = 0x1900; + public static final int GL_STENCIL = 0x1802; + public static final int GL_DEPTH = 0x1801; + public static final int GL_COLOR = 0x1800; + public static final int GL_TEXTURE = 0x1702; + public static final int GL_PROJECTION = 0x1701; + public static final int GL_MODELVIEW = 0x1700; + public static final int GL_COLOR_INDEXES = 0x1603; + public static final int GL_AMBIENT_AND_DIFFUSE = 0x1602; + public static final int GL_SHININESS = 0x1601; + public static final int GL_EMISSION = 0x1600; + public static final int GL_SET = 0x150f; + public static final int GL_NAND = 0x150e; + public static final int GL_OR_INVERTED = 0x150d; + public static final int GL_COPY_INVERTED = 0x150c; + public static final int GL_OR_REVERSE = 0x150b; + public static final int GL_INVERT = 0x150a; + public static final int GL_EQUIV = 0x1509; + public static final int GL_NOR = 0x1508; + public static final int GL_OR = 0x1507; + public static final int GL_XOR = 0x1506; + public static final int GL_NOOP = 0x1505; + public static final int GL_AND_INVERTED = 0x1504; + public static final int GL_COPY = 0x1503; + public static final int GL_AND_REVERSE = 0x1502; + public static final int GL_AND = 0x1501; + public static final int GL_CLEAR = 0x1500; + public static final int GL_COMPILE_AND_EXECUTE = 0x1301; + public static final int GL_COMPILE = 0x1300; + public static final int GL_QUADRATIC_ATTENUATION = 0x1209; + public static final int GL_LINEAR_ATTENUATION = 0x1208; + public static final int GL_CONSTANT_ATTENUATION = 0x1207; + public static final int GL_SPOT_CUTOFF = 0x1206; + public static final int GL_SPOT_EXPONENT = 0x1205; + public static final int GL_SPOT_DIRECTION = 0x1204; + public static final int GL_POSITION = 0x1203; + public static final int GL_SPECULAR = 0x1202; + public static final int GL_DIFFUSE = 0x1201; + public static final int GL_AMBIENT = 0x1200; + public static final int GL_LIGHT7 = 0x4007; + public static final int GL_LIGHT6 = 0x4006; + public static final int GL_LIGHT5 = 0x4005; + public static final int GL_LIGHT4 = 0x4004; + public static final int GL_LIGHT3 = 0x4003; + public static final int GL_LIGHT2 = 0x4002; + public static final int GL_LIGHT1 = 0x4001; + public static final int GL_LIGHT0 = 0x4000; + public static final int GL_NICEST = 0x1102; + public static final int GL_FASTEST = 0x1101; + public static final int GL_DONT_CARE = 0x1100; + public static final int GL_TEXTURE_BORDER = 0x1005; + public static final int GL_TEXTURE_BORDER_COLOR = 0x1004; + public static final int GL_TEXTURE_INTERNAL_FORMAT = 0x1003; + public static final int GL_TEXTURE_HEIGHT = 0x1001; + public static final int GL_TEXTURE_WIDTH = 0x1000; + public static final int GL_SELECTION_BUFFER_SIZE = 0xdf4; + public static final int GL_SELECTION_BUFFER_POINTER = 0xdf3; + public static final int GL_FEEDBACK_BUFFER_TYPE = 0xdf2; + public static final int GL_FEEDBACK_BUFFER_SIZE = 0xdf1; + public static final int GL_FEEDBACK_BUFFER_POINTER = 0xdf0; + public static final int GL_TEXTURE_2D = 0xde1; + public static final int GL_TEXTURE_1D = 0xde0; + public static final int GL_MAP2_GRID_SEGMENTS = 0xdd3; + public static final int GL_MAP2_GRID_DOMAIN = 0xdd2; + public static final int GL_MAP1_GRID_SEGMENTS = 0xdd1; + public static final int GL_MAP1_GRID_DOMAIN = 0xdd0; + public static final int GL_MAP2_VERTEX_4 = 0xdb8; + public static final int GL_MAP2_VERTEX_3 = 0xdb7; + public static final int GL_MAP2_TEXTURE_COORD_4 = 0xdb6; + public static final int GL_MAP2_TEXTURE_COORD_3 = 0xdb5; + public static final int GL_MAP2_TEXTURE_COORD_2 = 0xdb4; + public static final int GL_MAP2_TEXTURE_COORD_1 = 0xdb3; + public static final int GL_MAP2_NORMAL = 0xdb2; + public static final int GL_MAP2_INDEX = 0xdb1; + public static final int GL_MAP2_COLOR_4 = 0xdb0; + public static final int GL_MAP1_VERTEX_4 = 0xd98; + public static final int GL_MAP1_VERTEX_3 = 0xd97; + public static final int GL_MAP1_TEXTURE_COORD_4 = 0xd96; + public static final int GL_MAP1_TEXTURE_COORD_3 = 0xd95; + public static final int GL_MAP1_TEXTURE_COORD_2 = 0xd94; + public static final int GL_MAP1_TEXTURE_COORD_1 = 0xd93; + public static final int GL_MAP1_NORMAL = 0xd92; + public static final int GL_MAP1_INDEX = 0xd91; + public static final int GL_MAP1_COLOR_4 = 0xd90; + public static final int GL_AUTO_NORMAL = 0xd80; + public static final int GL_NAME_STACK_DEPTH = 0xd70; + public static final int GL_ACCUM_ALPHA_BITS = 0xd5b; + public static final int GL_ACCUM_BLUE_BITS = 0xd5a; + public static final int GL_ACCUM_GREEN_BITS = 0xd59; + public static final int GL_ACCUM_RED_BITS = 0xd58; + public static final int GL_STENCIL_BITS = 0xd57; + public static final int GL_DEPTH_BITS = 0xd56; + public static final int GL_ALPHA_BITS = 0xd55; + public static final int GL_BLUE_BITS = 0xd54; + public static final int GL_GREEN_BITS = 0xd53; + public static final int GL_RED_BITS = 0xd52; + public static final int GL_INDEX_BITS = 0xd51; + public static final int GL_SUBPIXEL_BITS = 0xd50; + public static final int GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = 0xd3b; + public static final int GL_MAX_VIEWPORT_DIMS = 0xd3a; + public static final int GL_MAX_TEXTURE_STACK_DEPTH = 0xd39; + public static final int GL_MAX_PROJECTION_STACK_DEPTH = 0xd38; + public static final int GL_MAX_NAME_STACK_DEPTH = 0xd37; + public static final int GL_MAX_MODELVIEW_STACK_DEPTH = 0xd36; + public static final int GL_MAX_ATTRIB_STACK_DEPTH = 0xd35; + public static final int GL_MAX_PIXEL_MAP_TABLE = 0xd34; + public static final int GL_MAX_TEXTURE_SIZE = 0xd33; + public static final int GL_MAX_CLIP_PLANES = 0xd32; + public static final int GL_MAX_LIGHTS = 0xd31; + public static final int GL_MAX_EVAL_ORDER = 0xd30; + public static final int GL_DEPTH_BIAS = 0xd1f; + public static final int GL_DEPTH_SCALE = 0xd1e; + public static final int GL_ALPHA_BIAS = 0xd1d; + public static final int GL_ALPHA_SCALE = 0xd1c; + public static final int GL_BLUE_BIAS = 0xd1b; + public static final int GL_BLUE_SCALE = 0xd1a; + public static final int GL_GREEN_BIAS = 0xd19; + public static final int GL_GREEN_SCALE = 0xd18; + public static final int GL_ZOOM_Y = 0xd17; + public static final int GL_ZOOM_X = 0xd16; + public static final int GL_RED_BIAS = 0xd15; + public static final int GL_RED_SCALE = 0xd14; + public static final int GL_INDEX_OFFSET = 0xd13; + public static final int GL_INDEX_SHIFT = 0xd12; + public static final int GL_MAP_STENCIL = 0xd11; + public static final int GL_MAP_COLOR = 0xd10; + public static final int GL_PACK_ALIGNMENT = 0xd05; + public static final int GL_PACK_SKIP_PIXELS = 0xd04; + public static final int GL_PACK_SKIP_ROWS = 0xd03; + public static final int GL_PACK_ROW_LENGTH = 0xd02; + public static final int GL_PACK_LSB_FIRST = 0xd01; + public static final int GL_PACK_SWAP_BYTES = 0xd00; + public static final int GL_UNPACK_ALIGNMENT = 0xcf5; + public static final int GL_UNPACK_SKIP_PIXELS = 0xcf4; + public static final int GL_UNPACK_SKIP_ROWS = 0xcf3; + public static final int GL_UNPACK_ROW_LENGTH = 0xcf2; + public static final int GL_UNPACK_LSB_FIRST = 0xcf1; + public static final int GL_UNPACK_SWAP_BYTES = 0xcf0; + public static final int GL_PIXEL_MAP_A_TO_A_SIZE = 0xcb9; + public static final int GL_PIXEL_MAP_B_TO_B_SIZE = 0xcb8; + public static final int GL_PIXEL_MAP_G_TO_G_SIZE = 0xcb7; + public static final int GL_PIXEL_MAP_R_TO_R_SIZE = 0xcb6; + public static final int GL_PIXEL_MAP_I_TO_A_SIZE = 0xcb5; + public static final int GL_PIXEL_MAP_I_TO_B_SIZE = 0xcb4; + public static final int GL_PIXEL_MAP_I_TO_G_SIZE = 0xcb3; + public static final int GL_PIXEL_MAP_I_TO_R_SIZE = 0xcb2; + public static final int GL_PIXEL_MAP_S_TO_S_SIZE = 0xcb1; + public static final int GL_PIXEL_MAP_I_TO_I_SIZE = 0xcb0; + public static final int GL_PIXEL_MAP_A_TO_A = 0xc79; + public static final int GL_PIXEL_MAP_B_TO_B = 0xc78; + public static final int GL_PIXEL_MAP_G_TO_G = 0xc77; + public static final int GL_PIXEL_MAP_R_TO_R = 0xc76; + public static final int GL_PIXEL_MAP_I_TO_A = 0xc75; + public static final int GL_PIXEL_MAP_I_TO_B = 0xc74; + public static final int GL_PIXEL_MAP_I_TO_G = 0xc73; + public static final int GL_PIXEL_MAP_I_TO_R = 0xc72; + public static final int GL_PIXEL_MAP_S_TO_S = 0xc71; + public static final int GL_PIXEL_MAP_I_TO_I = 0xc70; + public static final int GL_TEXTURE_GEN_Q = 0xc63; + public static final int GL_TEXTURE_GEN_R = 0xc62; + public static final int GL_TEXTURE_GEN_T = 0xc61; + public static final int GL_TEXTURE_GEN_S = 0xc60; + public static final int GL_FOG_HINT = 0xc54; + public static final int GL_POLYGON_SMOOTH_HINT = 0xc53; + public static final int GL_LINE_SMOOTH_HINT = 0xc52; + public static final int GL_POINT_SMOOTH_HINT = 0xc51; + public static final int GL_PERSPECTIVE_CORRECTION_HINT = 0xc50; + public static final int GL_RENDER_MODE = 0xc40; + public static final int GL_STEREO = 0xc33; + public static final int GL_DOUBLEBUFFER = 0xc32; + public static final int GL_RGBA_MODE = 0xc31; + public static final int GL_INDEX_MODE = 0xc30; + public static final int GL_COLOR_WRITEMASK = 0xc23; + public static final int GL_COLOR_CLEAR_VALUE = 0xc22; + public static final int GL_INDEX_WRITEMASK = 0xc21; + public static final int GL_INDEX_CLEAR_VALUE = 0xc20; + public static final int GL_SCISSOR_TEST = 0xc11; + public static final int GL_SCISSOR_BOX = 0xc10; + public static final int GL_READ_BUFFER = 0xc02; + public static final int GL_DRAW_BUFFER = 0xc01; + public static final int GL_AUX_BUFFERS = 0xc00; + public static final int GL_COLOR_LOGIC_OP = 0xbf2; + public static final int GL_INDEX_LOGIC_OP = 0xbf1; + public static final int GL_LOGIC_OP_MODE = 0xbf0; + public static final int GL_BLEND = 0xbe2; + public static final int GL_BLEND_SRC = 0xbe1; + public static final int GL_BLEND_DST = 0xbe0; + public static final int GL_DITHER = 0xbd0; + public static final int GL_ALPHA_TEST_REF = 0xbc2; + public static final int GL_ALPHA_TEST_FUNC = 0xbc1; + public static final int GL_ALPHA_TEST = 0xbc0; + public static final int GL_CLIENT_ATTRIB_STACK_DEPTH = 0xbb1; + public static final int GL_ATTRIB_STACK_DEPTH = 0xbb0; + public static final int GL_TEXTURE_MATRIX = 0xba8; + public static final int GL_PROJECTION_MATRIX = 0xba7; + public static final int GL_MODELVIEW_MATRIX = 0xba6; + public static final int GL_TEXTURE_STACK_DEPTH = 0xba5; + public static final int GL_PROJECTION_STACK_DEPTH = 0xba4; + public static final int GL_MODELVIEW_STACK_DEPTH = 0xba3; + public static final int GL_VIEWPORT = 0xba2; + public static final int GL_NORMALIZE = 0xba1; + public static final int GL_MATRIX_MODE = 0xba0; + public static final int GL_STENCIL_WRITEMASK = 0xb98; + public static final int GL_STENCIL_REF = 0xb97; + public static final int GL_STENCIL_PASS_DEPTH_PASS = 0xb96; + public static final int GL_STENCIL_PASS_DEPTH_FAIL = 0xb95; + public static final int GL_STENCIL_FAIL = 0xb94; + public static final int GL_STENCIL_VALUE_MASK = 0xb93; + public static final int GL_STENCIL_FUNC = 0xb92; + public static final int GL_STENCIL_CLEAR_VALUE = 0xb91; + public static final int GL_STENCIL_TEST = 0xb90; + public static final int GL_ACCUM_CLEAR_VALUE = 0xb80; + public static final int GL_DEPTH_FUNC = 0xb74; + public static final int GL_DEPTH_CLEAR_VALUE = 0xb73; + public static final int GL_DEPTH_WRITEMASK = 0xb72; + public static final int GL_DEPTH_TEST = 0xb71; + public static final int GL_DEPTH_RANGE = 0xb70; + public static final int GL_FOG_COLOR = 0xb66; + public static final int GL_FOG_MODE = 0xb65; + public static final int GL_FOG_END = 0xb64; + public static final int GL_FOG_START = 0xb63; + public static final int GL_FOG_DENSITY = 0xb62; + public static final int GL_FOG_INDEX = 0xb61; + public static final int GL_FOG = 0xb60; + public static final int GL_COLOR_MATERIAL = 0xb57; + public static final int GL_COLOR_MATERIAL_PARAMETER = 0xb56; + public static final int GL_COLOR_MATERIAL_FACE = 0xb55; + public static final int GL_SHADE_MODEL = 0xb54; + public static final int GL_LIGHT_MODEL_AMBIENT = 0xb53; + public static final int GL_LIGHT_MODEL_TWO_SIDE = 0xb52; + public static final int GL_LIGHT_MODEL_LOCAL_VIEWER = 0xb51; + public static final int GL_LIGHTING = 0xb50; + public static final int GL_FRONT_FACE = 0xb46; + public static final int GL_CULL_FACE_MODE = 0xb45; + public static final int GL_CULL_FACE = 0xb44; + public static final int GL_EDGE_FLAG = 0xb43; + public static final int GL_POLYGON_STIPPLE = 0xb42; + public static final int GL_POLYGON_SMOOTH = 0xb41; + public static final int GL_POLYGON_MODE = 0xb40; + public static final int GL_LIST_INDEX = 0xb33; + public static final int GL_LIST_BASE = 0xb32; + public static final int GL_MAX_LIST_NESTING = 0xb31; + public static final int GL_LIST_MODE = 0xb30; + public static final int GL_LINE_STIPPLE_REPEAT = 0xb26; + public static final int GL_LINE_STIPPLE_PATTERN = 0xb25; + public static final int GL_LINE_STIPPLE = 0xb24; + public static final int GL_LINE_WIDTH_GRANULARITY = 0xb23; + public static final int GL_LINE_WIDTH_RANGE = 0xb22; + public static final int GL_LINE_WIDTH = 0xb21; + public static final int GL_LINE_SMOOTH = 0xb20; + public static final int GL_POINT_SIZE_GRANULARITY = 0xb13; + public static final int GL_POINT_SIZE_RANGE = 0xb12; + public static final int GL_POINT_SIZE = 0xb11; + public static final int GL_POINT_SMOOTH = 0xb10; + public static final int GL_CURRENT_RASTER_DISTANCE = 0xb09; + public static final int GL_CURRENT_RASTER_POSITION_VALID = 0xb08; + public static final int GL_CURRENT_RASTER_POSITION = 0xb07; + public static final int GL_CURRENT_RASTER_TEXTURE_COORDS = 0xb06; + public static final int GL_CURRENT_RASTER_INDEX = 0xb05; + public static final int GL_CURRENT_RASTER_COLOR = 0xb04; + public static final int GL_CURRENT_TEXTURE_COORDS = 0xb03; + public static final int GL_CURRENT_NORMAL = 0xb02; + public static final int GL_CURRENT_INDEX = 0xb01; + public static final int GL_CURRENT_COLOR = 0xb00; + public static final int GL_DOMAIN = 0xa02; + public static final int GL_ORDER = 0xa01; + public static final int GL_COEFF = 0xa00; + public static final int GL_CCW = 0x901; + public static final int GL_CW = 0x900; + public static final int GL_EXP2 = 0x801; + public static final int GL_EXP = 0x800; + public static final int GL_LINE_RESET_TOKEN = 0x707; + public static final int GL_COPY_PIXEL_TOKEN = 0x706; + public static final int GL_DRAW_PIXEL_TOKEN = 0x705; + public static final int GL_BITMAP_TOKEN = 0x704; + public static final int GL_POLYGON_TOKEN = 0x703; + public static final int GL_LINE_TOKEN = 0x702; + public static final int GL_POINT_TOKEN = 0x701; + public static final int GL_PASS_THROUGH_TOKEN = 0x700; + public static final int GL_4D_COLOR_TEXTURE = 0x604; + public static final int GL_3D_COLOR_TEXTURE = 0x603; + public static final int GL_3D_COLOR = 0x602; + public static final int GL_3D = 0x601; + public static final int GL_2D = 0x600; + public static final int GL_OUT_OF_MEMORY = 0x505; + public static final int GL_STACK_UNDERFLOW = 0x504; + public static final int GL_STACK_OVERFLOW = 0x503; + public static final int GL_INVALID_OPERATION = 0x502; + public static final int GL_INVALID_VALUE = 0x501; + public static final int GL_INVALID_ENUM = 0x500; + public static final int GL_NO_ERROR = 0x0; + public static final int GL_AUX3 = 0x40c; + public static final int GL_AUX2 = 0x40b; + public static final int GL_AUX1 = 0x40a; + public static final int GL_AUX0 = 0x409; + public static final int GL_FRONT_AND_BACK = 0x408; + public static final int GL_RIGHT = 0x407; + public static final int GL_LEFT = 0x406; + public static final int GL_BACK = 0x405; + public static final int GL_FRONT = 0x404; + public static final int GL_BACK_RIGHT = 0x403; + public static final int GL_BACK_LEFT = 0x402; + public static final int GL_FRONT_RIGHT = 0x401; + public static final int GL_FRONT_LEFT = 0x400; + public static final int GL_NONE = 0x0; + public static final int GL_DOUBLE = 0x140a; + public static final int GL_4_BYTES = 0x1409; + public static final int GL_3_BYTES = 0x1408; + public static final int GL_2_BYTES = 0x1407; + public static final int GL_FLOAT = 0x1406; + public static final int GL_UNSIGNED_INT = 0x1405; + public static final int GL_INT = 0x1404; + public static final int GL_UNSIGNED_SHORT = 0x1403; + public static final int GL_SHORT = 0x1402; + public static final int GL_UNSIGNED_BYTE = 0x1401; + public static final int GL_BYTE = 0x1400; + public static final int GL_CLIP_PLANE5 = 0x3005; + public static final int GL_CLIP_PLANE4 = 0x3004; + public static final int GL_CLIP_PLANE3 = 0x3003; + public static final int GL_CLIP_PLANE2 = 0x3002; + public static final int GL_CLIP_PLANE1 = 0x3001; + public static final int GL_CLIP_PLANE0 = 0x3000; + public static final int GL_FALSE = 0x0; + public static final int GL_TRUE = 0x1; + public static final int GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004; + public static final int GL_CONSTANT_ALPHA = 0x8003; + public static final int GL_ONE_MINUS_CONSTANT_COLOR = 0x8002; + public static final int GL_CONSTANT_COLOR = 0x8001; + public static final int GL_SRC_ALPHA_SATURATE = 0x308; + public static final int GL_ONE_MINUS_DST_COLOR = 0x307; + public static final int GL_DST_COLOR = 0x306; + public static final int GL_ONE_MINUS_DST_ALPHA = 0x305; + public static final int GL_DST_ALPHA = 0x304; + public static final int GL_ONE_MINUS_SRC_ALPHA = 0x303; + public static final int GL_SRC_ALPHA = 0x302; + public static final int GL_ONE_MINUS_SRC_COLOR = 0x301; + public static final int GL_SRC_COLOR = 0x300; + public static final int GL_ONE = 0x1; + public static final int GL_ZERO = 0x0; + public static final int GL_POLYGON = 0x9; + public static final int GL_QUAD_STRIP = 0x8; + public static final int GL_QUADS = 0x7; + public static final int GL_TRIANGLE_FAN = 0x6; + public static final int GL_TRIANGLE_STRIP = 0x5; + public static final int GL_TRIANGLES = 0x4; + public static final int GL_LINE_STRIP = 0x3; + public static final int GL_LINE_LOOP = 0x2; + public static final int GL_LINES = 0x1; + public static final int GL_POINTS = 0x0; + public static final int GL_ALL_ATTRIB_BITS = 0xfffff; + public static final int GL_SCISSOR_BIT = 0x80000; + public static final int GL_TEXTURE_BIT = 0x40000; + public static final int GL_LIST_BIT = 0x20000; + public static final int GL_EVAL_BIT = 0x10000; + public static final int GL_HINT_BIT = 0x8000; + public static final int GL_COLOR_BUFFER_BIT = 0x4000; + public static final int GL_ENABLE_BIT = 0x2000; + public static final int GL_TRANSFORM_BIT = 0x1000; + public static final int GL_VIEWPORT_BIT = 0x800; + public static final int GL_STENCIL_BUFFER_BIT = 0x400; + public static final int GL_ACCUM_BUFFER_BIT = 0x200; + public static final int GL_DEPTH_BUFFER_BIT = 0x100; + public static final int GL_FOG_BIT = 0x80; + public static final int GL_LIGHTING_BIT = 0x40; + public static final int GL_PIXEL_MODE_BIT = 0x20; + public static final int GL_POLYGON_STIPPLE_BIT = 0x10; + public static final int GL_POLYGON_BIT = 0x8; + public static final int GL_LINE_BIT = 0x4; + public static final int GL_POINT_BIT = 0x2; + public static final int GL_CURRENT_BIT = 0x1; + public static final int GL_ALWAYS = 0x207; + public static final int GL_GEQUAL = 0x206; + public static final int GL_NOTEQUAL = 0x205; + public static final int GL_GREATER = 0x204; + public static final int GL_LEQUAL = 0x203; + public static final int GL_EQUAL = 0x202; + public static final int GL_LESS = 0x201; + public static final int GL_NEVER = 0x200; + public static final int GL_ADD = 0x104; + public static final int GL_MULT = 0x103; + public static final int GL_RETURN = 0x102; + public static final int GL_LOAD = 0x101; + public static final int GL_ACCUM = 0x100; private GL11() { } static native void initNativeStubs() throws LWJGLException; - public static native void glAccum(int op, float value); - public static native void glAlphaFunc(int func, float ref); - public static native void glClearColor(float red, float green, float blue, float alpha); - public static native void glClearAccum(float red, float green, float blue, float alpha); - public static native void glClear(int mask); + public static native void glViewport(int x, int y, int width, int height); - // --------------------------- - public static void glCallLists(ByteBuffer lists) { - BufferChecks.checkDirect(lists); - nglCallLists(lists.remaining(), GL_UNSIGNED_BYTE, lists, lists.position()); - } - public static void glCallLists(ShortBuffer lists) { - BufferChecks.checkDirect(lists); - nglCallLists(lists.remaining(), GL_UNSIGNED_SHORT, lists, lists.position() << 1); - } - public static void glCallLists(IntBuffer lists) { - BufferChecks.checkDirect(lists); - nglCallLists(lists.remaining(), GL_UNSIGNED_INT, lists, lists.position() << 2); - } - private static native void nglCallLists(int n, int type, Buffer lists, int lists_offset); - // --------------------------- + public static native void glStencilMask(int mask); - public static native void glCallList(int list); - public static native void glBlendFunc(int sfactor, int dfactor); + public static native void glStencilOp(int fail, int zfail, int zpass); - // --------------------------- - public static void glBitmap(int width, int height, float xorig, float yorig, float xmove, float ymove, ByteBuffer bitmap) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(bitmap, ((width + 7) / 8) * height); - nglBitmap(width, height, xorig, yorig, xmove, ymove, bitmap, bitmap.position()); - } - private static native void nglBitmap(int width, int height, float xorig, float yorig, float xmove, float ymove, ByteBuffer bitmap, int bitmap_offset); + public static native void glTexCoord4f(float s, float t, float r, float q); - public static void glBitmap(int width, int height, float xorig, float yorig, float xmove, float ymove, int buffer_offect) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglBitmapBO(width, height, xorig, yorig, xmove, ymove, buffer_offect); - } - private static native void nglBitmapBO(int width, int height, float xorig, float yorig, float xmove, float ymove, int buffer_offset); - // --------------------------- + public static native void glTexCoord3f(float s, float t, float r); - public static native void glBindTexture(int target, int texture); - public static native void glBegin(int mode); - public static native void glEnd(); - public static native void glArrayElement(int i); - public static native void glClearDepth(double depth); - public static native void glDeleteLists(int list, int range); + public static native void glTexCoord2f(float s, float t); - public static void glDeleteTextures(IntBuffer textures) { - BufferChecks.checkDirect(textures); - nglDeleteTextures(textures.remaining(), textures, textures.position()); - } - private static native void nglDeleteTextures(int n, IntBuffer textures, int textures_offset); + public static native void glTexCoord1f(float s); - public static native void glCullFace(int mode); - public static native void glCopyTexSubImage2D(int target, int level, int xoffset, int yoffset, int x, int y, int width, int height); - public static native void glCopyTexSubImage1D(int target, int level, int xoffset, int x, int y, int width); - public static native void glCopyTexImage2D(int target, int level, int internalFormat, int x, int y, int width, int height, int border); - public static native void glCopyTexImage1D(int target, int level, int internalFormat, int x, int y, int width, int border); - public static native void glCopyPixels(int x, int y, int width, int height, int type); - - // --------------------------- - public static void glColorPointer(int size, boolean unsigned, int stride, ByteBuffer pointer) { - BufferChecks.checkDirect(pointer); + public static void glTexCoordPointer(int size, int stride, FloatBuffer pointer) { GLBufferChecks.ensureArrayVBOdisabled(); - nglColorPointer(size, unsigned ? GL_UNSIGNED_BYTE : GL_BYTE, stride, pointer, pointer.position()); - } - public static void glColorPointer(int size, int stride, FloatBuffer pointer) { BufferChecks.checkDirect(pointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglColorPointer(size, GL_FLOAT, stride, pointer, pointer.position() << 2); + nglTexCoordPointer(size, GL11.GL_FLOAT, stride, pointer, pointer.position() << 2); } - private static native void nglColorPointer(int size, int type, int stride, Buffer pointer, int pointer_offset); - - public static void glColorPointer(int size, int type, int stride, int buffer_offset) { + private static native void nglTexCoordPointer(int size, int type, int stride, Buffer pointer, int pointer_position); + public static void glTexCoordPointer(int size, int type, int stride, int pointer_buffer_offset) { GLBufferChecks.ensureArrayVBOenabled(); - nglColorPointerVBO(size, type, stride, buffer_offset); + nglTexCoordPointerBO(size, type, stride, pointer_buffer_offset); } - private static native void nglColorPointerVBO(int size, int type, int stride, int buffer_offset); - // --------------------------- + private static native void nglTexCoordPointerBO(int size, int type, int stride, int pointer_buffer_offset); - public static native void glColorMaterial(int face, int mode); - public static native void glColorMask(boolean red, boolean green, boolean blue, boolean alpha); - public static native void glColor3b(byte red, byte green, byte blue); - public static native void glColor3f(float red, float green, float blue); - public static native void glColor3ub(byte red, byte green, byte blue); - public static native void glColor4b(byte red, byte green, byte blue, byte alpha); - public static native void glColor4f(float red, float green, float blue, float alpha); - public static native void glColor4ub(byte red, byte green, byte blue, byte alpha); - - public static void glClipPlane(int plane, DoubleBuffer equation) { - BufferChecks.checkBuffer(equation, 4); - nglClipPlane(plane, equation, equation.position() << 3); + public static void glTexEnv(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglTexEnviv(target, pname, params, params.position()); } - private static native void nglClipPlane(int plane, DoubleBuffer equation, int equation_offset); + private static native void nglTexEnviv(int target, int pname, IntBuffer params, int params_position); - public static native void glClearStencil(int s); - public static native void glClearIndex(float c); - public static native void glEvalPoint1(int i); - public static native void glEvalPoint2(int i, int j); - public static native void glEvalMesh1(int mode, int i1, int i2); - public static native void glEvalMesh2(int mode, int i1, int i2, int j1, int j2); - public static native void glEvalCoord1f(float u); - public static native void glEvalCoord2f(float u, float v); - public static native void glEnableClientState(int cap); - public static native void glDisableClientState(int cap); - public static native void glEnable(int cap); - public static native void glDisable(int cap); + public static void glTexEnv(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglTexEnvfv(target, pname, params, params.position()); + } + private static native void nglTexEnvfv(int target, int pname, FloatBuffer params, int params_position); - // --------------------------- - public static void glEdgeFlagPointer(int stride, ByteBuffer pointer) { - BufferChecks.checkDirect(pointer); + public static native void glTexEnvi(int target, int pname, int param); + + public static native void glTexEnvf(int target, int pname, float param); + + public static void glTexGen(int coord, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglTexGeniv(coord, pname, params, params.position()); + } + private static native void nglTexGeniv(int coord, int pname, IntBuffer params, int params_position); + + public static native void glTexGeni(int coord, int pname, int param); + + public static void glTexGen(int coord, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglTexGenfv(coord, pname, params, params.position()); + } + private static native void nglTexGenfv(int coord, int pname, FloatBuffer params, int params_position); + + public static native void glTexGenf(int coord, int pname, float param); + + public static void glTexParameter(int target, int pname, IntBuffer param) { + BufferChecks.checkBuffer(param, 4); + nglTexParameteriv(target, pname, param, param.position()); + } + private static native void nglTexParameteriv(int target, int pname, IntBuffer param, int param_position); + + public static void glTexParameter(int target, int pname, FloatBuffer param) { + BufferChecks.checkBuffer(param, 4); + nglTexParameterfv(target, pname, param, param.position()); + } + private static native void nglTexParameterfv(int target, int pname, FloatBuffer param, int param_position); + + public static native void glTexParameteri(int target, int pname, int param); + + public static native void glTexParameterf(int target, int pname, float param); + + public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, ShortBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)); + nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels, pixels.position() << 1); + } + public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, IntBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)); + nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels, pixels.position() << 2); + } + public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, FloatBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)); + nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels, pixels.position() << 2); + } + public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, ByteBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)); + nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels, pixels.position()); + } + private static native void nglTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, Buffer pixels, int pixels_position); + public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, int pixels_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglTexSubImage2DBO(target, level, xoffset, yoffset, width, height, format, type, pixels_buffer_offset); + } + private static native void nglTexSubImage2DBO(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, int pixels_buffer_offset); + + public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, ShortBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, 1, 1)); + nglTexSubImage1D(target, level, xoffset, width, format, type, pixels, pixels.position() << 1); + } + public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, IntBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, 1, 1)); + nglTexSubImage1D(target, level, xoffset, width, format, type, pixels, pixels.position() << 2); + } + public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, FloatBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, 1, 1)); + nglTexSubImage1D(target, level, xoffset, width, format, type, pixels, pixels.position() << 2); + } + public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, ByteBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, 1, 1)); + nglTexSubImage1D(target, level, xoffset, width, format, type, pixels, pixels.position()); + } + private static native void nglTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, Buffer pixels, int pixels_position); + public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, int pixels_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglTexSubImage1DBO(target, level, xoffset, width, format, type, pixels_buffer_offset); + } + private static native void nglTexSubImage1DBO(int target, int level, int xoffset, int width, int format, int type, int pixels_buffer_offset); + + public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, ShortBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage2DStorage(pixels, format, type, width, height, border)); + nglTexImage2D(target, level, internalformat, width, height, border, format, type, pixels, pixels != null ? pixels.position() << 1 : 0); + } + public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, IntBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage2DStorage(pixels, format, type, width, height, border)); + nglTexImage2D(target, level, internalformat, width, height, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); + } + public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, FloatBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage2DStorage(pixels, format, type, width, height, border)); + nglTexImage2D(target, level, internalformat, width, height, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); + } + public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, ByteBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage2DStorage(pixels, format, type, width, height, border)); + nglTexImage2D(target, level, internalformat, width, height, border, format, type, pixels, pixels != null ? pixels.position() : 0); + } + private static native void nglTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, Buffer pixels, int pixels_position); + public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, int pixels_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglTexImage2DBO(target, level, internalformat, width, height, border, format, type, pixels_buffer_offset); + } + private static native void nglTexImage2DBO(int target, int level, int internalformat, int width, int height, int border, int format, int type, int pixels_buffer_offset); + + public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, ShortBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage1DStorage(pixels, format, type, width, border)); + nglTexImage1D(target, level, internalformat, width, border, format, type, pixels, pixels != null ? pixels.position() << 1 : 0); + } + public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, IntBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage1DStorage(pixels, format, type, width, border)); + nglTexImage1D(target, level, internalformat, width, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); + } + public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, FloatBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage1DStorage(pixels, format, type, width, border)); + nglTexImage1D(target, level, internalformat, width, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); + } + public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, ByteBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage1DStorage(pixels, format, type, width, border)); + nglTexImage1D(target, level, internalformat, width, border, format, type, pixels, pixels != null ? pixels.position() : 0); + } + private static native void nglTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, Buffer pixels, int pixels_position); + public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, int pixels_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglTexImage1DBO(target, level, internalformat, width, border, format, type, pixels_buffer_offset); + } + private static native void nglTexImage1DBO(int target, int level, int internalformat, int width, int border, int format, int type, int pixels_buffer_offset); + + public static native void glTranslatef(float x, float y, float z); + + public static native void glVertex4i(int x, int y, int z, int w); + + public static native void glVertex4f(float x, float y, float z, float w); + + public static native void glVertex3i(int x, int y, int z); + + public static native void glVertex3f(float x, float y, float z); + + public static native void glVertex2i(int x, int y); + + public static native void glVertex2f(float x, float y); + + public static void glVertexPointer(int size, int stride, IntBuffer pointer) { GLBufferChecks.ensureArrayVBOdisabled(); - nglEdgeFlagPointer(stride, pointer, pointer.position()); + BufferChecks.checkDirect(pointer); + nglVertexPointer(size, GL11.GL_INT, stride, pointer, pointer.position() << 2); } - private static native void nglEdgeFlagPointer(int stride, Buffer pointer, int pointer_offset); - - public static void glEdgeFlagPointer(int stride, int buffer_offset) { + public static void glVertexPointer(int size, int stride, FloatBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglVertexPointer(size, GL11.GL_FLOAT, stride, pointer, pointer.position() << 2); + } + private static native void nglVertexPointer(int size, int type, int stride, Buffer pointer, int pointer_position); + public static void glVertexPointer(int size, int type, int stride, int pointer_buffer_offset) { GLBufferChecks.ensureArrayVBOenabled(); - nglEdgeFlagPointerVBO(stride, buffer_offset); + nglVertexPointerBO(size, type, stride, pointer_buffer_offset); } - private static native void nglEdgeFlagPointerVBO(int stride, int buffer_offset); - // --------------------------- + private static native void nglVertexPointerBO(int size, int type, int stride, int pointer_buffer_offset); - public static native void glEdgeFlag(boolean flag); + public static native void glStencilFunc(int func, int ref, int mask); - // --------------------------- - public static void glDrawPixels(int width, int height, int format, int type, ByteBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, 1)); - nglDrawPixels(width, height, format, type, pixels, pixels.position()); - } - public static void glDrawPixels(int width, int height, int format, int type, ShortBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, 1)>>1); - nglDrawPixels(width, height, format, type, pixels, pixels.position() << 1); - } - public static void glDrawPixels(int width, int height, int format, int type, IntBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, 1)>>2); - nglDrawPixels(width, height, format, type, pixels, pixels.position() << 2); - } - private static native void nglDrawPixels(int width, int height, int format, int type, Buffer pixels, int pixels_offset); - - public static void glDrawPixels(int width, int height, int format, int type, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglDrawPixelsBO(width, height, format, type, buffer_offset); - } - private static native void nglDrawPixelsBO(int width, int height, int format, int type, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glDrawElements(int mode, ByteBuffer indices) { - BufferChecks.checkDirect(indices); - GLBufferChecks.ensureElementVBOdisabled(); - nglDrawElements(mode, indices.remaining(), GL_UNSIGNED_BYTE, indices, indices.position()); - } - public static void glDrawElements(int mode, ShortBuffer indices) { - BufferChecks.checkDirect(indices); - GLBufferChecks.ensureElementVBOdisabled(); - nglDrawElements(mode, indices.remaining(), GL_UNSIGNED_SHORT, indices, indices.position() << 1); - } - public static void glDrawElements(int mode, IntBuffer indices) { - BufferChecks.checkDirect(indices); - GLBufferChecks.ensureElementVBOdisabled(); - nglDrawElements(mode, indices.remaining(), GL_UNSIGNED_INT, indices, indices.position() << 2); - } - private static native void nglDrawElements(int mode, int count, int type, Buffer indices, int indices_offset); - - public static void glDrawElements(int mode, int count, int type, int buffer_offset) { - GLBufferChecks.ensureElementVBOenabled(); - nglDrawElementsVBO(mode, count, type, buffer_offset); - } - private static native void nglDrawElementsVBO(int mode, int count, int type, int buffer_offset); - // --------------------------- - - public static native void glDrawBuffer(int mode); - public static native void glDrawArrays(int mode, int first, int count); - public static native void glDepthRange(double zNear, double zFar); - public static native void glDepthMask(boolean flag); - public static native void glDepthFunc(int func); - - public static void glFeedbackBuffer(int type, FloatBuffer buffer) { - BufferChecks.checkDirect(buffer); - nglFeedbackBuffer(buffer.remaining(), type, buffer, buffer.position()); - } - private static native void nglFeedbackBuffer(int size, int type, FloatBuffer buffer, int buffer_offset); - - // --------------------------- - public static void glGetPixelMap(int map, FloatBuffer values) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(values, 256); - nglGetPixelMapfv(map, values, values.position()); - } - private static native void nglGetPixelMapfv(int map, FloatBuffer values, int values_offset); - - public static void glGetPixelMapfv(int map, int buffer_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglGetPixelMapfvBO(map, buffer_offset); - } - private static native void nglGetPixelMapfvBO(int map, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glGetPixelMap(int map, IntBuffer values) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(values, 256); - nglGetPixelMapuiv(map, values, values.position()); - } - private static native void nglGetPixelMapuiv(int map, IntBuffer values, int values_offset); - - public static void glGetPixelMapuiv(int map, int buffer_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglGetPixelMapuivBO(map, buffer_offset); - } - private static native void nglGetPixelMapuivBO(int map, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glGetPixelMap(int map, ShortBuffer values) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(values, 256); - nglGetPixelMapusv(map, values, values.position()); - } - private static native void nglGetPixelMapusv(int map, ShortBuffer values, int values_offset); - - public static void glGetPixelMapusv(int map, int buffer_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglGetPixelMapusvBO(map, buffer_offset); - } - private static native void nglGetPixelMapusvBO(int map, int buffer_offset); - // --------------------------- - - public static void glGetMaterial(int face, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetMaterialfv(face, pname, params, params.position()); - } - private static native void nglGetMaterialfv(int face, int pname, FloatBuffer params, int params_offset); - - public static void glGetMaterial(int face, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetMaterialiv(face, pname, params, params.position()); - } - private static native void nglGetMaterialiv(int face, int pname, IntBuffer params, int params_offset); - - public static void glGetMap(int target, int query, FloatBuffer v) { - BufferChecks.checkBuffer(v, 256); - nglGetMapfv(target, query, v, v.position()); - } - private static native void nglGetMapfv(int target, int query, FloatBuffer v, int v_offset); - - public static void glGetMap(int target, int query, IntBuffer v) { - BufferChecks.checkBuffer(v, 256); - nglGetMapiv(target, query, v, v.position()); - } - private static native void nglGetMapiv(int target, int query, IntBuffer v, int v_offset); - - public static void glGetLight(int light, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetLightfv(light, pname, params, params.position()); - } - private static native void nglGetLightfv(int light, int pname, FloatBuffer params, int params_offset); - - public static void glGetLight(int light, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetLightiv(light, pname, params, params.position()); - } - private static native void nglGetLightiv(int light, int pname, IntBuffer params, int params_offset); - - public static native int glGetError(); + public static native void glPopAttrib(); - public static void glGetClipPlane(int plane, DoubleBuffer equation) { - BufferChecks.checkBuffer(equation); - nglGetClipPlane(plane, equation, equation.position()); - } - private static native void nglGetClipPlane(int plane, DoubleBuffer equation, int equation_offset); - - public static void glGetBoolean(int pname, ByteBuffer params) { - BufferChecks.checkBuffer(params, 16); - nglGetBooleanv(pname, params, params.position()); - } - private static native void nglGetBooleanv(int pname, ByteBuffer params, int params_offset); - - public static void glGetDouble(int pname, DoubleBuffer params) { - BufferChecks.checkBuffer(params, 16); - nglGetDoublev(pname, params, params.position()); - } - private static native void nglGetDoublev(int pname, DoubleBuffer params, int params_offset); - - public static void glGetFloat(int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params, 16); - nglGetFloatv(pname, params, params.position()); - } - private static native void nglGetFloatv(int pname, FloatBuffer params, int params_offset); - - public static void glGetInteger(int pname, IntBuffer params) { - BufferChecks.checkBuffer(params, 16); - nglGetIntegerv(pname, params, params.position()); - } - private static native void nglGetIntegerv(int pname, IntBuffer params, int params_offset); - - public static void glGenTextures(IntBuffer textures) { - BufferChecks.checkDirect(textures); - nglGenTextures(textures.remaining(), textures, textures.position()); - } - private static native void nglGenTextures(int n, IntBuffer textures, int textures_offset); - - public static native int glGenLists(int range); - public static native void glFrustum(double left, double right, double bottom, double top, double zNear, double zFar); - public static native void glFrontFace(int mode); - public static native void glFogf(int pname, float param); - public static native void glFogi(int pname, int param); - - public static void glFog(int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglFogfv(pname, params, params.position()); - } - private static native void nglFogfv(int pname, FloatBuffer params, int params_offset); - - public static void glFog(int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglFogiv(pname, params, params.position()); - } - private static native void nglFogiv(int pname, IntBuffer params, int params_offset); - - public static native void glFlush(); - public static native void glFinish(); - /** - * Fetch a pointer from OpenGL. Will return a ByteBuffer representing the pointer, where - * the size argument specifies the buffer size in bytes. - * - * @param size The size of the memory area pointed to. This is the size of the returned ByteBuffer. - * @return The ByteBuffer of the specified size pointing to the returned address. - */ - public static native ByteBuffer glGetPointerv(int pname, int size); - public static native boolean glIsEnabled(int cap); - - // --------------------------- - public static void glInterleavedArrays(int format, int stride, ByteBuffer pointer) { - BufferChecks.checkDirect(pointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglInterleavedArrays(format, stride, pointer, pointer.position()); - } - public static void glInterleavedArrays(int format, int stride, ShortBuffer pointer) { - BufferChecks.checkDirect(pointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglInterleavedArrays(format, stride, pointer, pointer.position() << 1); - } - public static void glInterleavedArrays(int format, int stride, IntBuffer pointer) { - BufferChecks.checkDirect(pointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglInterleavedArrays(format, stride, pointer, pointer.position() << 2); - } - public static void glInterleavedArrays(int format, int stride, FloatBuffer pointer) { - BufferChecks.checkDirect(pointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglInterleavedArrays(format, stride, pointer, pointer.position() << 2); - } - private static native void nglInterleavedArrays(int format, int stride, Buffer pointer, int pointer_offset); - - public static void glInterleavedArrays(int format, int stride, int buffer_offset) { - GLBufferChecks.ensureArrayVBOenabled(); - nglInterleavedArraysVBO(format, stride, buffer_offset); - } - private static native void nglInterleavedArraysVBO(int format, int stride, int buffer_offset); - // --------------------------- - - public static native void glInitNames(); - public static native void glHint(int target, int mode); - - public static void glGetTexParameter(int target, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetTexParameterfv(target, pname, params, params.position()); - } - private static native void nglGetTexParameterfv(int target, int pname, FloatBuffer params, int params_offset); - - public static void glGetTexParameter(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetTexParameteriv(target, pname, params, params.position()); - } - private static native void nglGetTexParameteriv(int target, int pname, IntBuffer params, int params_offset); - - public static void glGetTexLevelParameter(int target, int level, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetTexLevelParameterfv(target, level, pname, params, params.position()); - } - private static native void nglGetTexLevelParameterfv(int target, int level, int pname, FloatBuffer params, int params_offset); - - public static void glGetTexLevelParameter(int target, int level, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetTexLevelParameteriv(target, level, pname, params, params.position()); - } - private static native void nglGetTexLevelParameteriv(int target, int level, int pname, IntBuffer params, int params_offset); - - // --------------------------- - public static void glGetTexImage(int target, int level, int format, int type, ByteBuffer pixels) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, 1, 1, 1)); - nglGetTexImage(target, level, format, type, pixels, pixels.position()); - } - public static void glGetTexImage(int target, int level, int format, int type, ShortBuffer pixels) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, 1, 1, 1)>>1); - nglGetTexImage(target, level, format, type, pixels, pixels.position() << 1); - } - public static void glGetTexImage(int target, int level, int format, int type, IntBuffer pixels) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, 1, 1, 1)>>2); - nglGetTexImage(target, level, format, type, pixels, pixels.position() << 2); - } - private static native void nglGetTexImage(int target, int level, int format, int type, Buffer pixels, int pixels_offset); - - public static void glGetTexImage(int target, int level, int format, int type, int buffer_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglGetTexImageBO(target, level, format, type, buffer_offset); - } - private static native void nglGetTexImageBO(int target, int level, int format, int type, int buffer_offset); - // --------------------------- - - public static void glGetTexGen(int coord, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetTexGeniv(coord, pname, params, params.position()); - } - private static native void nglGetTexGeniv(int coord, int pname, IntBuffer params, int params_offset); - - public static void glGetTexGen(int coord, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetTexGenfv(coord, pname, params, params.position()); - } - private static native void nglGetTexGenfv(int coord, int pname, FloatBuffer params, int params_offset); - - public static void glGetTexEnv(int coord, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetTexEnviv(coord, pname, params, params.position()); - } - private static native void nglGetTexEnviv(int coord, int pname, IntBuffer params, int params_offset); - - public static void glGetTexEnv(int coord, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetTexEnvfv(coord, pname, params, params.position()); - } - private static native void nglGetTexEnvfv(int coord, int pname, FloatBuffer params, int params_offset); - - public static native String glGetString(int name); - - // --------------------------- - public static void glGetPolygonStipple(ByteBuffer mask) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(mask, 1024); - nglGetPolygonStipple(mask, mask.position()); - } - private static native void nglGetPolygonStipple(ByteBuffer mask, int mask_offset); - - public static void glGetPolygonStipple(int buffer_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglGetPolygonStippleBO(buffer_offset); - } - private static native void nglGetPolygonStippleBO(int buffer_offset); - // --------------------------- - - public static native boolean glIsList(int list); - public static native void glMaterialf(int face, int pname, float param); - public static native void glMateriali(int face, int pname, int param); - - public static void glMaterial(int face, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglMaterialfv(face, pname, params, params.position()); - } - private static native void nglMaterialfv(int face, int pname, FloatBuffer params, int params_offset); - - public static void glMaterial(int face, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglMaterialiv(face, pname, params, params.position()); - } - private static native void nglMaterialiv(int face, int pname, IntBuffer params, int params_offset); - - public static native void glMapGrid1f(int un, float u1, float u2); - public static native void glMapGrid2f(int un, float u1, float u2, int vn, float v1, float v2); - - public static void glMap2f(int target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, FloatBuffer points) { - BufferChecks.checkDirect(points); - // TODO: check buffer size valid - nglMap2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points, points.position()); - } - private static native void nglMap2f(int target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, FloatBuffer points, int points_offset); - - public static void glMap1f(int target, float u1, float u2, int stride, int order, FloatBuffer points) { - BufferChecks.checkDirect(points); - // TODO: check buffer size valid - nglMap1f(target, u1, u2, stride, order, points, points.position()); - } - private static native void nglMap1f(int target, float u1, float u2, int stride, int order, FloatBuffer points, int points_offset); - - public static native void glLogicOp(int opcode); - public static native void glLoadName(int name); - - public static void glLoadMatrix(FloatBuffer m) { - BufferChecks.checkBuffer(m, 16); - nglLoadMatrixf(m, m.position()); - } - private static native void nglLoadMatrixf(FloatBuffer m, int m_offset); - - public static native void glLoadIdentity(); - public static native void glListBase(int base); - public static native void glLineWidth(float width); - public static native void glLineStipple(int factor, short pattern); - public static native void glLightModelf(int pname, float param); - public static native void glLightModeli(int pname, int param); - - public static void glLightModel(int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglLightModelfv( pname, params, params.position()); - } - private static native void nglLightModelfv(int pname, FloatBuffer params, int params_offset); - - public static void glLightModel(int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglLightModeliv(pname, params, params.position()); - } - private static native void nglLightModeliv(int pname, IntBuffer params, int params_offset); - - public static native void glLightf(int light, int pname, float param); - public static native void glLighti(int light, int pname, int param); - - public static void glLight(int light, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglLightfv(light, pname, params, params.position()); - } - private static native void nglLightfv(int light, int pname, FloatBuffer params, int params_offset); - - public static void glLight(int light, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglLightiv(light, pname, params, params.position()); - } - private static native void nglLightiv(int light, int pname, IntBuffer params, int params_offset); - - public static native boolean glIsTexture(int texture); - public static native void glMatrixMode(int mode); - - // --------------------------- - public static void glPolygonStipple(ByteBuffer mask) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(mask, 1024); - nglPolygonStipple(mask, mask.position()); - } - private static native void nglPolygonStipple(ByteBuffer mask, int mask_offset); - - public static void glPolygonStipple(int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglPolygonStippleBO(buffer_offset); - } - private static native void nglPolygonStippleBO(int buffer_offset); - // --------------------------- - - public static native void glPolygonOffset(float factor, float units); - public static native void glPolygonMode(int face, int mode); - public static native void glPointSize(float size); - public static native void glPixelZoom(float xfactor, float yfactor); - public static native void glPixelTransferf(int pname, float param); - public static native void glPixelTransferi(int pname, int param); - public static native void glPixelStoref(int pname, float param); - public static native void glPixelStorei(int pname, int param); - - // --------------------------- - public static void glPixelMap(int map, FloatBuffer values) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(values); - nglPixelMapfv(map, values.remaining(), values, values.position()); - } - private static native void nglPixelMapfv(int map, int mapsize, FloatBuffer values, int values_offset); - - public static void glPixelMapfv(int map, int mapsize, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglPixelMapfvBO(map, mapsize, buffer_offset); - } - private static native void nglPixelMapfvBO(int map, int mapsize, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glPixelMap(int map, IntBuffer values) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(values); - nglPixelMapuiv(map, values.remaining(), values, values.position()); - } - private static native void nglPixelMapuiv(int map, int mapsize, IntBuffer values, int values_offset); - - public static void glPixelMapuiv(int map, int mapsize, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglPixelMapuivBO(map, mapsize, buffer_offset); - } - private static native void nglPixelMapuivBO(int map, int mapsize, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glPixelMap(int map, ShortBuffer values) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(values); - nglPixelMapusv(map, values.remaining(), values, values.position()); - } - private static native void nglPixelMapusv(int map, int mapsize, ShortBuffer values, int values_offset); - - public static void glPixelMapusv(int map, int mapsize, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglPixelMapusvBO(map, mapsize, buffer_offset); - } - private static native void nglPixelMapusvBO(int map, int mapsize, int buffer_offset); - // --------------------------- - - public static native void glPassThrough(float token); - public static native void glOrtho(double left, double right, double bottom, double top, double zNear, double zFar); - - // --------------------------- - public static void glNormalPointer(int stride, ByteBuffer pointer) { - BufferChecks.checkDirect(pointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglNormalPointer(GL_BYTE, stride, pointer, pointer.position()); - } - public static void glNormalPointer(int stride, IntBuffer pointer) { - BufferChecks.checkDirect(pointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglNormalPointer(GL_INT, stride, pointer, pointer.position() << 2); - } - public static void glNormalPointer(int stride, FloatBuffer pointer) { - BufferChecks.checkDirect(pointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglNormalPointer(GL_FLOAT, stride, pointer, pointer.position() << 2); - } - private static native void nglNormalPointer(int type, int stride, Buffer pointer, int pointer_offset); - - public static void glNormalPointer(int type, int stride, int buffer_offset) { - GLBufferChecks.ensureArrayVBOenabled(); - nglNormalPointerVBO(type, stride, buffer_offset); - } - private static native void nglNormalPointerVBO(int type, int stride, int buffer_offset); - // --------------------------- - - public static native void glNormal3b(byte nx, byte ny, byte nz); - public static native void glNormal3f(float nx, float ny, float nz); - public static native void glNormal3i(int nx, int ny, int nz); - public static native void glNewList(int list, int mode); - public static native void glEndList(); - - public static void glMultMatrix(FloatBuffer m) { - BufferChecks.checkBuffer(m, 16); - nglMultMatrixf(m, m.position()); - } - private static native void nglMultMatrixf(FloatBuffer m, int m_offset); - - public static native void glShadeModel(int mode); - - public static void glSelectBuffer(IntBuffer buffer) { - BufferChecks.checkDirect(buffer); - nglSelectBuffer(buffer.remaining(), buffer, buffer.position()); - } - private static native void nglSelectBuffer(int size, IntBuffer buffer, int buffer_offset); - - public static native void glScissor(int x, int y, int width, int height); - public static native void glScalef(float x, float y, float z); - public static native void glRotatef(float angle, float x, float y, float z); - public static native int glRenderMode(int mode); - public static native void glRectf(float x1, float y1, float x2, float y2); - public static native void glRecti(int x1, int y1, int x2, int y2); - - // --------------------------- - public static void glReadPixels(int x, int y, int width, int height, int format, int type, ByteBuffer pixels) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, 1)); - nglReadPixels(x, y, width, height, format, type, pixels, pixels.position()); - } - public static void glReadPixels(int x, int y, int width, int height, int format, int type, ShortBuffer pixels) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, 1)>>1); - nglReadPixels(x, y, width, height, format, type, pixels, pixels.position() << 1); - } - public static void glReadPixels(int x, int y, int width, int height, int format, int type, IntBuffer pixels) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, 1)>>2); - nglReadPixels(x, y, width, height, format, type, pixels, pixels.position() << 2); - } - private static native void nglReadPixels(int x, int y, int width, int height, int format, int type, Buffer pixels, int pixels_offset); - - public static void glReadPixels(int x, int y, int width, int height, int format, int type, int buffer_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglReadPixelsBO(x, y, width, height, format, type, buffer_offset); - } - private static native void nglReadPixelsBO(int x, int y, int width, int height, int format, int type, int buffer_offset); - // --------------------------- - - public static native void glReadBuffer(int mode); - public static native void glRasterPos2f(float x, float y); - public static native void glRasterPos2i(int x, int y); - public static native void glRasterPos3f(float x, float y, float z); - public static native void glRasterPos3i(int x, int y, int z); - public static native void glRasterPos4f(float x, float y, float z, float w); - public static native void glRasterPos4i(int x, int y, int z, int w); - public static native void glPushName(int name); - public static native void glPopName(); - public static native void glPushMatrix(); - public static native void glPopMatrix(); - - public static void glPushClientAttrib(int mask) { - BufferObjectTracker.pushAttrib(mask); - nglPushClientAttrib(mask); - } - private static native void nglPushClientAttrib(int mask); + public static native void glPushAttrib(int mask); public static void glPopClientAttrib() { BufferObjectTracker.popAttrib(); @@ -1437,230 +778,733 @@ public final class GL11 { } private static native void nglPopClientAttrib(); - public static native void glPushAttrib(int mask); - public static native void glPopAttrib(); - public static native void glStencilFunc(int func, int ref, int mask); - - // --------------------------- - public static void glVertexPointer(int size, int stride, FloatBuffer pointer) { - BufferChecks.checkDirect(pointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexPointer(size, GL_FLOAT, stride, pointer, pointer.position() << 2); + public static void glPushClientAttrib(int mask) { + BufferObjectTracker.pushAttrib(mask); + nglPushClientAttrib(mask); } - public static void glVertexPointer(int size, int stride, IntBuffer pointer) { - BufferChecks.checkDirect(pointer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexPointer(size, GL_INT, stride, pointer, pointer.position() << 2); - } - private static native void nglVertexPointer(int size, int type, int stride, Buffer pointer, int pointer_offset); + private static native void nglPushClientAttrib(int mask); - public static void glVertexPointer(int size, int type, int stride, int buffer_offset) { + public static native void glPopMatrix(); + + public static native void glPushMatrix(); + + public static native void glPopName(); + + public static native void glPushName(int name); + + public static native void glRasterPos4i(int x, int y, int z, int w); + + public static native void glRasterPos4f(float x, float y, float z, float w); + + public static native void glRasterPos3i(int x, int y, int z); + + public static native void glRasterPos3f(float x, float y, float z); + + public static native void glRasterPos2i(int x, int y); + + public static native void glRasterPos2f(float x, float y); + + public static native void glReadBuffer(int mode); + + public static void glReadPixels(int x, int y, int width, int height, int format, int type, ShortBuffer pixels) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)); + nglReadPixels(x, y, width, height, format, type, pixels, pixels.position() << 1); + } + public static void glReadPixels(int x, int y, int width, int height, int format, int type, IntBuffer pixels) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)); + nglReadPixels(x, y, width, height, format, type, pixels, pixels.position() << 2); + } + public static void glReadPixels(int x, int y, int width, int height, int format, int type, ByteBuffer pixels) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)); + nglReadPixels(x, y, width, height, format, type, pixels, pixels.position()); + } + private static native void nglReadPixels(int x, int y, int width, int height, int format, int type, Buffer pixels, int pixels_position); + public static void glReadPixels(int x, int y, int width, int height, int format, int type, int pixels_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglReadPixelsBO(x, y, width, height, format, type, pixels_buffer_offset); + } + private static native void nglReadPixelsBO(int x, int y, int width, int height, int format, int type, int pixels_buffer_offset); + + public static native void glRecti(int x1, int y1, int x2, int y2); + + public static native void glRectf(float x1, float y1, float x2, float y2); + + public static native int glRenderMode(int mode); + + public static native void glRotatef(float angle, float x, float y, float z); + + public static native void glScalef(float x, float y, float z); + + public static native void glScissor(int x, int y, int width, int height); + + public static void glSelectBuffer(IntBuffer buffer) { + BufferChecks.checkDirect(buffer); + nglSelectBuffer((buffer.remaining()), buffer, buffer.position()); + } + private static native void nglSelectBuffer(int size, IntBuffer buffer, int buffer_position); + + public static native void glShadeModel(int mode); + + public static void glMultMatrix(FloatBuffer m) { + BufferChecks.checkBuffer(m, 16); + nglMultMatrixf(m, m.position()); + } + private static native void nglMultMatrixf(FloatBuffer m, int m_position); + + public static native void glEndList(); + + public static native void glNewList(int list, int mode); + + public static native void glNormal3i(int nx, int ny, int nz); + + public static native void glNormal3f(float nx, float ny, float nz); + + public static native void glNormal3b(byte nx, byte ny, byte nz); + + public static void glNormalPointer(int stride, IntBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglNormalPointer(GL11.GL_INT, stride, pointer, pointer.position() << 2); + } + public static void glNormalPointer(int stride, FloatBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglNormalPointer(GL11.GL_FLOAT, stride, pointer, pointer.position() << 2); + } + public static void glNormalPointer(int stride, ByteBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglNormalPointer(GL11.GL_BYTE, stride, pointer, pointer.position()); + } + private static native void nglNormalPointer(int type, int stride, Buffer pointer, int pointer_position); + public static void glNormalPointer(int type, int stride, int pointer_buffer_offset) { GLBufferChecks.ensureArrayVBOenabled(); - nglVertexPointerVBO(size, type, stride, buffer_offset); + nglNormalPointerBO(type, stride, pointer_buffer_offset); } - private static native void nglVertexPointerVBO(int size, int type, int stride, int buffer_offset); - // --------------------------- + private static native void nglNormalPointerBO(int type, int stride, int pointer_buffer_offset); - public static native void glVertex2f(float x, float y); - public static native void glVertex2i(int x, int y); - public static native void glVertex3f(float x, float y, float z); - public static native void glVertex3i(int x, int y, int z); - public static native void glVertex4f(float x, float y, float z, float w); - public static native void glVertex4i(int x, int y, int z, int w); - public static native void glTranslatef(float x, float y, float z); + public static native void glOrtho(double left, double right, double bottom, double top, double zNear, double zFar); - // --------------------------- - public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, ByteBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage1DStorage(format, type, width, border)); - nglTexImage1D(target, level, internalformat, width, border, format, type, pixels, pixels != null ? pixels.position() : 0); - } - public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, ShortBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage1DStorage(format, type, width, border) >> 1); - nglTexImage1D(target, level, internalformat, width, border, format, type, pixels, pixels != null ? pixels.position() << 1 : 0); - } - public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, IntBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage1DStorage(format, type, width, border) >> 2); - nglTexImage1D(target, level, internalformat, width, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); - } - public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, FloatBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage1DStorage(format, type, width, border) >> 2); - nglTexImage1D(target, level, internalformat, width, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); - } - private static native void nglTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, Buffer pixels, int pixels_offset); + public static native void glPassThrough(float token); - public static void glTexImage1D(int target, int level, int internalformat, int width, int border, int format, int type, int buffer_offset) { + public static void glPixelMapu(int map, ShortBuffer values) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(values); + nglPixelMapusv(map, (values.remaining()), values, values.position()); + } + private static native void nglPixelMapusv(int map, int mapsize, ShortBuffer values, int values_position); + public static void glPixelMapusv(int map, int mapsize, int values_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglTexImage1DBO(target, level, internalformat, width, border, format, type, buffer_offset); + nglPixelMapusvBO(map, mapsize, values_buffer_offset); } - private static native void nglTexImage1DBO(int target, int level, int internalformat, int width, int border, int format, int type, int buffer_offset); - // --------------------------- + private static native void nglPixelMapusvBO(int map, int mapsize, int values_buffer_offset); - // --------------------------- - public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, ByteBuffer pixels) { + public static void glPixelMapu(int map, IntBuffer values) { GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage2DStorage(format, type, width, height, border)); - nglTexImage2D(target, level, internalformat, width, height, border, format, type, pixels, pixels != null ? pixels.position() : 0); + BufferChecks.checkDirect(values); + nglPixelMapuiv(map, (values.remaining()), values, values.position()); } - public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, ShortBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage2DStorage(format, type, width, height, border) >> 1); - nglTexImage2D(target, level, internalformat, width, height, border, format, type, pixels, pixels != null ? pixels.position() << 1 : 0); - } - public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, IntBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage2DStorage(format, type, width, height, border) >> 2); - nglTexImage2D(target, level, internalformat, width, height, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); - } - public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, FloatBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage2DStorage(format, type, width, height, border) >> 2); - nglTexImage2D(target, level, internalformat, width, height, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); - } - private static native void nglTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, Buffer pixels, int pixels_offset); - - public static void glTexImage2D(int target, int level, int internalformat, int width, int height, int border, int format, int type, int buffer_offset) { + private static native void nglPixelMapuiv(int map, int mapsize, IntBuffer values, int values_position); + public static void glPixelMapuiv(int map, int mapsize, int values_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglTexImage2DBO(target, level, internalformat, width, height, border, format, type, buffer_offset); + nglPixelMapuivBO(map, mapsize, values_buffer_offset); } - private static native void nglTexImage2DBO(int target, int level, int internalformat, int width, int height, int border, int format, int type, int buffer_offset); - // --------------------------- + private static native void nglPixelMapuivBO(int map, int mapsize, int values_buffer_offset); - // --------------------------- - public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, ByteBuffer pixels) { + public static void glPixelMap(int map, FloatBuffer values) { GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1)); - nglTexSubImage1D(target, level, xoffset, width, format, type, pixels, pixels.position()); + BufferChecks.checkDirect(values); + nglPixelMapfv(map, (values.remaining()), values, values.position()); } - public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, ShortBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1) >> 1); - nglTexSubImage1D(target, level, xoffset, width, format, type, pixels, pixels.position() << 1); - } - public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, IntBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1) >> 2); - nglTexSubImage1D(target, level, xoffset, width, format, type, pixels, pixels.position() << 2); - } - public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, FloatBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, 1, 1) >> 2); - nglTexSubImage1D(target, level, xoffset, width, format, type, pixels, pixels.position() << 2); - } - private static native void nglTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, Buffer pixels, int pixels_offset); - - public static void glTexSubImage1D(int target, int level, int xoffset, int width, int format, int type, int buffer_offset) { + private static native void nglPixelMapfv(int map, int mapsize, FloatBuffer values, int values_position); + public static void glPixelMapfv(int map, int mapsize, int values_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglTexSubImage1DBO(target, level, xoffset, width, format, type, buffer_offset); + nglPixelMapfvBO(map, mapsize, values_buffer_offset); } - private static native void nglTexSubImage1DBO(int target, int level, int xoffset, int width, int format, int type, int buffer_offset); - // --------------------------- + private static native void nglPixelMapfvBO(int map, int mapsize, int values_buffer_offset); - // --------------------------- - public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, ByteBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, 1)); - nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels, pixels.position()); - } - public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, ShortBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, 1)>>1); - nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels, pixels.position() << 1); - } - public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, IntBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, 1)>>2); - nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels, pixels.position() << 2); - } - public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, FloatBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, 1) >> 2); - nglTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels, pixels.position() << 2); - } - private static native void nglTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, Buffer pixels, int pixels_offset); + public static native void glPixelStorei(int pname, int param); - public static void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, int buffer_offset) { + public static native void glPixelStoref(int pname, float param); + + public static native void glPixelTransferi(int pname, int param); + + public static native void glPixelTransferf(int pname, float param); + + public static native void glPixelZoom(float xfactor, float yfactor); + + public static native void glPointSize(float size); + + public static native void glPolygonMode(int face, int mode); + + public static native void glPolygonOffset(float factor, float units); + + public static void glPolygonStipple(ByteBuffer mask) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(mask, 1024); + nglPolygonStipple(mask, mask.position()); + } + private static native void nglPolygonStipple(ByteBuffer mask, int mask_position); + public static void glPolygonStipple(int mask_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglTexSubImage2DBO(target, level, xoffset, yoffset, width, height, format, type, buffer_offset); + nglPolygonStippleBO(mask_buffer_offset); } - private static native void nglTexSubImage2DBO(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, int buffer_offset); - // --------------------------- + private static native void nglPolygonStippleBO(int mask_buffer_offset); - public static native void glTexParameterf(int target, int pname, float param); - public static native void glTexParameteri(int target, int pname, int param); + public static native void glMatrixMode(int mode); - public static void glTexParameter(int target, int pname, FloatBuffer param) { - BufferChecks.checkBuffer(param); - nglTexParameterfv(target, pname, param, param.position()); + public static native boolean glIsTexture(int texture); + + public static void glLight(int light, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglLightiv(light, pname, params, params.position()); } - private static native void nglTexParameterfv(int target, int pname, FloatBuffer param, int param_position); + private static native void nglLightiv(int light, int pname, IntBuffer params, int params_position); - public static void glTexParameter(int target, int pname, IntBuffer param) { - BufferChecks.checkBuffer(param); - nglTexParameteriv(target, pname, param, param.position()); + public static void glLight(int light, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglLightfv(light, pname, params, params.position()); } - private static native void nglTexParameteriv(int target, int pname, IntBuffer param, int param_position); + private static native void nglLightfv(int light, int pname, FloatBuffer params, int params_position); - public static native void glTexGenf(int coord, int pname, float param); + public static native void glLighti(int light, int pname, int param); - public static void glTexGen(int coord, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglTexGenfv(coord, pname, params, params.position()); + public static native void glLightf(int light, int pname, float param); + + public static void glLightModel(int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglLightModeliv(pname, params, params.position()); } - private static native void nglTexGenfv(int coord, int pname, FloatBuffer params, int params_offset); + private static native void nglLightModeliv(int pname, IntBuffer params, int params_position); - public static native void glTexGeni(int coord, int pname, int param); - - public static void glTexGen(int coord, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglTexGeniv(coord, pname, params, params.position()); + public static void glLightModel(int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglLightModelfv(pname, params, params.position()); } - private static native void nglTexGeniv(int coord, int pname, IntBuffer params, int params_offset); + private static native void nglLightModelfv(int pname, FloatBuffer params, int params_position); - public static native void glTexEnvf(int target, int pname, float param); - public static native void glTexEnvi(int target, int pname, int param); + public static native void glLightModeli(int pname, int param); - public static void glTexEnv(int target, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglTexEnvfv(target, pname, params, params.position()); + public static native void glLightModelf(int pname, float param); + + public static native void glLineStipple(int factor, short pattern); + + public static native void glLineWidth(float width); + + public static native void glListBase(int base); + + public static native void glLoadIdentity(); + + public static void glLoadMatrix(FloatBuffer m) { + BufferChecks.checkBuffer(m, 16); + nglLoadMatrixf(m, m.position()); } - private static native void nglTexEnvfv(int target, int pname, FloatBuffer params, int params_offset); + private static native void nglLoadMatrixf(FloatBuffer m, int m_position); - public static void glTexEnv(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglTexEnviv(target, pname, params, params.position()); + public static native void glLoadName(int name); + + public static native void glLogicOp(int opcode); + + public static void glMap1f(int target, float u1, float u2, int stride, int order, FloatBuffer points) { + BufferChecks.checkDirect(points); + nglMap1f(target, u1, u2, stride, order, points, points.position()); } - private static native void nglTexEnviv(int target, int pname, IntBuffer params, int params_offset); + private static native void nglMap1f(int target, float u1, float u2, int stride, int order, FloatBuffer points, int points_position); - public static void glTexCoordPointer(int size, int stride, FloatBuffer pointer) { - BufferChecks.checkDirect(pointer); + public static void glMap2f(int target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, FloatBuffer points) { + BufferChecks.checkDirect(points); + nglMap2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points, points.position()); + } + private static native void nglMap2f(int target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, FloatBuffer points, int points_position); + + public static native void glMapGrid2f(int un, float u1, float u2, int vn, float v1, float v2); + + public static native void glMapGrid1f(int un, float u1, float u2); + + public static void glMaterial(int face, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglMaterialiv(face, pname, params, params.position()); + } + private static native void nglMaterialiv(int face, int pname, IntBuffer params, int params_position); + + public static void glMaterial(int face, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglMaterialfv(face, pname, params, params.position()); + } + private static native void nglMaterialfv(int face, int pname, FloatBuffer params, int params_position); + + public static native void glMateriali(int face, int pname, int param); + + public static native void glMaterialf(int face, int pname, float param); + + public static native boolean glIsList(int list); + + public static void glGetPolygonStipple(ByteBuffer mask) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(mask, 1024); + nglGetPolygonStipple(mask, mask.position()); + } + private static native void nglGetPolygonStipple(ByteBuffer mask, int mask_position); + public static void glGetPolygonStipple(int mask_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetPolygonStippleBO(mask_buffer_offset); + } + private static native void nglGetPolygonStippleBO(int mask_buffer_offset); + + public static native java.lang.String glGetString(int name); + + public static void glGetTexEnv(int coord, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetTexEnvfv(coord, pname, params, params.position()); + } + private static native void nglGetTexEnvfv(int coord, int pname, FloatBuffer params, int params_position); + + public static void glGetTexEnv(int coord, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetTexEnviv(coord, pname, params, params.position()); + } + private static native void nglGetTexEnviv(int coord, int pname, IntBuffer params, int params_position); + + public static void glGetTexGen(int coord, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetTexGenfv(coord, pname, params, params.position()); + } + private static native void nglGetTexGenfv(int coord, int pname, FloatBuffer params, int params_position); + + public static void glGetTexGen(int coord, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetTexGeniv(coord, pname, params, params.position()); + } + private static native void nglGetTexGeniv(int coord, int pname, IntBuffer params, int params_position); + + public static void glGetTexImage(int target, int level, int format, int type, ShortBuffer pixels) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, 1, 1, 1)); + nglGetTexImage(target, level, format, type, pixels, pixels.position() << 1); + } + public static void glGetTexImage(int target, int level, int format, int type, IntBuffer pixels) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, 1, 1, 1)); + nglGetTexImage(target, level, format, type, pixels, pixels.position() << 2); + } + public static void glGetTexImage(int target, int level, int format, int type, ByteBuffer pixels) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, 1, 1, 1)); + nglGetTexImage(target, level, format, type, pixels, pixels.position()); + } + private static native void nglGetTexImage(int target, int level, int format, int type, Buffer pixels, int pixels_position); + public static void glGetTexImage(int target, int level, int format, int type, int pixels_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetTexImageBO(target, level, format, type, pixels_buffer_offset); + } + private static native void nglGetTexImageBO(int target, int level, int format, int type, int pixels_buffer_offset); + + public static void glGetTexLevelParameter(int target, int level, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetTexLevelParameteriv(target, level, pname, params, params.position()); + } + private static native void nglGetTexLevelParameteriv(int target, int level, int pname, IntBuffer params, int params_position); + + public static void glGetTexLevelParameter(int target, int level, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetTexLevelParameterfv(target, level, pname, params, params.position()); + } + private static native void nglGetTexLevelParameterfv(int target, int level, int pname, FloatBuffer params, int params_position); + + public static void glGetTexParameter(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetTexParameteriv(target, pname, params, params.position()); + } + private static native void nglGetTexParameteriv(int target, int pname, IntBuffer params, int params_position); + + public static void glGetTexParameter(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetTexParameterfv(target, pname, params, params.position()); + } + private static native void nglGetTexParameterfv(int target, int pname, FloatBuffer params, int params_position); + + public static native void glHint(int target, int mode); + + public static native void glInitNames(); + + public static void glInterleavedArrays(int format, int stride, ShortBuffer pointer) { GLBufferChecks.ensureArrayVBOdisabled(); - nglTexCoordPointer(size, GL_FLOAT, stride, pointer, pointer.position() << 2); + BufferChecks.checkDirect(pointer); + nglInterleavedArrays(format, stride, pointer, pointer.position() << 1); } - private static native void nglTexCoordPointer(int size, int type, int stride, Buffer pointer, int pointer_offset); - - public static void glTexCoordPointer(int size, int type, int stride, int buffer_offset) { + public static void glInterleavedArrays(int format, int stride, IntBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglInterleavedArrays(format, stride, pointer, pointer.position() << 2); + } + public static void glInterleavedArrays(int format, int stride, FloatBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglInterleavedArrays(format, stride, pointer, pointer.position() << 2); + } + public static void glInterleavedArrays(int format, int stride, ByteBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglInterleavedArrays(format, stride, pointer, pointer.position()); + } + private static native void nglInterleavedArrays(int format, int stride, Buffer pointer, int pointer_position); + public static void glInterleavedArrays(int format, int stride, int pointer_buffer_offset) { GLBufferChecks.ensureArrayVBOenabled(); - nglTexCoordPointerVBO(size, type, stride, buffer_offset); + nglInterleavedArraysBO(format, stride, pointer_buffer_offset); } - private static native void nglTexCoordPointerVBO(int size, int type, int stride, int buffer_offset); + private static native void nglInterleavedArraysBO(int format, int stride, int pointer_buffer_offset); - public static native void glTexCoord1f(float s); - public static native void glTexCoord2f(float s, float t); - public static native void glTexCoord3f(float s, float t, float r); - public static native void glTexCoord4f(float s, float t, float r, float q); - public static native void glStencilOp(int fail, int zfail, int zpass); - public static native void glStencilMask(int mask); - public static native void glViewport(int x, int y, int width, int height); + public static native boolean glIsEnabled(int cap); + + public static java.nio.ByteBuffer glGetPointer(int pname, int result_size) { + java.nio.ByteBuffer __result = nglGetPointerv(pname, result_size); + return __result; + } + private static native java.nio.ByteBuffer nglGetPointerv(int pname, int result_size); + + public static native void glFinish(); + + public static native void glFlush(); + + public static void glFog(int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglFogiv(pname, params, params.position()); + } + private static native void nglFogiv(int pname, IntBuffer params, int params_position); + + public static void glFog(int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglFogfv(pname, params, params.position()); + } + private static native void nglFogfv(int pname, FloatBuffer params, int params_position); + + public static native void glFogi(int pname, int param); + + public static native void glFogf(int pname, float param); + + public static native void glFrontFace(int mode); + + public static native void glFrustum(double left, double right, double bottom, double top, double zNear, double zFar); + + public static native int glGenLists(int range); + + public static void glGenTextures(IntBuffer textures) { + BufferChecks.checkDirect(textures); + nglGenTextures((textures.remaining()), textures, textures.position()); + } + private static native void nglGenTextures(int n, IntBuffer textures, int textures_position); + + public static void glGetInteger(int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 16); + nglGetIntegerv(pname, params, params.position()); + } + private static native void nglGetIntegerv(int pname, IntBuffer params, int params_position); + + public static void glGetFloat(int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 16); + nglGetFloatv(pname, params, params.position()); + } + private static native void nglGetFloatv(int pname, FloatBuffer params, int params_position); + + public static void glGetDouble(int pname, DoubleBuffer params) { + BufferChecks.checkBuffer(params, 16); + nglGetDoublev(pname, params, params.position()); + } + private static native void nglGetDoublev(int pname, DoubleBuffer params, int params_position); + + public static void glGetBoolean(int pname, ByteBuffer params) { + BufferChecks.checkBuffer(params, 16); + nglGetBooleanv(pname, params, params.position()); + } + private static native void nglGetBooleanv(int pname, ByteBuffer params, int params_position); + + public static void glGetClipPlane(int plane, DoubleBuffer equation) { + BufferChecks.checkBuffer(equation, 4); + nglGetClipPlane(plane, equation, equation.position()); + } + private static native void nglGetClipPlane(int plane, DoubleBuffer equation, int equation_position); + + public static native int glGetError(); + + public static void glGetLight(int light, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetLightiv(light, pname, params, params.position()); + } + private static native void nglGetLightiv(int light, int pname, IntBuffer params, int params_position); + + public static void glGetLight(int light, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetLightfv(light, pname, params, params.position()); + } + private static native void nglGetLightfv(int light, int pname, FloatBuffer params, int params_position); + + public static void glGetMap(int target, int query, IntBuffer v) { + BufferChecks.checkBuffer(v, 256); + nglGetMapiv(target, query, v, v.position()); + } + private static native void nglGetMapiv(int target, int query, IntBuffer v, int v_position); + + public static void glGetMap(int target, int query, FloatBuffer v) { + BufferChecks.checkBuffer(v, 256); + nglGetMapfv(target, query, v, v.position()); + } + private static native void nglGetMapfv(int target, int query, FloatBuffer v, int v_position); + + public static void glGetMaterial(int face, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetMaterialiv(face, pname, params, params.position()); + } + private static native void nglGetMaterialiv(int face, int pname, IntBuffer params, int params_position); + + public static void glGetMaterial(int face, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetMaterialfv(face, pname, params, params.position()); + } + private static native void nglGetMaterialfv(int face, int pname, FloatBuffer params, int params_position); + + public static void glGetPixelMapu(int map, ShortBuffer values) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(values, 256); + nglGetPixelMapusv(map, values, values.position()); + } + private static native void nglGetPixelMapusv(int map, ShortBuffer values, int values_position); + public static void glGetPixelMapusv(int map, int values_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetPixelMapusvBO(map, values_buffer_offset); + } + private static native void nglGetPixelMapusvBO(int map, int values_buffer_offset); + + public static void glGetPixelMapu(int map, IntBuffer values) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(values, 256); + nglGetPixelMapuiv(map, values, values.position()); + } + private static native void nglGetPixelMapuiv(int map, IntBuffer values, int values_position); + public static void glGetPixelMapuiv(int map, int values_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetPixelMapuivBO(map, values_buffer_offset); + } + private static native void nglGetPixelMapuivBO(int map, int values_buffer_offset); + + public static void glGetPixelMap(int map, FloatBuffer values) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkBuffer(values, 256); + nglGetPixelMapfv(map, values, values.position()); + } + private static native void nglGetPixelMapfv(int map, FloatBuffer values, int values_position); + public static void glGetPixelMapfv(int map, int values_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetPixelMapfvBO(map, values_buffer_offset); + } + private static native void nglGetPixelMapfvBO(int map, int values_buffer_offset); + + public static void glFeedbackBuffer(int type, FloatBuffer buffer) { + BufferChecks.checkDirect(buffer); + nglFeedbackBuffer((buffer.remaining()), type, buffer, buffer.position()); + } + private static native void nglFeedbackBuffer(int size, int type, FloatBuffer buffer, int buffer_position); + + public static native void glDepthFunc(int func); + + public static native void glDepthMask(boolean flag); + + public static native void glDepthRange(double zNear, double zFar); + + public static native void glDrawArrays(int mode, int first, int count); + + public static native void glDrawBuffer(int mode); + + public static void glDrawElements(int mode, IntBuffer indices) { + GLBufferChecks.ensureElementVBOdisabled(); + BufferChecks.checkDirect(indices); + nglDrawElements(mode, (indices.remaining()), GL11.GL_UNSIGNED_INT, indices, indices.position() << 2); + } + public static void glDrawElements(int mode, ShortBuffer indices) { + GLBufferChecks.ensureElementVBOdisabled(); + BufferChecks.checkDirect(indices); + nglDrawElements(mode, (indices.remaining()), GL11.GL_UNSIGNED_SHORT, indices, indices.position() << 1); + } + public static void glDrawElements(int mode, ByteBuffer indices) { + GLBufferChecks.ensureElementVBOdisabled(); + BufferChecks.checkDirect(indices); + nglDrawElements(mode, (indices.remaining()), GL11.GL_UNSIGNED_BYTE, indices, indices.position()); + } + private static native void nglDrawElements(int mode, int count, int type, Buffer indices, int indices_position); + public static void glDrawElements(int mode, int count, int type, int indices_buffer_offset) { + GLBufferChecks.ensureElementVBOenabled(); + nglDrawElementsBO(mode, count, type, indices_buffer_offset); + } + private static native void nglDrawElementsBO(int mode, int count, int type, int indices_buffer_offset); + + public static void glDrawPixels(int width, int height, int format, int type, ShortBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)); + nglDrawPixels(width, height, format, type, pixels, pixels.position() << 1); + } + public static void glDrawPixels(int width, int height, int format, int type, IntBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)); + nglDrawPixels(width, height, format, type, pixels, pixels.position() << 2); + } + public static void glDrawPixels(int width, int height, int format, int type, ByteBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)); + nglDrawPixels(width, height, format, type, pixels, pixels.position()); + } + private static native void nglDrawPixels(int width, int height, int format, int type, Buffer pixels, int pixels_position); + public static void glDrawPixels(int width, int height, int format, int type, int pixels_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglDrawPixelsBO(width, height, format, type, pixels_buffer_offset); + } + private static native void nglDrawPixelsBO(int width, int height, int format, int type, int pixels_buffer_offset); + + public static native void glEdgeFlag(boolean flag); + + public static void glEdgeFlagPointer(int stride, ByteBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglEdgeFlagPointer(stride, pointer, pointer.position()); + } + private static native void nglEdgeFlagPointer(int stride, Buffer pointer, int pointer_position); + public static void glEdgeFlagPointer(int stride, int pointer_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglEdgeFlagPointerBO(stride, pointer_buffer_offset); + } + private static native void nglEdgeFlagPointerBO(int stride, int pointer_buffer_offset); + + public static native void glDisable(int cap); + + public static native void glEnable(int cap); + + public static native void glDisableClientState(int cap); + + public static native void glEnableClientState(int cap); + + public static native void glEvalCoord2f(float u, float v); + + public static native void glEvalCoord1f(float u); + + public static native void glEvalMesh2(int mode, int i1, int i2, int j1, int j2); + + public static native void glEvalMesh1(int mode, int i1, int i2); + + public static native void glEvalPoint2(int i, int j); + + public static native void glEvalPoint1(int i); + + public static native void glClearIndex(float c); + + public static native void glClearStencil(int s); + + public static void glClipPlane(int plane, DoubleBuffer equation) { + BufferChecks.checkBuffer(equation, 4); + nglClipPlane(plane, equation, equation.position()); + } + private static native void nglClipPlane(int plane, DoubleBuffer equation, int equation_position); + + public static native void glColor4ub(byte red, byte green, byte blue, byte alpha); + + public static native void glColor4f(float red, float green, float blue, float alpha); + + public static native void glColor4b(byte red, byte green, byte blue, byte alpha); + + public static native void glColor3ub(byte red, byte green, byte blue); + + public static native void glColor3f(float red, float green, float blue); + + public static native void glColor3b(byte red, byte green, byte blue); + + public static native void glColorMask(boolean red, boolean green, boolean blue, boolean alpha); + + public static native void glColorMaterial(int face, int mode); + + public static void glColorPointer(int size, int stride, FloatBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglColorPointer(size, GL11.GL_FLOAT, stride, pointer, pointer.position() << 2); + } + public static void glColorPointer(int size, boolean unsigned, int stride, ByteBuffer pointer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(pointer); + nglColorPointer(size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, pointer, pointer.position()); + } + private static native void nglColorPointer(int size, int type, int stride, Buffer pointer, int pointer_position); + public static void glColorPointer(int size, int type, int stride, int pointer_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglColorPointerBO(size, type, stride, pointer_buffer_offset); + } + private static native void nglColorPointerBO(int size, int type, int stride, int pointer_buffer_offset); + + public static native void glCopyPixels(int x, int y, int width, int height, int type); + + public static native void glCopyTexImage1D(int target, int level, int internalFormat, int x, int y, int width, int border); + + public static native void glCopyTexImage2D(int target, int level, int internalFormat, int x, int y, int width, int height, int border); + + public static native void glCopyTexSubImage1D(int target, int level, int xoffset, int x, int y, int width); + + public static native void glCopyTexSubImage2D(int target, int level, int xoffset, int yoffset, int x, int y, int width, int height); + + public static native void glCullFace(int mode); + + public static void glDeleteTextures(IntBuffer textures) { + BufferChecks.checkDirect(textures); + nglDeleteTextures((textures.remaining()), textures, textures.position()); + } + private static native void nglDeleteTextures(int n, IntBuffer textures, int textures_position); + + public static native void glDeleteLists(int list, int range); + + public static native void glClearDepth(double depth); + + public static native void glArrayElement(int i); + + public static native void glEnd(); + + public static native void glBegin(int mode); + + public static native void glBindTexture(int target, int texture); + + public static void glBitmap(int width, int height, float xorig, float yorig, float xmove, float ymove, ByteBuffer bitmap) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(bitmap, (((width + 7)/8)*height)); + nglBitmap(width, height, xorig, yorig, xmove, ymove, bitmap, bitmap.position()); + } + private static native void nglBitmap(int width, int height, float xorig, float yorig, float xmove, float ymove, ByteBuffer bitmap, int bitmap_position); + public static void glBitmap(int width, int height, float xorig, float yorig, float xmove, float ymove, int bitmap_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglBitmapBO(width, height, xorig, yorig, xmove, ymove, bitmap_buffer_offset); + } + private static native void nglBitmapBO(int width, int height, float xorig, float yorig, float xmove, float ymove, int bitmap_buffer_offset); + + public static native void glBlendFunc(int sfactor, int dfactor); + + public static native void glCallList(int list); + + public static void glCallLists(IntBuffer lists) { + BufferChecks.checkDirect(lists); + nglCallLists((lists.remaining()), GL11.GL_UNSIGNED_INT, lists, lists.position() << 2); + } + public static void glCallLists(ShortBuffer lists) { + BufferChecks.checkDirect(lists); + nglCallLists((lists.remaining()), GL11.GL_UNSIGNED_SHORT, lists, lists.position() << 1); + } + public static void glCallLists(ByteBuffer lists) { + BufferChecks.checkDirect(lists); + nglCallLists((lists.remaining()), GL11.GL_UNSIGNED_BYTE, lists, lists.position()); + } + private static native void nglCallLists(int n, int type, Buffer lists, int lists_position); + + public static native void glClear(int mask); + + public static native void glClearAccum(float red, float green, float blue, float alpha); + + public static native void glClearColor(float red, float green, float blue, float alpha); + + public static native void glAlphaFunc(int func, float ref); + + public static native void glAccum(int op, float value); } diff --git a/src/java/org/lwjgl/opengl/GL12.java b/src/java/org/lwjgl/opengl/GL12.java index 34c6ebd2..0343b72a 100644 --- a/src/java/org/lwjgl/opengl/GL12.java +++ b/src/java/org/lwjgl/opengl/GL12.java @@ -1,193 +1,134 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; - -import org.lwjgl.BufferChecks; import org.lwjgl.LWJGLException; - -/** - * $Id$ - *

- * The core OpenGL1.2.1 API, with the imaging subset. - * - * @author cix_foo - * @version $Revision$ - */ +import org.lwjgl.BufferChecks; +import java.nio.*; public final class GL12 { - - /* Error codes */ - public static final int GL_TABLE_TOO_LARGE = 0x8031; - - /* Enums */ - public static final int GL_PACK_SKIP_IMAGES = 0x806B; - public static final int GL_PACK_IMAGE_HEIGHT = 0x806C; - public static final int GL_UNPACK_SKIP_IMAGES = 0x806D; - public static final int GL_UNPACK_IMAGE_HEIGHT = 0x806E; - public static final int GL_TEXTURE_3D = 0x806F; - public static final int GL_PROXY_TEXTURE_3D = 0x8070; - public static final int GL_TEXTURE_DEPTH = 0x8071; - public static final int GL_TEXTURE_WRAP_R = 0x8072; - public static final int GL_MAX_3D_TEXTURE_SIZE = 0x8073; - public static final int GL_BGR = 0x80E0; - public static final int GL_BGRA = 0x80E1; - public static final int GL_UNSIGNED_BYTE_3_3_2 = 0x8032; - public static final int GL_UNSIGNED_BYTE_2_3_3_REV = 0x8362; - public static final int GL_UNSIGNED_SHORT_5_6_5 = 0x8363; - public static final int GL_UNSIGNED_SHORT_5_6_5_REV = 0x8364; - public static final int GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033; - public static final int GL_UNSIGNED_SHORT_4_4_4_4_REV = 0x8365; - public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034; - public static final int GL_UNSIGNED_SHORT_1_5_5_5_REV = 0x8366; - public static final int GL_UNSIGNED_INT_8_8_8_8 = 0x8035; - public static final int GL_UNSIGNED_INT_8_8_8_8_REV = 0x8367; - public static final int GL_UNSIGNED_INT_10_10_10_2 = 0x8036; + public static final int GL_ALIASED_LINE_WIDTH_RANGE = 0x846e; + public static final int GL_ALIASED_POINT_SIZE_RANGE = 0x846d; + public static final int GL_MAX_ELEMENTS_INDICES = 0x80e9; + public static final int GL_MAX_ELEMENTS_VERTICES = 0x80e8; + public static final int GL_TEXTURE_MAX_LEVEL = 0x813d; + public static final int GL_TEXTURE_BASE_LEVEL = 0x813c; + public static final int GL_TEXTURE_MAX_LOD = 0x813b; + public static final int GL_TEXTURE_MIN_LOD = 0x813a; + public static final int GL_CLAMP_TO_EDGE = 0x812f; + public static final int GL_SEPARATE_SPECULAR_COLOR = 0x81fa; + public static final int GL_SINGLE_COLOR = 0x81f9; + public static final int GL_LIGHT_MODEL_COLOR_CONTROL = 0x81f8; + public static final int GL_RESCALE_NORMAL = 0x803a; public static final int GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368; - public static final int GL_RESCALE_NORMAL = 0x803A; - public static final int GL_LIGHT_MODEL_COLOR_CONTROL = 0x81F8; - public static final int GL_SINGLE_COLOR = 0x81F9; - public static final int GL_SEPARATE_SPECULAR_COLOR = 0x81FA; - public static final int GL_CLAMP_TO_EDGE = 0x812F; - public static final int GL_TEXTURE_MIN_LOD = 0x813A; - public static final int GL_TEXTURE_MAX_LOD = 0x813B; - public static final int GL_TEXTURE_BASE_LEVEL = 0x813C; - public static final int GL_TEXTURE_MAX_LEVEL = 0x813D; - public static final int GL_MAX_ELEMENTS_VERTICES = 0x80E8; - public static final int GL_MAX_ELEMENTS_INDICES = 0x80E9; - public static final int GL_ALIASED_POINT_SIZE_RANGE = 0x846D; - public static final int GL_ALIASED_LINE_WIDTH_RANGE = 0x846E; + public static final int GL_UNSIGNED_INT_10_10_10_2 = 0x8036; + public static final int GL_UNSIGNED_INT_8_8_8_8_REV = 0x8367; + public static final int GL_UNSIGNED_INT_8_8_8_8 = 0x8035; + public static final int GL_UNSIGNED_SHORT_1_5_5_5_REV = 0x8366; + public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034; + public static final int GL_UNSIGNED_SHORT_4_4_4_4_REV = 0x8365; + public static final int GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033; + public static final int GL_UNSIGNED_SHORT_5_6_5_REV = 0x8364; + public static final int GL_UNSIGNED_SHORT_5_6_5 = 0x8363; + public static final int GL_UNSIGNED_BYTE_2_3_3_REV = 0x8362; + public static final int GL_UNSIGNED_BYTE_3_3_2 = 0x8032; + public static final int GL_BGRA = 0x80e1; + public static final int GL_BGR = 0x80e0; + public static final int GL_MAX_3D_TEXTURE_SIZE = 0x8073; + public static final int GL_TEXTURE_WRAP_R = 0x8072; + public static final int GL_TEXTURE_DEPTH = 0x8071; + public static final int GL_PROXY_TEXTURE_3D = 0x8070; + public static final int GL_TEXTURE_3D = 0x806f; + public static final int GL_UNPACK_IMAGE_HEIGHT = 0x806e; + public static final int GL_UNPACK_SKIP_IMAGES = 0x806d; + public static final int GL_PACK_IMAGE_HEIGHT = 0x806c; + public static final int GL_PACK_SKIP_IMAGES = 0x806b; + public static final int GL_TABLE_TOO_LARGE = 0x8031; private GL12() { } static native void initNativeStubs() throws LWJGLException; - public static void glDrawRangeElements(int mode, int start, int end, ByteBuffer indices) { - BufferChecks.checkDirect(indices); - GLBufferChecks.ensureElementVBOdisabled(); - nglDrawRangeElements(mode, start, end, indices.remaining(), GL11.GL_UNSIGNED_BYTE, indices, indices.position()); - } + public static native void glCopyTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height); - public static void glDrawRangeElements(int mode, int start, int end, ShortBuffer indices) { - BufferChecks.checkDirect(indices); - GLBufferChecks.ensureElementVBOdisabled(); - nglDrawRangeElements(mode, start, end, indices.remaining(), GL11.GL_UNSIGNED_SHORT, indices, indices.position() << 1); - } - - public static void glDrawRangeElements(int mode, int start, int end, IntBuffer indices) { - BufferChecks.checkDirect(indices); - GLBufferChecks.ensureElementVBOdisabled(); - nglDrawRangeElements(mode, start, end, indices.remaining(), GL11.GL_UNSIGNED_INT, indices, indices.position() << 2); - } - - private static native void nglDrawRangeElements(int mode, int start, int end, int count, int type, Buffer indices, int indices_offset); - - public static void glDrawRangeElements(int mode, int start, int end, int count, int type, int buffer_offset) { - GLBufferChecks.ensureElementVBOenabled(); - nglDrawRangeElementsVBO(mode, start, end, count, type, buffer_offset); - } - - private static native void nglDrawRangeElementsVBO(int mode, int start, int end, int count, int type, int buffer_offset); - - // --------------------------- - public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, ByteBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage3DStorage(format, type, width, height, depth, border)); - nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels, pixels != null ? pixels.position() : 0); - } - public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, ShortBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage3DStorage(format, type, width, height, depth, border) >> 1); - nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels, pixels != null ? pixels.position() << 1 : 0); - } - public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, IntBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage3DStorage(format, type, width, height, depth, border) >> 2); - nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); - } - public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, FloatBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - if ( pixels != null ) - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage3DStorage(format, type, width, height, depth, border) >> 2); - nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); - } - private static native void nglTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, Buffer pixels, int pixels_offset); - - public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglTexImage3DBO(target, level, internalFormat, width, height, depth, border, format, type, buffer_offset); - } - private static native void nglTexImage3DBO(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, ByteBuffer pixels) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, depth)); - nglTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels, pixels.position()); - } public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, ShortBuffer pixels) { GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, depth) >> 1); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, depth)); nglTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels, pixels.position() << 1); } public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, IntBuffer pixels) { GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, depth) >> 2); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, depth)); nglTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels, pixels.position() << 2); } public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, FloatBuffer pixels) { GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(format, type, width, height, depth) >> 2); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, depth)); nglTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels, pixels.position() << 2); } - private static native void nglTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, Buffer pixels, int pixels_offset); - - public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglTexSubImage3DBO(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, buffer_offset); + public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, ByteBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, depth)); + nglTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels, pixels.position()); } - private static native void nglTexSubImage3DBO(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, int buffer_offset); - // --------------------------- + private static native void nglTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, Buffer pixels, int pixels_position); + public static void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, int pixels_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglTexSubImage3DBO(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels_buffer_offset); + } + private static native void nglTexSubImage3DBO(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, int pixels_buffer_offset); - public static native void glCopyTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height); + public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, ShortBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage3DStorage(pixels, format, type, width, height, depth, border)); + nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels, pixels != null ? pixels.position() << 1 : 0); + } + public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, IntBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage3DStorage(pixels, format, type, width, height, depth, border)); + nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); + } + public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, FloatBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage3DStorage(pixels, format, type, width, height, depth, border)); + nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels, pixels != null ? pixels.position() << 2 : 0); + } + public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, ByteBuffer pixels) { + GLBufferChecks.ensureUnpackPBOdisabled(); + if (pixels != null) + BufferChecks.checkBuffer(pixels, GLBufferChecks.calculateTexImage3DStorage(pixels, format, type, width, height, depth, border)); + nglTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels, pixels != null ? pixels.position() : 0); + } + private static native void nglTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, Buffer pixels, int pixels_position); + public static void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, int pixels_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglTexImage3DBO(target, level, internalFormat, width, height, depth, border, format, type, pixels_buffer_offset); + } + private static native void nglTexImage3DBO(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, int pixels_buffer_offset); + + public static void glDrawRangeElements(int mode, int start, int end, IntBuffer indices) { + GLBufferChecks.ensureElementVBOdisabled(); + BufferChecks.checkDirect(indices); + nglDrawRangeElements(mode, start, end, (indices.remaining()), GL11.GL_UNSIGNED_INT, indices, indices.position() << 2); + } + public static void glDrawRangeElements(int mode, int start, int end, ShortBuffer indices) { + GLBufferChecks.ensureElementVBOdisabled(); + BufferChecks.checkDirect(indices); + nglDrawRangeElements(mode, start, end, (indices.remaining()), GL11.GL_UNSIGNED_SHORT, indices, indices.position() << 1); + } + public static void glDrawRangeElements(int mode, int start, int end, ByteBuffer indices) { + GLBufferChecks.ensureElementVBOdisabled(); + BufferChecks.checkDirect(indices); + nglDrawRangeElements(mode, start, end, (indices.remaining()), GL11.GL_UNSIGNED_BYTE, indices, indices.position()); + } + private static native void nglDrawRangeElements(int mode, int start, int end, int count, int type, Buffer indices, int indices_position); + public static void glDrawRangeElements(int mode, int start, int end, int count, int type, int indices_buffer_offset) { + GLBufferChecks.ensureElementVBOenabled(); + nglDrawRangeElementsBO(mode, start, end, count, type, indices_buffer_offset); + } + private static native void nglDrawRangeElementsBO(int mode, int start, int end, int count, int type, int indices_buffer_offset); } - diff --git a/src/java/org/lwjgl/opengl/GL13.java b/src/java/org/lwjgl/opengl/GL13.java index 84c527c4..34a86b27 100644 --- a/src/java/org/lwjgl/opengl/GL13.java +++ b/src/java/org/lwjgl/opengl/GL13.java @@ -1,322 +1,158 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; -/** - * $Id$ - *

- * The core OpenGL1.3 API. - * - * @author cix_foo - * @version $Revision$ - */ public final class GL13 { - - public static final int GL_TEXTURE0 = 0x84C0; - public static final int GL_TEXTURE1 = 0x84C1; - public static final int GL_TEXTURE2 = 0x84C2; - public static final int GL_TEXTURE3 = 0x84C3; - public static final int GL_TEXTURE4 = 0x84C4; - public static final int GL_TEXTURE5 = 0x84C5; - public static final int GL_TEXTURE6 = 0x84C6; - public static final int GL_TEXTURE7 = 0x84C7; - public static final int GL_TEXTURE8 = 0x84C8; - public static final int GL_TEXTURE9 = 0x84C9; - public static final int GL_TEXTURE10 = 0x84CA; - public static final int GL_TEXTURE11 = 0x84CB; - public static final int GL_TEXTURE12 = 0x84CC; - public static final int GL_TEXTURE13 = 0x84CD; - public static final int GL_TEXTURE14 = 0x84CE; - public static final int GL_TEXTURE15 = 0x84CF; - public static final int GL_TEXTURE16 = 0x84D0; - public static final int GL_TEXTURE17 = 0x84D1; - public static final int GL_TEXTURE18 = 0x84D2; - public static final int GL_TEXTURE19 = 0x84D3; - public static final int GL_TEXTURE20 = 0x84D4; - public static final int GL_TEXTURE21 = 0x84D5; - public static final int GL_TEXTURE22 = 0x84D6; - public static final int GL_TEXTURE23 = 0x84D7; - public static final int GL_TEXTURE24 = 0x84D8; - public static final int GL_TEXTURE25 = 0x84D9; - public static final int GL_TEXTURE26 = 0x84DA; - public static final int GL_TEXTURE27 = 0x84DB; - public static final int GL_TEXTURE28 = 0x84DC; - public static final int GL_TEXTURE29 = 0x84DD; - public static final int GL_TEXTURE30 = 0x84DE; - public static final int GL_TEXTURE31 = 0x84DF; - public static final int GL_ACTIVE_TEXTURE = 0x84E0; - public static final int GL_CLIENT_ACTIVE_TEXTURE = 0x84E1; - public static final int GL_MAX_TEXTURE_UNITS = 0x84E2; - - public static final int GL_NORMAL_MAP = 0x8511; - public static final int GL_REFLECTION_MAP = 0x8512; - public static final int GL_TEXTURE_CUBE_MAP = 0x8513; - public static final int GL_TEXTURE_BINDING_CUBE_MAP = 0x8514; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A; - public static final int GL_PROXY_TEXTURE_CUBE_MAP = 0x851B; - public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C; - - public static final int GL_COMPRESSED_ALPHA = 0x84E9; - public static final int GL_COMPRESSED_LUMINANCE = 0x84EA; - public static final int GL_COMPRESSED_LUMINANCE_ALPHA = 0x84EB; - public static final int GL_COMPRESSED_INTENSITY = 0x84EC; - public static final int GL_COMPRESSED_RGB = 0x84ED; - public static final int GL_COMPRESSED_RGBA = 0x84EE; - public static final int GL_TEXTURE_COMPRESSION_HINT = 0x84EF; - public static final int GL_TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0; - public static final int GL_TEXTURE_COMPRESSED = 0x86A1; - public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2; - public static final int GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3; - - public static final int GL_MULTISAMPLE = 0x809D; - public static final int GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E; - public static final int GL_SAMPLE_ALPHA_TO_ONE = 0x809F; - public static final int GL_SAMPLE_COVERAGE = 0x80A0; - public static final int GL_SAMPLE_BUFFERS = 0x80A8; - public static final int GL_SAMPLES = 0x80A9; - public static final int GL_SAMPLE_COVERAGE_VALUE = 0x80AA; - public static final int GL_SAMPLE_COVERAGE_INVERT = 0x80AB; - public static final int GL_MULTISAMPLE_BIT = 0x20000000; - - public static final int GL_TRANSPOSE_MODELVIEW_MATRIX = 0x84E3; - public static final int GL_TRANSPOSE_PROJECTION_MATRIX = 0x84E4; - public static final int GL_TRANSPOSE_TEXTURE_MATRIX = 0x84E5; - public static final int GL_TRANSPOSE_COLOR_MATRIX = 0x84E6; - - public static final int GL_COMBINE = 0x8570; - public static final int GL_COMBINE_RGB = 0x8571; - public static final int GL_COMBINE_ALPHA = 0x8572; - public static final int GL_SOURCE0_RGB = 0x8580; - public static final int GL_SOURCE1_RGB = 0x8581; - public static final int GL_SOURCE2_RGB = 0x8582; - public static final int GL_SOURCE0_ALPHA = 0x8588; - public static final int GL_SOURCE1_ALPHA = 0x8589; - public static final int GL_SOURCE2_ALPHA = 0x858A; - public static final int GL_OPERAND0_RGB = 0x8590; - public static final int GL_OPERAND1_RGB = 0x8591; - public static final int GL_OPERAND2_RGB = 0x8592; - public static final int GL_OPERAND0_ALPHA = 0x8598; - public static final int GL_OPERAND1_ALPHA = 0x8599; - public static final int GL_OPERAND2_ALPHA = 0x859A; - public static final int GL_RGB_SCALE = 0x8573; - public static final int GL_ADD_SIGNED = 0x8574; - public static final int GL_INTERPOLATE = 0x8575; - public static final int GL_SUBTRACT = 0x84E7; - public static final int GL_CONSTANT = 0x8576; - public static final int GL_PRIMARY_COLOR = 0x8577; + public static final int GL_CLAMP_TO_BORDER = 0x812d; + public static final int GL_DOT3_RGBA = 0x86af; + public static final int GL_DOT3_RGB = 0x86ae; public static final int GL_PREVIOUS = 0x8578; - public static final int GL_DOT3_RGB = 0x86AE; - public static final int GL_DOT3_RGBA = 0x86AF; - public static final int GL_CLAMP_TO_BORDER = 0x812D; + public static final int GL_PRIMARY_COLOR = 0x8577; + public static final int GL_CONSTANT = 0x8576; + public static final int GL_SUBTRACT = 0x84e7; + public static final int GL_INTERPOLATE = 0x8575; + public static final int GL_ADD_SIGNED = 0x8574; + public static final int GL_RGB_SCALE = 0x8573; + public static final int GL_OPERAND2_ALPHA = 0x859a; + public static final int GL_OPERAND1_ALPHA = 0x8599; + public static final int GL_OPERAND0_ALPHA = 0x8598; + public static final int GL_OPERAND2_RGB = 0x8592; + public static final int GL_OPERAND1_RGB = 0x8591; + public static final int GL_OPERAND0_RGB = 0x8590; + public static final int GL_SOURCE2_ALPHA = 0x858a; + public static final int GL_SOURCE1_ALPHA = 0x8589; + public static final int GL_SOURCE0_ALPHA = 0x8588; + public static final int GL_SOURCE2_RGB = 0x8582; + public static final int GL_SOURCE1_RGB = 0x8581; + public static final int GL_SOURCE0_RGB = 0x8580; + public static final int GL_COMBINE_ALPHA = 0x8572; + public static final int GL_COMBINE_RGB = 0x8571; + public static final int GL_COMBINE = 0x8570; + public static final int GL_TRANSPOSE_COLOR_MATRIX = 0x84e6; + public static final int GL_TRANSPOSE_TEXTURE_MATRIX = 0x84e5; + public static final int GL_TRANSPOSE_PROJECTION_MATRIX = 0x84e4; + public static final int GL_TRANSPOSE_MODELVIEW_MATRIX = 0x84e3; + public static final int GL_MULTISAMPLE_BIT = 0x20000000; + public static final int GL_SAMPLE_COVERAGE_INVERT = 0x80ab; + public static final int GL_SAMPLE_COVERAGE_VALUE = 0x80aa; + public static final int GL_SAMPLES = 0x80a9; + public static final int GL_SAMPLE_BUFFERS = 0x80a8; + public static final int GL_SAMPLE_COVERAGE = 0x80a0; + public static final int GL_SAMPLE_ALPHA_TO_ONE = 0x809f; + public static final int GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809e; + public static final int GL_MULTISAMPLE = 0x809d; + public static final int GL_COMPRESSED_TEXTURE_FORMATS = 0x86a3; + public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86a2; + public static final int GL_TEXTURE_COMPRESSED = 0x86a1; + public static final int GL_TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86a0; + public static final int GL_TEXTURE_COMPRESSION_HINT = 0x84ef; + public static final int GL_COMPRESSED_RGBA = 0x84ee; + public static final int GL_COMPRESSED_RGB = 0x84ed; + public static final int GL_COMPRESSED_INTENSITY = 0x84ec; + public static final int GL_COMPRESSED_LUMINANCE_ALPHA = 0x84eb; + public static final int GL_COMPRESSED_LUMINANCE = 0x84ea; + public static final int GL_COMPRESSED_ALPHA = 0x84e9; + public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851c; + public static final int GL_PROXY_TEXTURE_CUBE_MAP = 0x851b; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851a; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515; + public static final int GL_TEXTURE_BINDING_CUBE_MAP = 0x8514; + public static final int GL_TEXTURE_CUBE_MAP = 0x8513; + public static final int GL_REFLECTION_MAP = 0x8512; + public static final int GL_NORMAL_MAP = 0x8511; + public static final int GL_MAX_TEXTURE_UNITS = 0x84e2; + public static final int GL_CLIENT_ACTIVE_TEXTURE = 0x84e1; + public static final int GL_ACTIVE_TEXTURE = 0x84e0; + public static final int GL_TEXTURE31 = 0x84df; + public static final int GL_TEXTURE30 = 0x84de; + public static final int GL_TEXTURE29 = 0x84dd; + public static final int GL_TEXTURE28 = 0x84dc; + public static final int GL_TEXTURE27 = 0x84db; + public static final int GL_TEXTURE26 = 0x84da; + public static final int GL_TEXTURE25 = 0x84d9; + public static final int GL_TEXTURE24 = 0x84d8; + public static final int GL_TEXTURE23 = 0x84d7; + public static final int GL_TEXTURE22 = 0x84d6; + public static final int GL_TEXTURE21 = 0x84d5; + public static final int GL_TEXTURE20 = 0x84d4; + public static final int GL_TEXTURE19 = 0x84d3; + public static final int GL_TEXTURE18 = 0x84d2; + public static final int GL_TEXTURE17 = 0x84d1; + public static final int GL_TEXTURE16 = 0x84d0; + public static final int GL_TEXTURE15 = 0x84cf; + public static final int GL_TEXTURE14 = 0x84ce; + public static final int GL_TEXTURE13 = 0x84cd; + public static final int GL_TEXTURE12 = 0x84cc; + public static final int GL_TEXTURE11 = 0x84cb; + public static final int GL_TEXTURE10 = 0x84ca; + public static final int GL_TEXTURE9 = 0x84c9; + public static final int GL_TEXTURE8 = 0x84c8; + public static final int GL_TEXTURE7 = 0x84c7; + public static final int GL_TEXTURE6 = 0x84c6; + public static final int GL_TEXTURE5 = 0x84c5; + public static final int GL_TEXTURE4 = 0x84c4; + public static final int GL_TEXTURE3 = 0x84c3; + public static final int GL_TEXTURE2 = 0x84c2; + public static final int GL_TEXTURE1 = 0x84c1; + public static final int GL_TEXTURE0 = 0x84c0; private GL13() { } static native void initNativeStubs() throws LWJGLException; - public static native void glActiveTexture(int texture); + public static native void glSampleCoverage(float value, boolean invert); - public static native void glClientActiveTexture(int texture); + public static void glMultTransposeMatrix(FloatBuffer m) { + BufferChecks.checkBuffer(m, 16); + nglMultTransposeMatrixf(m, m.position()); + } + private static native void nglMultTransposeMatrixf(FloatBuffer m, int m_position); - // --------------------------- - public static void glCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, ByteBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data, data.position()); + public static void glLoadTransposeMatrix(FloatBuffer m) { + BufferChecks.checkBuffer(m, 16); + nglLoadTransposeMatrixf(m, m.position()); } - public static void glCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, ShortBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data, data.position() << 1); - } - public static void glCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, IntBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data, data.position() << 2); - } - public static void glCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, FloatBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data, data.position() << 2); - } - private static native void nglCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, Buffer data, int data_offset); + private static native void nglLoadTransposeMatrixf(FloatBuffer m, int m_position); - public static void glCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexImage1DBO(target, level, internalformat, width, border, imageSize, buffer_offset); - } - private static native void nglCompressedTexImage1DBO(int target, int level, int internalformat, int width, int border, int imageSize, int buffer_offset); - // --------------------------- + public static native void glMultiTexCoord4f(int target, float s, float t, float r, float q); - // --------------------------- - public static void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, ByteBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data, data.position()); - } - public static void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, ShortBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data, data.position() << 1); - } - public static void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, IntBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data, data.position() << 2); - } - public static void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, FloatBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data, data.position() << 2); - } - private static native void nglCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, Buffer data, int data_offset); + public static native void glMultiTexCoord3f(int target, float s, float t, float r); - public static void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexImage2DBO(target, level, internalformat, width, height, border, imageSize, buffer_offset); - } - private static native void nglCompressedTexImage2DBO(int target, int level, int internalformat, int width, int height, int border, int imageSize, int buffer_offset); - // --------------------------- + public static native void glMultiTexCoord2f(int target, float s, float t); - // --------------------------- - public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, ByteBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data, data.position()); - } - public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, ShortBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data, data.position() << 1); - } - public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, IntBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data, data.position() << 2); - } - public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, FloatBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data, data.position() << 2); - } - private static native void nglCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, Buffer data, int data_offset); + public static native void glMultiTexCoord1f(int target, float s); - public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexImage3DBO(target, level, internalformat, width, height, depth, border, imageSize, buffer_offset); + public static void glGetCompressedTexImage(int target, int lod, ShortBuffer img) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(img); + nglGetCompressedTexImage(target, lod, img, img.position() << 1); } - private static native void nglCompressedTexImage3DBO(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, int buffer_offset); - // --------------------------- + public static void glGetCompressedTexImage(int target, int lod, IntBuffer img) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(img); + nglGetCompressedTexImage(target, lod, img, img.position() << 2); + } + public static void glGetCompressedTexImage(int target, int lod, ByteBuffer img) { + GLBufferChecks.ensurePackPBOdisabled(); + BufferChecks.checkDirect(img); + nglGetCompressedTexImage(target, lod, img, img.position()); + } + private static native void nglGetCompressedTexImage(int target, int lod, Buffer img, int img_position); + public static void glGetCompressedTexImage(int target, int lod, int img_buffer_offset) { + GLBufferChecks.ensurePackPBOenabled(); + nglGetCompressedTexImageBO(target, lod, img_buffer_offset); + } + private static native void nglGetCompressedTexImageBO(int target, int lod, int img_buffer_offset); - // --------------------------- - public static void glCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, ByteBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data, data.position()); - } - public static void glCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, ShortBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data, data.position() << 1); - } - public static void glCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, IntBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data, data.position() << 2); - } - public static void glCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, FloatBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data, data.position() << 2); - } - private static native void nglCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, Buffer data, int data_offset); - - public static void glCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexSubImage1DBO(target, level, xoffset, width, format, imageSize, buffer_offset); - } - private static native void nglCompressedTexSubImage1DBO(int target, int level, int xoffset, int width, int format, int imageSize, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, ByteBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data, data.position()); - } - public static void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, ShortBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data, data.position() << 1); - } - public static void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, IntBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data, data.position() << 2); - } - public static void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, FloatBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data, data.position() << 2); - } - private static native void nglCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, Buffer data, int data_offset); - - public static void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, int buffer_offset) { - GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexSubImage2DBO(target, level, xoffset, yoffset, width, height, format, imageSize, buffer_offset); - } - private static native void nglCompressedTexSubImage2DBO(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, int buffer_offset); - // --------------------------- - - // --------------------------- - public static void glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, ByteBuffer data) { - GLBufferChecks.ensureUnpackPBOdisabled(); - BufferChecks.checkDirect(data); - nglCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data, data.position()); - } public static void glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, ShortBuffer data) { GLBufferChecks.ensureUnpackPBOdisabled(); BufferChecks.checkDirect(data); @@ -332,65 +168,154 @@ public final class GL13 { BufferChecks.checkDirect(data); nglCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data, data.position() << 2); } - private static native void nglCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, Buffer data, int data_offset); - - public static void glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, int buffer_offset) { + public static void glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, ByteBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data, data.position()); + } + private static native void nglCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, Buffer data, int data_position); + public static void glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, int data_buffer_offset) { GLBufferChecks.ensureUnpackPBOenabled(); - nglCompressedTexSubImage3DBO(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, buffer_offset); + nglCompressedTexSubImage3DBO(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data_buffer_offset); } - private static native void nglCompressedTexSubImage3DBO(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, int buffer_offset); - // --------------------------- + private static native void nglCompressedTexSubImage3DBO(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, int data_buffer_offset); - // --------------------------- - public static void glGetCompressedTexImage(int target, int lod, ByteBuffer img) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirect(img); - // TODO: check buffer size valid - nglGetCompressedTexImage(target, lod, img, img.position()); + public static void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, ShortBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data, data.position() << 1); } - public static void glGetCompressedTexImage(int target, int lod, ShortBuffer img) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirect(img); - // TODO: check buffer size valid - nglGetCompressedTexImage(target, lod, img, img.position() << 1); + public static void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, IntBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data, data.position() << 2); } - public static void glGetCompressedTexImage(int target, int lod, IntBuffer img) { - GLBufferChecks.ensurePackPBOdisabled(); - BufferChecks.checkDirect(img); - // TODO: check buffer size valid - nglGetCompressedTexImage(target, lod, img, img.position() << 2); + public static void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, FloatBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data, data.position() << 2); } - private static native void nglGetCompressedTexImage(int target, int lod, Buffer img, int img_offset); - - public static void glGetCompressedTexImage(int target, int lod, int buffer_offset) { - GLBufferChecks.ensurePackPBOenabled(); - nglGetCompressedTexImageBO(target, lod, buffer_offset); + public static void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, ByteBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data, data.position()); } - private static native void nglGetCompressedTexImageBO(int target, int lod, int buffer_offset); - // --------------------------- - - public static native void glMultiTexCoord1f(int target, float s); - - public static native void glMultiTexCoord2f(int target, float s, float t); - - public static native void glMultiTexCoord3f(int target, float s, float t, float r); - - public static native void glMultiTexCoord4f(int target, float s, float t, float r, float q); - - public static void glLoadTransposeMatrix(FloatBuffer m) { - BufferChecks.checkBuffer(m, 16); - nglLoadTransposeMatrixf(m, m.position()); + private static native void nglCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, Buffer data, int data_position); + public static void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, int data_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglCompressedTexSubImage2DBO(target, level, xoffset, yoffset, width, height, format, imageSize, data_buffer_offset); } + private static native void nglCompressedTexSubImage2DBO(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, int data_buffer_offset); - private static native void nglLoadTransposeMatrixf(FloatBuffer m, int m_offset); - - public static void glMultTransposeMatrix(FloatBuffer m) { - BufferChecks.checkBuffer(m, 16); - nglMultTransposeMatrixf(m, m.position()); + public static void glCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, ShortBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data, data.position() << 1); } + public static void glCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, IntBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data, data.position() << 2); + } + public static void glCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, FloatBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data, data.position() << 2); + } + public static void glCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, ByteBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data, data.position()); + } + private static native void nglCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, Buffer data, int data_position); + public static void glCompressedTexSubImage1D(int target, int level, int xoffset, int width, int format, int imageSize, int data_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglCompressedTexSubImage1DBO(target, level, xoffset, width, format, imageSize, data_buffer_offset); + } + private static native void nglCompressedTexSubImage1DBO(int target, int level, int xoffset, int width, int format, int imageSize, int data_buffer_offset); - private static native void nglMultTransposeMatrixf(FloatBuffer m, int m_offset); + public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, ShortBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data, data.position() << 1); + } + public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, IntBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data, data.position() << 2); + } + public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, FloatBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data, data.position() << 2); + } + public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, ByteBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data, data.position()); + } + private static native void nglCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, Buffer data, int data_position); + public static void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, int data_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglCompressedTexImage3DBO(target, level, internalformat, width, height, depth, border, imageSize, data_buffer_offset); + } + private static native void nglCompressedTexImage3DBO(int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, int data_buffer_offset); - public static native void glSampleCoverage(float value, boolean invert); + public static void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, ShortBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data, data.position() << 1); + } + public static void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, IntBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data, data.position() << 2); + } + public static void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, FloatBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data, data.position() << 2); + } + public static void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, ByteBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data, data.position()); + } + private static native void nglCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, Buffer data, int data_position); + public static void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, int imageSize, int data_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglCompressedTexImage2DBO(target, level, internalformat, width, height, border, imageSize, data_buffer_offset); + } + private static native void nglCompressedTexImage2DBO(int target, int level, int internalformat, int width, int height, int border, int imageSize, int data_buffer_offset); + + public static void glCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, ShortBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data, data.position() << 1); + } + public static void glCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, IntBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data, data.position() << 2); + } + public static void glCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, FloatBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data, data.position() << 2); + } + public static void glCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, ByteBuffer data) { + GLBufferChecks.ensureUnpackPBOdisabled(); + BufferChecks.checkDirect(data); + nglCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data, data.position()); + } + private static native void nglCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, Buffer data, int data_position); + public static void glCompressedTexImage1D(int target, int level, int internalformat, int width, int border, int imageSize, int data_buffer_offset) { + GLBufferChecks.ensureUnpackPBOenabled(); + nglCompressedTexImage1DBO(target, level, internalformat, width, border, imageSize, data_buffer_offset); + } + private static native void nglCompressedTexImage1DBO(int target, int level, int internalformat, int width, int border, int imageSize, int data_buffer_offset); + + public static native void glClientActiveTexture(int texture); + + public static native void glActiveTexture(int texture); } - diff --git a/src/java/org/lwjgl/opengl/GL14.java b/src/java/org/lwjgl/opengl/GL14.java index 1e82d7a4..7d4a2fba 100644 --- a/src/java/org/lwjgl/opengl/GL14.java +++ b/src/java/org/lwjgl/opengl/GL14.java @@ -1,182 +1,131 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; -/** - * $Id$ - *

- * The core OpenGL1.4 API. - * - * @author cix_foo - * @version $Revision$ - */ public final class GL14 { - - public static final int GL_GENERATE_MIPMAP = 0x8191; - public static final int GL_GENERATE_MIPMAP_HINT = 0x8192; - public static final int GL_DEPTH_COMPONENT16 = 0x81A5; - public static final int GL_DEPTH_COMPONENT24 = 0x81A6; - public static final int GL_DEPTH_COMPONENT32 = 0x81A7; - public static final int GL_TEXTURE_DEPTH_SIZE = 0x884A; - public static final int GL_DEPTH_TEXTURE_MODE = 0x884B; - public static final int GL_TEXTURE_COMPARE_MODE = 0x884C; - public static final int GL_TEXTURE_COMPARE_FUNC = 0x884D; - public static final int GL_COMPARE_R_TO_TEXTURE = 0x884E; - public static final int GL_FOG_COORDINATE_SOURCE = 0x8450; - public static final int GL_FOG_COORDINATE = 0x8451; - public static final int GL_FRAGMENT_DEPTH = 0x8452; - public static final int GL_CURRENT_FOG_COORDINATE = 0x8453; - public static final int GL_FOG_COORDINATE_ARRAY_TYPE = 0x8454; - public static final int GL_FOG_COORDINATE_ARRAY_STRIDE = 0x8455; - public static final int GL_FOG_COORDINATE_ARRAY_POINTER = 0x8456; - public static final int GL_FOG_COORDINATE_ARRAY = 0x8457; - public static final int GL_POINT_SIZE_MIN = 0x8126; - public static final int GL_POINT_SIZE_MAX = 0x8127; - public static final int GL_POINT_FADE_THRESHOLD_SIZE = 0x8128; - public static final int GL_POINT_DISTANCE_ATTENUATION = 0x8129; - public static final int GL_COLOR_SUM = 0x8458; - public static final int GL_CURRENT_SECONDARY_COLOR = 0x8459; - public static final int GL_SECONDARY_COLOR_ARRAY_SIZE = 0x845A; - public static final int GL_SECONDARY_COLOR_ARRAY_TYPE = 0x845B; - public static final int GL_SECONDARY_COLOR_ARRAY_STRIDE = 0x845C; - public static final int GL_SECONDARY_COLOR_ARRAY_POINTER = 0x845D; - public static final int GL_SECONDARY_COLOR_ARRAY = 0x845E; - public static final int GL_BLEND_DST_RGB = 0x80C8; - public static final int GL_BLEND_SRC_RGB = 0x80C9; - public static final int GL_BLEND_DST_ALPHA = 0x80CA; - public static final int GL_BLEND_SRC_ALPHA = 0x80CB; - public static final int GL_INCR_WRAP = 0x8507; - public static final int GL_DECR_WRAP = 0x8508; - public static final int GL_TEXTURE_FILTER_CONTROL = 0x8500; - public static final int GL_TEXTURE_LOD_BIAS = 0x8501; - public static final int GL_MAX_TEXTURE_LOD_BIAS = 0x84FD; public static final int GL_GL_MIRRORED_REPEAT = 0x8370; + public static final int GL_MAX_TEXTURE_LOD_BIAS = 0x84fd; + public static final int GL_TEXTURE_LOD_BIAS = 0x8501; + public static final int GL_TEXTURE_FILTER_CONTROL = 0x8500; + public static final int GL_DECR_WRAP = 0x8508; + public static final int GL_INCR_WRAP = 0x8507; + public static final int GL_BLEND_SRC_ALPHA = 0x80cb; + public static final int GL_BLEND_DST_ALPHA = 0x80ca; + public static final int GL_BLEND_SRC_RGB = 0x80c9; + public static final int GL_BLEND_DST_RGB = 0x80c8; + public static final int GL_SECONDARY_COLOR_ARRAY = 0x845e; + public static final int GL_SECONDARY_COLOR_ARRAY_POINTER = 0x845d; + public static final int GL_SECONDARY_COLOR_ARRAY_STRIDE = 0x845c; + public static final int GL_SECONDARY_COLOR_ARRAY_TYPE = 0x845b; + public static final int GL_SECONDARY_COLOR_ARRAY_SIZE = 0x845a; + public static final int GL_CURRENT_SECONDARY_COLOR = 0x8459; + public static final int GL_COLOR_SUM = 0x8458; + public static final int GL_POINT_DISTANCE_ATTENUATION = 0x8129; + public static final int GL_POINT_FADE_THRESHOLD_SIZE = 0x8128; + public static final int GL_POINT_SIZE_MAX = 0x8127; + public static final int GL_POINT_SIZE_MIN = 0x8126; + public static final int GL_FOG_COORDINATE_ARRAY = 0x8457; + public static final int GL_FOG_COORDINATE_ARRAY_POINTER = 0x8456; + public static final int GL_FOG_COORDINATE_ARRAY_STRIDE = 0x8455; + public static final int GL_FOG_COORDINATE_ARRAY_TYPE = 0x8454; + public static final int GL_CURRENT_FOG_COORDINATE = 0x8453; + public static final int GL_FRAGMENT_DEPTH = 0x8452; + public static final int GL_FOG_COORDINATE = 0x8451; + public static final int GL_FOG_COORDINATE_SOURCE = 0x8450; + public static final int GL_COMPARE_R_TO_TEXTURE = 0x884e; + public static final int GL_TEXTURE_COMPARE_FUNC = 0x884d; + public static final int GL_TEXTURE_COMPARE_MODE = 0x884c; + public static final int GL_DEPTH_TEXTURE_MODE = 0x884b; + public static final int GL_TEXTURE_DEPTH_SIZE = 0x884a; + public static final int GL_DEPTH_COMPONENT32 = 0x81a7; + public static final int GL_DEPTH_COMPONENT24 = 0x81a6; + public static final int GL_DEPTH_COMPONENT16 = 0x81a5; + public static final int GL_GENERATE_MIPMAP_HINT = 0x8192; + public static final int GL_GENERATE_MIPMAP = 0x8191; private GL14() { } static native void initNativeStubs() throws LWJGLException; - public static native void glBlendEquation(int mode); + public static native void glWindowPos3i(int x, int y, int z); - public static native void glBlendColor(float red, float green, float blue, float alpha); + public static native void glWindowPos3f(float x, float y, float z); - public static native void glFogCoordf(float coord); + public static native void glWindowPos2i(int x, int y); - public static void glFogCoordPointer(int stride, FloatBuffer data) { - BufferChecks.checkDirect(data); + public static native void glWindowPos2f(float x, float y); + + public static native void glBlendFuncSeparate(int sfactorRGB, int dfactorRGB, int sfactorAlpha, int dfactorAlpha); + + public static void glSecondaryColorPointer(int size, int stride, FloatBuffer data) { GLBufferChecks.ensureArrayVBOdisabled(); - nglFogCoordPointer(GL11.GL_FLOAT, stride, data, data.position() << 2); + BufferChecks.checkDirect(data); + nglSecondaryColorPointer(size, GL11.GL_FLOAT, stride, data, data.position() << 2); } - - private static native void nglFogCoordPointer(int type, int stride, Buffer data, int data_offset); - - public static void glFogCoordPointer(int type, int stride, int buffer_offset) { + public static void glSecondaryColorPointer(int size, boolean unsigned, int stride, ByteBuffer data) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(data); + nglSecondaryColorPointer(size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, data, data.position()); + } + private static native void nglSecondaryColorPointer(int size, int type, int stride, Buffer data, int data_position); + public static void glSecondaryColorPointer(int size, int type, int stride, int data_buffer_offset) { GLBufferChecks.ensureArrayVBOenabled(); - nglFogCoordPointerVBO(type, stride, buffer_offset); + nglSecondaryColorPointerBO(size, type, stride, data_buffer_offset); } + private static native void nglSecondaryColorPointerBO(int size, int type, int stride, int data_buffer_offset); - private static native void nglFogCoordPointerVBO(int type, int stride, int buffer_offset); + public static native void glSecondaryColor3ub(byte red, byte green, byte blue); + + public static native void glSecondaryColor3f(float red, float green, float blue); + + public static native void glSecondaryColor3b(byte red, byte green, byte blue); + + public static void glPointParameter(int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglPointParameterfv(pname, params, params.position()); + } + private static native void nglPointParameterfv(int pname, FloatBuffer params, int params_position); + + public static void glPointParameter(int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglPointParameteriv(pname, params, params.position()); + } + private static native void nglPointParameteriv(int pname, IntBuffer params, int params_position); + + public static native void glPointParameterf(int pname, float param); + + public static native void glPointParameteri(int pname, int param); public static void glMultiDrawArrays(int mode, IntBuffer piFirst, IntBuffer piCount) { BufferChecks.checkDirect(piFirst); BufferChecks.checkDirect(piCount); - if ( piFirst.remaining() != piCount.remaining() ) { + if (piFirst.remaining() != piCount.remaining()) { throw new IllegalArgumentException("piFirst.remaining() != piCount.remaining()"); } - nglMultiDrawArrays(mode, piFirst, piFirst.position(), piCount, piCount.position(), piFirst.remaining()); + nglMultiDrawArrays(mode, piFirst, piFirst.position(), piCount, piCount.position(), (piFirst.remaining())); } + private static native void nglMultiDrawArrays(int mode, IntBuffer piFirst, int piFirst_position, IntBuffer piCount, int piCount_position, int primcount); - private static native void nglMultiDrawArrays(int mode, IntBuffer piFirst, int piFirst_offset, IntBuffer piCount, int piCount_offset, int primcount); - /*public static native void glMultiDrawElements(int mode, int piCount, int type, int pIndices, int primcount);*/ - - public static native void glPointParameteri(int pname, int param); - public static native void glPointParameterf(int pname, float param); - - // --------------------------- - public static void glPointParameter(int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglPointParameteriv(pname, params, params.position()); - } - private static native void nglPointParameteriv(int pname, IntBuffer params, int params_offset); - // --------------------------- - - // --------------------------- - public static void glPointParameter(int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglPointParameterfv(pname, params, params.position()); - } - private static native void nglPointParameterfv(int pname, FloatBuffer params, int params_offset); - // --------------------------- - - public static native void glSecondaryColor3b(byte red, byte green, byte blue); - public static native void glSecondaryColor3f(float red, float green, float blue); - public static native void glSecondaryColor3ub(byte red, byte green, byte blue); - - public static void glSecondaryColorPointer(int size, boolean unsigned, int stride, ByteBuffer data) { - BufferChecks.checkDirect(data); + public static void glFogCoordPointer(int stride, FloatBuffer data) { GLBufferChecks.ensureArrayVBOdisabled(); - nglSecondaryColorPointer(size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, data, data.position()); - } - - public static void glSecondaryColorPointer(int size, int stride, FloatBuffer data) { BufferChecks.checkDirect(data); - GLBufferChecks.ensureArrayVBOdisabled(); - nglSecondaryColorPointer(size, GL11.GL_FLOAT, stride, data, data.position() << 2); + nglFogCoordPointer(GL11.GL_FLOAT, stride, data, data.position() << 2); } - private static native void nglSecondaryColorPointer(int size, int type, int stride, Buffer data, int data_offset); - - public static void glSecondaryColorPointer(int size, int type, int stride, int buffer_offset) { + private static native void nglFogCoordPointer(int type, int stride, Buffer data, int data_position); + public static void glFogCoordPointer(int type, int stride, int data_buffer_offset) { GLBufferChecks.ensureArrayVBOenabled(); - nglSecondaryColorPointerVBO(size, type, stride, buffer_offset); + nglFogCoordPointerBO(type, stride, data_buffer_offset); } - private static native void nglSecondaryColorPointerVBO(int size, int type, int stride, int buffer_offset); + private static native void nglFogCoordPointerBO(int type, int stride, int data_buffer_offset); - public static native void glBlendFuncSeparate(int sfactorRGB, int dfactorRGB, int sfactorAlpha, int dfactorAlpha); + public static native void glFogCoordf(float coord); - public static native void glWindowPos2f(float x, float y); + public static native void glBlendColor(float red, float green, float blue, float alpha); - public static native void glWindowPos2i(int x, int y); - - public static native void glWindowPos3f(float x, float y, float z); - - public static native void glWindowPos3i(int x, int y, int z); + public static native void glBlendEquation(int mode); } - diff --git a/src/java/org/lwjgl/opengl/GL15.java b/src/java/org/lwjgl/opengl/GL15.java index 21e4d8c0..37e0f0c2 100644 --- a/src/java/org/lwjgl/opengl/GL15.java +++ b/src/java/org/lwjgl/opengl/GL15.java @@ -1,192 +1,103 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -import org.lwjgl.BufferChecks; import org.lwjgl.LWJGLException; - +import org.lwjgl.BufferChecks; import java.nio.*; public final class GL15 { - - // ---------------------------------------------------------------------- - // ---------------------- ARB_vertex_buffer_object ---------------------- - // ---------------------------------------------------------------------- - - public static final int GL_ARRAY_BUFFER = 0x8892; - public static final int GL_ELEMENT_ARRAY_BUFFER = 0x8893; - public static final int GL_ARRAY_BUFFER_BINDING = 0x8894; - public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895; - public static final int GL_VERTEX_ARRAY_BUFFER_BINDING = 0x8896; - public static final int GL_NORMAL_ARRAY_BUFFER_BINDING = 0x8897; - public static final int GL_COLOR_ARRAY_BUFFER_BINDING = 0x8898; - public static final int GL_INDEX_ARRAY_BUFFER_BINDING = 0x8899; - public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 0x889A; - public static final int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = 0x889B; - public static final int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = 0x889C; - public static final int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = 0x889D; - public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING = 0x889E; - public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F; - public static final int GL_STREAM_DRAW = 0x88E0; - public static final int GL_STREAM_READ = 0x88E1; - public static final int GL_STREAM_COPY = 0x88E2; - public static final int GL_STATIC_DRAW = 0x88E4; - public static final int GL_STATIC_READ = 0x88E5; - public static final int GL_STATIC_COPY = 0x88E6; - public static final int GL_DYNAMIC_DRAW = 0x88E8; - public static final int GL_DYNAMIC_READ = 0x88E9; - public static final int GL_DYNAMIC_COPY = 0x88EA; - public static final int GL_READ_ONLY = 0x88B8; - public static final int GL_WRITE_ONLY = 0x88B9; - public static final int GL_READ_WRITE = 0x88BA; - public static final int GL_BUFFER_SIZE = 0x8764; + public static final int GL_QUERY_RESULT_AVAILABLE = 0x8867; + public static final int GL_QUERY_RESULT = 0x8866; + public static final int GL_CURRENT_QUERY = 0x8865; + public static final int GL_QUERY_COUNTER_BITS = 0x8864; + public static final int GL_SAMPLES_PASSED = 0x8914; + public static final int GL_BUFFER_MAP_POINTER = 0x88bd; + public static final int GL_BUFFER_MAPPED = 0x88bc; + public static final int GL_BUFFER_ACCESS = 0x88bb; public static final int GL_BUFFER_USAGE = 0x8765; - public static final int GL_BUFFER_ACCESS = 0x88BB; - public static final int GL_BUFFER_MAPPED = 0x88BC; - public static final int GL_BUFFER_MAP_POINTER = 0x88BD; + public static final int GL_BUFFER_SIZE = 0x8764; + public static final int GL_READ_WRITE = 0x88ba; + public static final int GL_WRITE_ONLY = 0x88b9; + public static final int GL_READ_ONLY = 0x88b8; + public static final int GL_DYNAMIC_COPY = 0x88ea; + public static final int GL_DYNAMIC_READ = 0x88e9; + public static final int GL_DYNAMIC_DRAW = 0x88e8; + public static final int GL_STATIC_COPY = 0x88e6; + public static final int GL_STATIC_READ = 0x88e5; + public static final int GL_STATIC_DRAW = 0x88e4; + public static final int GL_STREAM_COPY = 0x88e2; + public static final int GL_STREAM_READ = 0x88e1; + public static final int GL_STREAM_DRAW = 0x88e0; + public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889f; + public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING = 0x889e; + public static final int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = 0x889d; + public static final int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = 0x889c; + public static final int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = 0x889b; + public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 0x889a; + public static final int GL_INDEX_ARRAY_BUFFER_BINDING = 0x8899; + public static final int GL_COLOR_ARRAY_BUFFER_BINDING = 0x8898; + public static final int GL_NORMAL_ARRAY_BUFFER_BINDING = 0x8897; + public static final int GL_VERTEX_ARRAY_BUFFER_BINDING = 0x8896; + public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895; + public static final int GL_ARRAY_BUFFER_BINDING = 0x8894; + public static final int GL_ELEMENT_ARRAY_BUFFER = 0x8893; + public static final int GL_ARRAY_BUFFER = 0x8892; private GL15() { } static native void initNativeStubs() throws LWJGLException; - public static void glBindBuffer(int target, int buffer) { - switch ( target ) { - case GL_ELEMENT_ARRAY_BUFFER: - BufferObjectTracker.getVBOElementStack().setState(buffer); - break; - case GL_ARRAY_BUFFER: - BufferObjectTracker.getVBOArrayStack().setState(buffer); - break; - default: - throw new IllegalArgumentException("Unsupported VBO target " + target); - } - nglBindBuffer(target, buffer); + public static void glGetQueryObjectu(int id, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetQueryObjectuiv(id, pname, params, params.position()); } + private static native void nglGetQueryObjectuiv(int id, int pname, IntBuffer params, int params_position); - private static native void nglBindBuffer(int target, int buffer); - - public static void glDeleteBuffers(IntBuffer buffers) { - BufferChecks.checkDirect(buffers); - for ( int i = buffers.position(); i < buffers.limit(); i++ ) { - int buffer_handle = buffers.get(i); - if ( BufferObjectTracker.getVBOElementStack().getState() == buffer_handle ) - BufferObjectTracker.getVBOElementStack().setState(0); - if ( BufferObjectTracker.getVBOArrayStack().getState() == buffer_handle ) - BufferObjectTracker.getVBOArrayStack().setState(0); - } - nglDeleteBuffers(buffers.remaining(), buffers, buffers.position()); + public static void glGetQueryObject(int id, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetQueryObjectiv(id, pname, params, params.position()); } + private static native void nglGetQueryObjectiv(int id, int pname, IntBuffer params, int params_position); - private static native void nglDeleteBuffers(int n, IntBuffer buffers, int buffers_offset); - - public static void glGenBuffers(IntBuffer buffers) { - BufferChecks.checkDirect(buffers); - nglGenBuffers(buffers.remaining(), buffers, buffers.position()); + public static void glGetQuery(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetQueryiv(target, pname, params, params.position()); } + private static native void nglGetQueryiv(int target, int pname, IntBuffer params, int params_position); - private static native void nglGenBuffers(int n, IntBuffer buffers, int buffers_offset); + public static native void glEndQuery(int target); - public static native boolean glIsBuffer(int buffer); + public static native void glBeginQuery(int target, int id); - public static void glBufferData(int target, int size, int usage) { - nglBufferData(target, size, null, 0, usage); + public static native boolean glIsQuery(int id); + + public static void glDeleteQueries(IntBuffer ids) { + BufferChecks.checkDirect(ids); + nglDeleteQueries((ids.remaining()), ids, ids.position()); } + private static native void nglDeleteQueries(int n, IntBuffer ids, int ids_position); - public static void glBufferData(int target, ByteBuffer data, int usage) { - BufferChecks.checkDirect(data); - nglBufferData(target, data.remaining(), data, data.position(), usage); + public static void glGenQueries(IntBuffer ids) { + BufferChecks.checkDirect(ids); + nglGenQueries((ids.remaining()), ids, ids.position()); } + private static native void nglGenQueries(int n, IntBuffer ids, int ids_position); - public static void glBufferData(int target, ShortBuffer data, int usage) { - BufferChecks.checkDirect(data); - nglBufferData(target, data.remaining() << 1, data, data.position() << 1, usage); + public static java.nio.ByteBuffer glGetBufferPointer(int target, int pname, int result_size) { + java.nio.ByteBuffer __result = nglGetBufferPointerv(target, pname, result_size); + return __result; } + private static native java.nio.ByteBuffer nglGetBufferPointerv(int target, int pname, int result_size); - public static void glBufferData(int target, FloatBuffer data, int usage) { - BufferChecks.checkDirect(data); - nglBufferData(target, data.remaining() << 2, data, data.position() << 2, usage); + public static void glGetBufferParameter(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetBufferParameteriv(target, pname, params, params.position()); } + private static native void nglGetBufferParameteriv(int target, int pname, IntBuffer params, int params_position); - public static void glBufferData(int target, IntBuffer data, int usage) { - BufferChecks.checkDirect(data); - nglBufferData(target, data.remaining() << 2, data, data.position() << 2, usage); - } - - private static native void nglBufferData(int target, int size, Buffer data, int data_offset, int usage); - - public static void glBufferSubData(int target, int offset, ByteBuffer data) { - BufferChecks.checkDirect(data); - nglBufferSubData(target, offset, data.remaining(), data, data.position()); - } - - public static void glBufferSubData(int target, int offset, ShortBuffer data) { - BufferChecks.checkDirect(data); - nglBufferSubData(target, offset, data.remaining() << 1, data, data.position() << 1); - } - - public static void glBufferSubData(int target, int offset, FloatBuffer data) { - BufferChecks.checkDirect(data); - nglBufferSubData(target, offset, data.remaining() << 2, data, data.position() << 2); - } - - public static void glBufferSubData(int target, int offset, IntBuffer data) { - BufferChecks.checkDirect(data); - nglBufferSubData(target, offset, data.remaining() << 2, data, data.position() << 2); - } - - private static native void nglBufferSubData(int target, int offset, int size, Buffer data, int data_offset); - - public static void glGetBufferSubData(int target, int offset, ByteBuffer data) { - BufferChecks.checkDirect(data); - nglGetBufferSubData(target, offset, data.remaining(), data, data.position()); - } - - public static void glGetBufferSubData(int target, int offset, ShortBuffer data) { - BufferChecks.checkDirect(data); - nglGetBufferSubData(target, offset, data.remaining() << 1, data, data.position() << 1); - } - - public static void glGetBufferSubData(int target, int offset, IntBuffer data) { - BufferChecks.checkDirect(data); - nglGetBufferSubData(target, offset, data.remaining() << 2, data, data.position() << 2); - } - - public static void glGetBufferSubData(int target, int offset, FloatBuffer data) { - BufferChecks.checkDirect(data); - nglGetBufferSubData(target, offset, data.remaining() << 2, data, data.position() << 2); - } - - private static native void nglGetBufferSubData(int target, int offset, int size, Buffer data, int data_offset); + public static native boolean glUnmapBuffer(int target); /** * glMapBuffer maps a gl vertex buffer buffer to a ByteBuffer. The oldBuffer argument can be null, in which case a new @@ -196,98 +107,94 @@ public final class GL15 { *

* ByteBuffer mapped_buffer; mapped_buffer = glMapBuffer(..., ..., ..., null); ... // Another map on the same buffer * mapped_buffer = glMapBuffer(..., ..., ..., mapped_buffer); - * - * @param size The size of the buffer area. - * @param oldBuffer A ByteBuffer. If this argument points to the same address as the new mapping, it will be returned and no + * @param result_size The size of the buffer area. + * @param old_buffer A ByteBuffer. If this argument points to the same address as the new mapping, it will be returned and no * new buffer will be created. In that case, size is ignored. - * * @return A ByteBuffer representing the mapped buffer memory. */ - public static native ByteBuffer glMapBuffer(int target, int access, int size, ByteBuffer oldBuffer); - - public static native boolean glUnmapBuffer(int target); - - public static void glGetBufferParameter(int target, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetBufferParameteriv(target, pname, params, params.position()); + public static java.nio.ByteBuffer glMapBuffer(int target, int access, int result_size, java.nio.ByteBuffer old_buffer) { + if (old_buffer != null) + BufferChecks.checkDirect(old_buffer); + java.nio.ByteBuffer __result = nglMapBuffer(target, access, result_size, old_buffer); + return __result; } + private static native java.nio.ByteBuffer nglMapBuffer(int target, int access, int result_size, java.nio.ByteBuffer old_buffer); - private static native void nglGetBufferParameteriv(int target, int pname, IntBuffer params, int params_offset); - - public static native ByteBuffer glGetBufferPointer(int target, int pname, int size); - - // ----------------------------------------------------------------- - // ---------------------- ARB_occlusion_query ---------------------- - // ----------------------------------------------------------------- - - /* - * Accepted by the parameter of BeginQuery, EndQuery, - * and GetQueryiv: - */ - public static final int GL_SAMPLES_PASSED = 0x8914; - - /* - Accepted by the parameter of GetQueryiv: - */ - public static final int GL_QUERY_COUNTER_BITS = 0x8864; - public static final int GL_CURRENT_QUERY = 0x8865; - - /* - Accepted by the parameter of GetQueryObjectiv and - GetQueryObjectuiv: - */ - public static final int GL_QUERY_RESULT = 0x8866; - public static final int GL_QUERY_RESULT_AVAILABLE = 0x8867; - - // --------------------------- - public static void glGenQueries(IntBuffer ids) { - BufferChecks.checkDirect(ids); - nglGenQueries(ids.remaining(), ids, ids.position()); + public static void glGetBufferSubData(int target, int offset, ShortBuffer data) { + BufferChecks.checkDirect(data); + nglGetBufferSubData(target, offset, (data.remaining() << 1), data, data.position() << 1); } - - private static native void nglGenQueries(int n, IntBuffer ids, int idsOffset); - // --------------------------- - - // --------------------------- - public static void glDeleteQueries(IntBuffer ids) { - BufferChecks.checkDirect(ids); - nglDeleteQueries(ids.remaining(), ids, ids.position()); + public static void glGetBufferSubData(int target, int offset, IntBuffer data) { + BufferChecks.checkDirect(data); + nglGetBufferSubData(target, offset, (data.remaining() << 2), data, data.position() << 2); } - - private static native void nglDeleteQueries(int n, IntBuffer ids, int idsOffset); - // --------------------------- - - public static native boolean glIsQuery(int id); - - public static native void glBeginQuery(int target, int id); - - public static native void glEndQuery(int target); - - // --------------------------- - public static void glGetQuery(int target, int pname, IntBuffer params) { - BufferChecks.checkDirect(params); - nglGetQueryiv(target, pname, params, params.position()); + public static void glGetBufferSubData(int target, int offset, FloatBuffer data) { + BufferChecks.checkDirect(data); + nglGetBufferSubData(target, offset, (data.remaining() << 2), data, data.position() << 2); } - - private static native void nglGetQueryiv(int target, int pname, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetQueryObject(int id, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetQueryObjectiv(id, pname, params, params.position()); + public static void glGetBufferSubData(int target, int offset, ByteBuffer data) { + BufferChecks.checkDirect(data); + nglGetBufferSubData(target, offset, (data.remaining()), data, data.position()); } + private static native void nglGetBufferSubData(int target, int offset, int size, Buffer data, int data_position); - private static native void nglGetQueryObjectiv(int id, int pname, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetQueryObjectu(int id, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetQueryObjectuiv(id, pname, params, params.position()); + public static void glBufferSubData(int target, int offset, ShortBuffer data) { + BufferChecks.checkDirect(data); + nglBufferSubData(target, offset, (data.remaining() << 1), data, data.position() << 1); } + public static void glBufferSubData(int target, int offset, IntBuffer data) { + BufferChecks.checkDirect(data); + nglBufferSubData(target, offset, (data.remaining() << 2), data, data.position() << 2); + } + public static void glBufferSubData(int target, int offset, FloatBuffer data) { + BufferChecks.checkDirect(data); + nglBufferSubData(target, offset, (data.remaining() << 2), data, data.position() << 2); + } + public static void glBufferSubData(int target, int offset, ByteBuffer data) { + BufferChecks.checkDirect(data); + nglBufferSubData(target, offset, (data.remaining()), data, data.position()); + } + private static native void nglBufferSubData(int target, int offset, int size, Buffer data, int data_position); - private static native void nglGetQueryObjectuiv(int id, int pname, IntBuffer params, int paramsOffset); - // --------------------------- + public static void glBufferData(int target, int size, int usage) { + nglBufferData(target, size, null, 0, usage); + } + public static void glBufferData(int target, ShortBuffer data, int usage) { + BufferChecks.checkDirect(data); + nglBufferData(target, (data.remaining() << 1), data, data.position() << 1, usage); + } + public static void glBufferData(int target, IntBuffer data, int usage) { + BufferChecks.checkDirect(data); + nglBufferData(target, (data.remaining() << 2), data, data.position() << 2, usage); + } + public static void glBufferData(int target, FloatBuffer data, int usage) { + BufferChecks.checkDirect(data); + nglBufferData(target, (data.remaining() << 2), data, data.position() << 2, usage); + } + public static void glBufferData(int target, ByteBuffer data, int usage) { + BufferChecks.checkDirect(data); + nglBufferData(target, (data.remaining()), data, data.position(), usage); + } + private static native void nglBufferData(int target, int size, Buffer data, int data_position, int usage); + public static native boolean glIsBuffer(int buffer); + + public static void glGenBuffers(IntBuffer buffers) { + BufferChecks.checkDirect(buffers); + nglGenBuffers((buffers.remaining()), buffers, buffers.position()); + } + private static native void nglGenBuffers(int n, IntBuffer buffers, int buffers_position); + + public static void glDeleteBuffers(IntBuffer buffers) { + BufferChecks.checkDirect(buffers); + BufferObjectTracker.deleteBuffers(buffers); + nglDeleteBuffers((buffers.remaining()), buffers, buffers.position()); + } + private static native void nglDeleteBuffers(int n, IntBuffer buffers, int buffers_position); + + public static void glBindBuffer(int target, int buffer) { + BufferObjectTracker.bindBuffer(target, buffer); + nglBindBuffer(target, buffer); + } + private static native void nglBindBuffer(int target, int buffer); } diff --git a/src/java/org/lwjgl/opengl/GL20.java b/src/java/org/lwjgl/opengl/GL20.java index 2baa033d..294e8854 100644 --- a/src/java/org/lwjgl/opengl/GL20.java +++ b/src/java/org/lwjgl/opengl/GL20.java @@ -1,740 +1,418 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -import org.lwjgl.BufferChecks; import org.lwjgl.LWJGLException; - +import org.lwjgl.BufferChecks; import java.nio.*; public final class GL20 { + public static final int GL_BLEND_EQUATION_ALPHA = 0x883d; + public static final int GL_BLEND_EQUATION_RGB = 0x8009; + public static final int GL_STENCIL_BACK_WRITEMASK = 0x8ca5; + public static final int GL_STENCIL_BACK_VALUE_MASK = 0x8ca4; + public static final int GL_STENCIL_BACK_REF = 0x8ca3; + public static final int GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803; + public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802; + public static final int GL_STENCIL_BACK_FAIL = 0x8801; + public static final int GL_STENCIL_BACK_FUNC = 0x8800; + public static final int GL_UPPER_LEFT = 0x8ca2; + public static final int GL_LOWER_LEFT = 0x8ca1; + public static final int GL_POINT_SPRITE_COORD_ORIGIN = 0x8ca0; + public static final int GL_COORD_REPLACE = 0x8862; + public static final int GL_POINT_SPRITE = 0x8861; + public static final int GL_DRAW_BUFFER15 = 0x8834; + public static final int GL_DRAW_BUFFER14 = 0x8833; + public static final int GL_DRAW_BUFFER13 = 0x8832; + public static final int GL_DRAW_BUFFER12 = 0x8831; + public static final int GL_DRAW_BUFFER11 = 0x8830; + public static final int GL_DRAW_BUFFER10 = 0x882f; + public static final int GL_DRAW_BUFFER9 = 0x882e; + public static final int GL_DRAW_BUFFER8 = 0x882d; + public static final int GL_DRAW_BUFFER7 = 0x882c; + public static final int GL_DRAW_BUFFER6 = 0x882b; + public static final int GL_DRAW_BUFFER5 = 0x882a; + public static final int GL_DRAW_BUFFER4 = 0x8829; + public static final int GL_DRAW_BUFFER3 = 0x8828; + public static final int GL_DRAW_BUFFER2 = 0x8827; + public static final int GL_DRAW_BUFFER1 = 0x8826; + public static final int GL_DRAW_BUFFER0 = 0x8825; + public static final int GL_MAX_DRAW_BUFFERS = 0x8824; + public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8b8b; + public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8b49; + public static final int GL_FRAGMENT_SHADER = 0x8b30; + public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645; + public static final int GL_CURRENT_VERTEX_ATTRIB = 0x8626; + public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886a; + public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625; + public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624; + public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623; + public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622; + public static final int GL_VERTEX_PROGRAM_TWO_SIDE = 0x8643; + public static final int GL_VERTEX_PROGRAM_POINT_SIZE = 0x8642; + public static final int GL_MAX_TEXTURE_COORDS = 0x8871; + public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8b4d; + public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8b4c; + public static final int GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872; + public static final int GL_MAX_VERTEX_ATTRIBS = 0x8869; + public static final int GL_MAX_VARYING_FLOATS = 0x8b4b; + public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8b4a; + public static final int GL_VERTEX_SHADER = 0x8b31; + public static final int GL_SAMPLER_2D_SHADOW = 0x8b62; + public static final int GL_SAMPLER_1D_SHADOW = 0x8b61; + public static final int GL_SAMPLER_CUBE = 0x8b60; + public static final int GL_SAMPLER_3D = 0x8b5f; + public static final int GL_SAMPLER_2D = 0x8b5e; + public static final int GL_SAMPLER_1D = 0x8b5d; + public static final int GL_FLOAT_MAT4 = 0x8b5c; + public static final int GL_FLOAT_MAT3 = 0x8b5b; + public static final int GL_FLOAT_MAT2 = 0x8b5a; + public static final int GL_BOOL_VEC4 = 0x8b59; + public static final int GL_BOOL_VEC3 = 0x8b58; + public static final int GL_BOOL_VEC2 = 0x8b57; + public static final int GL_BOOL = 0x8b56; + public static final int GL_INT_VEC4 = 0x8b55; + public static final int GL_INT_VEC3 = 0x8b54; + public static final int GL_INT_VEC2 = 0x8b53; + public static final int GL_FLOAT_VEC4 = 0x8b52; + public static final int GL_FLOAT_VEC3 = 0x8b51; + public static final int GL_FLOAT_VEC2 = 0x8b50; + public static final int GL_SHADER_OBJECT = 0x8b48; + public static final int GL_SHADER_SOURCE_LENGTH = 0x8b88; + public static final int GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8b8a; + public static final int GL_ACTIVE_ATTRIBUTES = 0x8b89; + public static final int GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8b87; + public static final int GL_ACTIVE_UNIFORMS = 0x8b86; + public static final int GL_ATTACHED_SHADERS = 0x8b85; + public static final int GL_INFO_LOG_LENGTH = 0x8b84; + public static final int GL_VALIDATE_STATUS = 0x8b83; + public static final int GL_LINK_STATUS = 0x8b82; + public static final int GL_COMPILE_STATUS = 0x8b81; + public static final int GL_DELETE_STATUS = 0x8b80; + public static final int GL_SHADER_TYPE = 0x8b4f; + public static final int GL_CURRENT_PROGRAM = 0x8b8d; + public static final int GL_SHADING_LANGUAGE_VERSION = 0x8b8c; private GL20() { } static native void initNativeStubs() throws LWJGLException; - // ------------------------------------------------------------------ - // ----------------------[ ARB_shading_language_100 ]---------------------- - // ------------------------------------------------------------------ + public static native void glBlendEquationSeparate(int modeRGB, int modeAlpha); - /* - * Accepted by the parameter of GetString: - */ - public static final int GL_SHADING_LANGUAGE_VERSION = 0x8B8C; + public static native void glStencilMaskSeparate(int face, int mask); - // ------------------------------------------------------------------ - // ----------------------[ ARB_shader_objects ]---------------------- - // ------------------------------------------------------------------ + public static native void glStencilFuncSeparate(int face, int func, int ref, int mask); - /* - * Accepted by the argument of GetInteger: - */ - public static final int GL_CURRENT_PROGRAM = 0x8B8D; + public static native void glStencilOpSeparate(int face, int sfail, int dpfail, int dppass); - /* - * Accepted by the parameter of GetObjectParameter{fi}vARB: - */ - public static final int GL_SHADER_TYPE = 0x8B4F; - public static final int GL_DELETE_STATUS = 0x8B80; - public static final int GL_COMPILE_STATUS = 0x8B81; - public static final int GL_LINK_STATUS = 0x8B82; - public static final int GL_VALIDATE_STATUS = 0x8B83; - public static final int GL_INFO_LOG_LENGTH = 0x8B84; - public static final int GL_ATTACHED_SHADERS = 0x8B85; - public static final int GL_ACTIVE_UNIFORMS = 0x8B86; - public static final int GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87; - public static final int GL_ACTIVE_ATTRIBUTES = 0x8B89; - public static final int GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A; - public static final int GL_SHADER_SOURCE_LENGTH = 0x8B88; + public static void glDrawBuffers(IntBuffer buffers) { + BufferChecks.checkDirect(buffers); + nglDrawBuffers((buffers.remaining()), buffers, buffers.position()); + } + private static native void nglDrawBuffers(int size, IntBuffer buffers, int buffers_position); - /* - * Returned by the parameter of GetObjectParameter{fi}vARB: - */ - public static final int GL_SHADER_OBJECT = 0x8B48; + public static int glGetAttribLocation(int program, ByteBuffer name) { + BufferChecks.checkDirect(name); + BufferChecks.checkNullTerminated(name); + int __result = nglGetAttribLocation(program, name, name.position()); + return __result; + } + private static native int nglGetAttribLocation(int program, ByteBuffer name, int name_position); - /* - * Returned by the parameter of GetActiveUniformARB: - */ - public static final int GL_FLOAT_VEC2 = 0x8B50; - public static final int GL_FLOAT_VEC3 = 0x8B51; - public static final int GL_FLOAT_VEC4 = 0x8B52; - public static final int GL_INT_VEC2 = 0x8B53; - public static final int GL_INT_VEC3 = 0x8B54; - public static final int GL_INT_VEC4 = 0x8B55; - public static final int GL_BOOL = 0x8B56; - public static final int GL_BOOL_VEC2 = 0x8B57; - public static final int GL_BOOL_VEC3 = 0x8B58; - public static final int GL_BOOL_VEC4 = 0x8B59; - public static final int GL_FLOAT_MAT2 = 0x8B5A; - public static final int GL_FLOAT_MAT3 = 0x8B5B; - public static final int GL_FLOAT_MAT4 = 0x8B5C; - public static final int GL_SAMPLER_1D = 0x8B5D; - public static final int GL_SAMPLER_2D = 0x8B5E; - public static final int GL_SAMPLER_3D = 0x8B5F; - public static final int GL_SAMPLER_CUBE = 0x8B60; - public static final int GL_SAMPLER_1D_SHADOW = 0x8B61; - public static final int GL_SAMPLER_2D_SHADOW = 0x8B62; + public static void glGetActiveAttrib(int program, int index, IntBuffer length, IntBuffer size, IntBuffer type, ByteBuffer name) { + if (length != null) + BufferChecks.checkBuffer(length, 1); + BufferChecks.checkBuffer(size, 1); + BufferChecks.checkBuffer(type, 1); + BufferChecks.checkDirect(name); + nglGetActiveAttrib(program, index, (name.remaining()), length, length != null ? length.position() : 0, size, size.position(), type, type.position(), name, name.position()); + } + private static native void nglGetActiveAttrib(int program, int index, int maxLength, IntBuffer length, int length_position, IntBuffer size, int size_position, IntBuffer type, int type_position, ByteBuffer name, int name_position); + + public static void glBindAttribLocation(int program, int index, ByteBuffer name) { + BufferChecks.checkDirect(name); + BufferChecks.checkNullTerminated(name); + nglBindAttribLocation(program, index, name, name.position()); + } + private static native void nglBindAttribLocation(int program, int index, ByteBuffer name, int name_position); + + public static java.nio.ByteBuffer glGetVertexAttribPointer(int index, int pname, int result_size) { + java.nio.ByteBuffer __result = nglGetVertexAttribPointerv(index, pname, result_size); + return __result; + } + private static native java.nio.ByteBuffer nglGetVertexAttribPointerv(int index, int pname, int result_size); + + public static void glGetVertexAttrib(int index, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetVertexAttribiv(index, pname, params, params.position()); + } + private static native void nglGetVertexAttribiv(int index, int pname, IntBuffer params, int params_position); + + public static void glGetVertexAttrib(int index, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetVertexAttribfv(index, pname, params, params.position()); + } + private static native void nglGetVertexAttribfv(int index, int pname, FloatBuffer params, int params_position); + + public static native void glDisableVertexAttribArray(int index); + + public static native void glEnableVertexAttribArray(int index); + + public static void glVertexAttribPointer(int index, int size, boolean unsigned, boolean normalized, int stride, IntBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointer(index, size, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, normalized, stride, buffer, buffer.position() << 2); + } + public static void glVertexAttribPointer(int index, int size, boolean unsigned, boolean normalized, int stride, ShortBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointer(index, size, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, normalized, stride, buffer, buffer.position() << 1); + } + public static void glVertexAttribPointer(int index, int size, boolean normalized, int stride, FloatBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointer(index, size, GL11.GL_FLOAT, normalized, stride, buffer, buffer.position() << 2); + } + public static void glVertexAttribPointer(int index, int size, boolean unsigned, boolean normalized, int stride, ByteBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointer(index, size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, normalized, stride, buffer, buffer.position()); + } + private static native void nglVertexAttribPointer(int index, int size, int type, boolean normalized, int stride, Buffer buffer, int buffer_position); + public static void glVertexAttribPointer(int index, int size, int type, boolean normalized, int stride, int buffer_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglVertexAttribPointerBO(index, size, type, normalized, stride, buffer_buffer_offset); + } + private static native void nglVertexAttribPointerBO(int index, int size, int type, boolean normalized, int stride, int buffer_buffer_offset); + + public static native void glVertexAttrib4Nub(int index, byte x, byte y, byte z, byte w); + + public static native void glVertexAttrib4f(int index, float x, float y, float z, float w); + + public static native void glVertexAttrib4s(int index, short x, short y, short z, short w); + + public static native void glVertexAttrib3f(int index, float x, float y, float z); + + public static native void glVertexAttrib3s(int index, short x, short y, short z); + + public static native void glVertexAttrib2f(int index, float x, float y); + + public static native void glVertexAttrib2s(int index, short x, short y); + + public static native void glVertexAttrib1f(int index, float x); + + public static native void glVertexAttrib1s(int index, short x); + + public static void glGetShaderSource(int shader, IntBuffer length, ByteBuffer source) { + if (length != null) + BufferChecks.checkBuffer(length, 1); + BufferChecks.checkDirect(source); + nglGetShaderSource(shader, (source.remaining()), length, length != null ? length.position() : 0, source, source.position()); + } + private static native void nglGetShaderSource(int shader, int maxLength, IntBuffer length, int length_position, ByteBuffer source, int source_position); + + public static void glGetUniform(int program, int location, IntBuffer params) { + BufferChecks.checkDirect(params); + nglGetUniformiv(program, location, params, params.position()); + } + private static native void nglGetUniformiv(int program, int location, IntBuffer params, int params_position); + + public static void glGetUniform(int program, int location, FloatBuffer params) { + BufferChecks.checkDirect(params); + nglGetUniformfv(program, location, params, params.position()); + } + private static native void nglGetUniformfv(int program, int location, FloatBuffer params, int params_position); + + public static void glGetActiveUniform(int program, int index, IntBuffer length, IntBuffer size, IntBuffer type, ByteBuffer name) { + if (length != null) + BufferChecks.checkBuffer(length, 1); + BufferChecks.checkDirect(size); + BufferChecks.checkDirect(type); + BufferChecks.checkDirect(name); + nglGetActiveUniform(program, index, (name.remaining()), length, length != null ? length.position() : 0, size, size.position(), type, type.position(), name, name.position()); + } + private static native void nglGetActiveUniform(int program, int index, int maxLength, IntBuffer length, int length_position, IntBuffer size, int size_position, IntBuffer type, int type_position, ByteBuffer name, int name_position); + + /** + * Returns the location of the uniform with the specified name. The ByteBuffer should contain the uniform name as a + * null-terminated string. + * @param program + * @param name + * @return + */ + public static int glGetUniformLocation(int program, ByteBuffer name) { + BufferChecks.checkBuffer(name, 1); + BufferChecks.checkNullTerminated(name); + int __result = nglGetUniformLocation(program, name, name.position()); + return __result; + } + private static native int nglGetUniformLocation(int program, ByteBuffer name, int name_position); + + public static void glGetAttachedShaders(int program, IntBuffer count, IntBuffer shaders) { + if (count != null) + BufferChecks.checkBuffer(count, 1); + BufferChecks.checkDirect(shaders); + nglGetAttachedShaders(program, (shaders.remaining()), count, count != null ? count.position() : 0, shaders, shaders.position()); + } + private static native void nglGetAttachedShaders(int program, int maxCount, IntBuffer count, int count_position, IntBuffer shaders, int shaders_position); + + public static void glGetProgramInfoLog(int program, IntBuffer length, ByteBuffer infoLog) { + if (length != null) + BufferChecks.checkBuffer(length, 1); + BufferChecks.checkDirect(infoLog); + nglGetProgramInfoLog(program, (infoLog.remaining()), length, length != null ? length.position() : 0, infoLog, infoLog.position()); + } + private static native void nglGetProgramInfoLog(int program, int maxLength, IntBuffer length, int length_position, ByteBuffer infoLog, int infoLog_position); + + public static void glGetShaderInfoLog(int shader, IntBuffer length, ByteBuffer infoLog) { + if (length != null) + BufferChecks.checkBuffer(length, 1); + BufferChecks.checkDirect(infoLog); + nglGetShaderInfoLog(shader, (infoLog.remaining()), length, length != null ? length.position() : 0, infoLog, infoLog.position()); + } + private static native void nglGetShaderInfoLog(int shader, int maxLength, IntBuffer length, int length_position, ByteBuffer infoLog, int infoLog_position); + + public static void glGetProgram(int program, int pname, IntBuffer params) { + BufferChecks.checkDirect(params); + nglGetProgramiv(program, pname, params, params.position()); + } + private static native void nglGetProgramiv(int program, int pname, IntBuffer params, int params_position); + + public static void glGetProgram(int program, int pname, FloatBuffer params) { + BufferChecks.checkDirect(params); + nglGetProgramfv(program, pname, params, params.position()); + } + private static native void nglGetProgramfv(int program, int pname, FloatBuffer params, int params_position); + + public static void glGetShader(int shader, int pname, IntBuffer params) { + BufferChecks.checkDirect(params); + nglGetShaderiv(shader, pname, params, params.position()); + } + private static native void nglGetShaderiv(int shader, int pname, IntBuffer params, int params_position); + + public static void glGetShader(int shader, int pname, FloatBuffer params) { + BufferChecks.checkDirect(params); + nglGetShaderfv(shader, pname, params, params.position()); + } + private static native void nglGetShaderfv(int shader, int pname, FloatBuffer params, int params_position); + + public static void glUniformMatrix4(int location, boolean transpose, FloatBuffer matrices) { + BufferChecks.checkDirect(matrices); + nglUniformMatrix4fv(location, (matrices.remaining()) >> 4, transpose, matrices, matrices.position()); + } + private static native void nglUniformMatrix4fv(int location, int count, boolean transpose, FloatBuffer matrices, int matrices_position); + + public static void glUniformMatrix3(int location, boolean transpose, FloatBuffer matrices) { + BufferChecks.checkDirect(matrices); + nglUniformMatrix3fv(location, (matrices.remaining()) / (3 * 3), transpose, matrices, matrices.position()); + } + private static native void nglUniformMatrix3fv(int location, int count, boolean transpose, FloatBuffer matrices, int matrices_position); + + public static void glUniformMatrix2(int location, boolean transpose, FloatBuffer matrices) { + BufferChecks.checkDirect(matrices); + nglUniformMatrix2fv(location, (matrices.remaining()) >> 2, transpose, matrices, matrices.position()); + } + private static native void nglUniformMatrix2fv(int location, int count, boolean transpose, FloatBuffer matrices, int matrices_position); + + public static void glUniform4(int location, IntBuffer values) { + BufferChecks.checkDirect(values); + nglUniform4iv(location, (values.remaining()) >> 2, values, values.position()); + } + private static native void nglUniform4iv(int location, int count, IntBuffer values, int values_position); + + public static void glUniform3(int location, IntBuffer values) { + BufferChecks.checkDirect(values); + nglUniform3iv(location, (values.remaining()) / 3, values, values.position()); + } + private static native void nglUniform3iv(int location, int count, IntBuffer values, int values_position); + + public static void glUniform2(int location, IntBuffer values) { + BufferChecks.checkDirect(values); + nglUniform2iv(location, (values.remaining()) >> 1, values, values.position()); + } + private static native void nglUniform2iv(int location, int count, IntBuffer values, int values_position); + + public static void glUniform1(int location, IntBuffer values) { + BufferChecks.checkDirect(values); + nglUniform1iv(location, (values.remaining()), values, values.position()); + } + private static native void nglUniform1iv(int location, int count, IntBuffer values, int values_position); + + public static void glUniform4(int location, FloatBuffer values) { + BufferChecks.checkDirect(values); + nglUniform4fv(location, (values.remaining()) >> 2, values, values.position()); + } + private static native void nglUniform4fv(int location, int count, FloatBuffer values, int values_position); + + public static void glUniform3(int location, FloatBuffer values) { + BufferChecks.checkDirect(values); + nglUniform3fv(location, (values.remaining()) / 3, values, values.position()); + } + private static native void nglUniform3fv(int location, int count, FloatBuffer values, int values_position); + + public static void glUniform2(int location, FloatBuffer values) { + BufferChecks.checkDirect(values); + nglUniform2fv(location, (values.remaining()) >> 1, values, values.position()); + } + private static native void nglUniform2fv(int location, int count, FloatBuffer values, int values_position); + + public static void glUniform1(int location, FloatBuffer values) { + BufferChecks.checkDirect(values); + nglUniform1fv(location, (values.remaining()), values, values.position()); + } + private static native void nglUniform1fv(int location, int count, FloatBuffer values, int values_position); + + public static native void glUniform4i(int location, int v0, int v1, int v2, int v3); + + public static native void glUniform3i(int location, int v0, int v1, int v2); + + public static native void glUniform2i(int location, int v0, int v1); + + public static native void glUniform1i(int location, int v0); + + public static native void glUniform4f(int location, float v0, float v1, float v2, float v3); + + public static native void glUniform3f(int location, float v0, float v1, float v2); + + public static native void glUniform2f(int location, float v0, float v1); + + public static native void glUniform1f(int location, float v0); + + public static native void glDeleteProgram(int program); + + public static native void glValidateProgram(int program); + + public static native void glUseProgram(int program); + + public static native void glLinkProgram(int program); + + public static native void glDetachShader(int program, int shader); + + public static native void glAttachShader(int program, int shader); + + public static native boolean glIsProgram(int program); + + public static native int glCreateProgram(); + + public static native void glDeleteShader(int shader); + + public static native void glCompileShader(int shader); + + public static native boolean glIsShader(int shader); + + public static native int glCreateShader(int type); - // --------------------------- /** * The ARB_shader_objects extension allows multiple, optionally null-terminated, source strings to define a shader program. *

* This method uses just a single string, that should NOT be null-terminated. - * * @param shader * @param string */ public static void glShaderSource(int shader, ByteBuffer string) { BufferChecks.checkDirect(string); - - initShaderSource(1); - setShaderString(0, string, string.position(), string.remaining()); - - nglShaderSource(shader); + nglShaderSource(shader, 1, string, string.position(), (string.remaining())); } - - /** - * The ARB_shader_objects extension allows multiple, optionally null-terminated, source strings to define a shader program. - *

- * This method uses an array of strings, that should NOT be null-terminated. - * - * @param shader - * @param strings - */ - public static void glShaderSource(int shader, ByteBuffer[] strings) { - if ( strings == null || strings.length == 0 ) - throw new IllegalArgumentException("Invalid shader string array."); - - initShaderSource(strings.length); - for ( int i = 0; i < strings.length; i++ ) { - BufferChecks.checkDirect(strings[i]); - setShaderString(i, strings[i], strings[i].position(), strings[i].remaining()); - } - - nglShaderSource(shader); - } - - private static native void initShaderSource(int count); - - private static native void setShaderString(int index, ByteBuffer string, int stringOffset, int stringLength); - - private static native void nglShaderSource(int shader); - // --------------------------- - - public static native int glCreateShader(int type); - - public static native boolean glIsShader(int shader); - - public static native void glCompileShader(int shader); - - public static native void glDeleteShader(int shader); - - public static native int glCreateProgram(); - - public static native boolean glIsProgram(int program); - - public static native void glAttachShader(int program, int shader); - - public static native void glDetachShader(int program, int shader); - - public static native void glLinkProgram(int program); - - public static native void glUseProgram(int program); - - public static native void glValidateProgram(int program); - - public static native void glDeleteProgram(int program); - - public static native void glUniform1f(int location, float v0); - - public static native void glUniform2f(int location, float v0, float v1); - - public static native void glUniform3f(int location, float v0, float v1, float v2); - - public static native void glUniform4f(int location, float v0, float v1, float v2, float v3); - - public static native void glUniform1i(int location, int v0); - - public static native void glUniform2i(int location, int v0, int v1); - - public static native void glUniform3i(int location, int v0, int v1, int v2); - - public static native void glUniform4i(int location, int v0, int v1, int v2, int v3); - - // --------------------------- - public static void glUniform1(int location, FloatBuffer values) { - BufferChecks.checkDirect(values); - nglUniform1fv(location, values.remaining(), values, values.position()); - } - - private static native void nglUniform1fv(int location, int count, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform2(int location, FloatBuffer values) { - BufferChecks.checkDirect(values); - nglUniform2fv(location, values.remaining() >> 1, values, values.position()); - } - - private static native void nglUniform2fv(int location, int count, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform3(int location, FloatBuffer values) { - BufferChecks.checkDirect(values); - nglUniform3fv(location, values.remaining() / 3, values, values.position()); - } - - private static native void nglUniform3fv(int location, int count, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform4(int location, FloatBuffer values) { - BufferChecks.checkDirect(values); - nglUniform4fv(location, values.remaining() >> 2, values, values.position()); - } - - private static native void nglUniform4fv(int location, int count, FloatBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform1(int location, IntBuffer values) { - BufferChecks.checkDirect(values); - nglUniform1iv(location, values.remaining(), values, values.position()); - } - - private static native void nglUniform1iv(int location, int count, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform2(int location, IntBuffer values) { - BufferChecks.checkDirect(values); - nglUniform2iv(location, values.remaining() >> 1, values, values.position()); - } - - private static native void nglUniform2iv(int location, int count, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform3(int location, IntBuffer values) { - BufferChecks.checkDirect(values); - nglUniform3iv(location, values.remaining() / 3, values, values.position()); - } - - private static native void nglUniform3iv(int location, int count, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniform4(int location, IntBuffer values) { - BufferChecks.checkDirect(values); - nglUniform4iv(location, values.remaining() >> 2, values, values.position()); - } - - private static native void nglUniform4iv(int location, int count, IntBuffer values, int valuesOffset); - // --------------------------- - - // --------------------------- - public static void glUniformMatrix2(int location, boolean transpose, FloatBuffer matrices) { - BufferChecks.checkDirect(matrices); - nglUniformMatrix2fv(location, matrices.remaining() >> 2, transpose, matrices, matrices.position()); - } - - private static native void nglUniformMatrix2fv(int location, int count, boolean transpose, - FloatBuffer matrices, int matricesOffset); - // --------------------------- - - // --------------------------- - public static void glUniformMatrix3(int location, boolean transpose, FloatBuffer matrices) { - BufferChecks.checkDirect(matrices); - nglUniformMatrix3fv(location, matrices.remaining() / (3 * 3), transpose, matrices, matrices.position()); - } - - private static native void nglUniformMatrix3fv(int location, int count, boolean transpose, - FloatBuffer matrices, int matricesOffset); - // --------------------------- - - // --------------------------- - public static void glUniformMatrix4(int location, boolean transpose, FloatBuffer matrices) { - BufferChecks.checkDirect(matrices); - nglUniformMatrix4fv(location, matrices.remaining() >> 4, transpose, matrices, matrices.position()); - } - - private static native void nglUniformMatrix4fv(int location, int count, boolean transpose, - FloatBuffer matrices, int matricesOffset); - // --------------------------- - - // --------------------------- - public static void glGetShader(int shader, int pname, FloatBuffer params) { - BufferChecks.checkDirect(params); - nglGetShaderfv(shader, pname, params, params.position()); - } - - private static native void nglGetShaderfv(int shader, int pname, FloatBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetShader(int shader, int pname, IntBuffer params) { - BufferChecks.checkDirect(params); - nglGetShaderiv(shader, pname, params, params.position()); - } - - private static native void nglGetShaderiv(int shader, int pname, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetProgram(int program, int pname, FloatBuffer params) { - BufferChecks.checkDirect(params); - nglGetProgramfv(program, pname, params, params.position()); - } - - private static native void nglGetProgramfv(int program, int pname, FloatBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetProgram(int program, int pname, IntBuffer params) { - BufferChecks.checkDirect(params); - nglGetProgramiv(program, pname, params, params.position()); - } - - private static native void nglGetProgramiv(int program, int pname, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetShaderInfoLog(int shader, IntBuffer length, ByteBuffer infoLog) { - BufferChecks.checkDirect(infoLog); - if ( length == null ) { - nglGetShaderInfoLog(shader, infoLog.remaining(), null, -1, infoLog, infoLog.position()); - } else { - BufferChecks.checkBuffer(length, 1); - nglGetShaderInfoLog(shader, infoLog.remaining(), length, length.position(), infoLog, infoLog.position()); - } - } - - private static native void nglGetShaderInfoLog(int shader, int maxLength, - IntBuffer length, int lengthOffset, - ByteBuffer infoLog, int infoLogOffset); - // --------------------------- - - // --------------------------- - public static void glGetProgramInfoLog(int program, IntBuffer length, ByteBuffer infoLog) { - BufferChecks.checkDirect(infoLog); - if ( length == null ) { - nglGetProgramInfoLog(program, infoLog.remaining(), null, -1, infoLog, infoLog.position()); - } else { - BufferChecks.checkBuffer(length, 1); - nglGetProgramInfoLog(program, infoLog.remaining(), length, length.position(), infoLog, infoLog.position()); - } - } - - private static native void nglGetProgramInfoLog(int program, int maxLength, - IntBuffer length, int lengthOffset, - ByteBuffer infoLog, int infoLogOffset); - // --------------------------- - - // --------------------------- - public static void glGetAttachedShaders(int program, IntBuffer count, IntBuffer shaders) { - if ( count == null ) - nglGetAttachedShaders(program, shaders.remaining(), null, -1, shaders, shaders.position()); - else { - if ( count.remaining() == 0 ) - throw new BufferOverflowException(); - - nglGetAttachedShaders(program, shaders.remaining(), count, count.position(), shaders, shaders.position()); - } - } - - private static native void nglGetAttachedShaders(int program, int maxCount, - IntBuffer count, int countOffset, IntBuffer shaders, int shadersOffset); - // --------------------------- - - // --------------------------- - /** - * Returns the location of the uniform with the specified name. The ByteBuffer should contain the uniform name as a - * null-terminated string. - * - * @param program - * @param name - * - * @return - */ - public static int glGetUniformLocation(int program, ByteBuffer name) { - // TODO: How do we check that the string is null-terminated? - return nglGetUniformLocation(program, name, name.position()); - } - - private static native int nglGetUniformLocation(int program, ByteBuffer name, int nameOffset); - // --------------------------- - - // --------------------------- - public static void glGetActiveUniform(int program, int index, - IntBuffer length, IntBuffer size, IntBuffer type, ByteBuffer name) { - if ( size.remaining() == 0 ) - throw new BufferOverflowException(); - - if ( type.remaining() == 0 ) - throw new BufferOverflowException(); - - if ( length == null ) - nglGetActiveUniform(program, index, name.remaining(), null, -1, - size, size.position(), type, type.position(), name, name.position()); - else { - if ( length.remaining() == 0 ) - throw new BufferOverflowException(); - - nglGetActiveUniform(program, index, name.remaining(), length, length.position(), - size, size.position(), type, type.position(), name, name.position()); - } - } - - private static native void nglGetActiveUniform(int program, int index, int maxLength, - IntBuffer length, int lengthOffset, - IntBuffer size, int sizeOffset, - IntBuffer type, int typeOffset, - ByteBuffer name, int nameOffset); - // --------------------------- - - // --------------------------- - public static void glGetUniform(int program, int location, FloatBuffer params) { - nglGetUniformfv(program, location, params, params.position()); - } - - private static native void nglGetUniformfv(int program, int location, FloatBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetUniform(int program, int location, IntBuffer params) { - nglGetUniformiv(program, location, params, params.position()); - } - - private static native void nglGetUniformiv(int program, int location, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetShaderSource(int shader, IntBuffer length, ByteBuffer source) { - if ( length == null ) - nglGetShaderSource(shader, source.remaining(), null, -1, source, source.position()); - else { - nglGetShaderSource(shader, source.remaining(), length, length.position(), source, source.position()); - } - } - - private static native void nglGetShaderSource(int shader, int maxLength, - IntBuffer length, int lengthOffset, ByteBuffer source, int sourceOffset); - // --------------------------- - - // ------------------------------------------------------------------ - // ----------------------[ ARB_vertex_program ]---------------------- - // ------------------------------------------------------------------ - - public static native void glVertexAttrib1s(int index, short x); - - public static native void glVertexAttrib1f(int index, float x); - - public static native void glVertexAttrib2s(int index, short x, short y); - - public static native void glVertexAttrib2f(int index, float x, float y); - - public static native void glVertexAttrib3s(int index, short x, short y, short z); - - public static native void glVertexAttrib3f(int index, float x, float y, float z); - - public static native void glVertexAttrib4s(int index, short x, short y, short z, short w); - - public static native void glVertexAttrib4f(int index, float x, float y, float z, float w); - - public static native void glVertexAttrib4Nub(int index, byte x, byte y, byte z, byte w); - - public static void glVertexAttribPointer(int index, int size, boolean unsigned, boolean normalized, int stride, ByteBuffer buffer) { - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointer(index, size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, normalized, stride, buffer, buffer.position()); - } - - public static void glVertexAttribPointer(int index, int size, boolean unsigned, boolean normalized, int stride, ShortBuffer buffer) { - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointer(index, size, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, normalized, stride, buffer, buffer.position() << 1); - } - - public static void glVertexAttribPointer(int index, int size, boolean normalized, int stride, FloatBuffer buffer) { - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointer(index, size, GL11.GL_FLOAT, normalized, stride, buffer, buffer.position() << 2); - } - - public static void glVertexAttribPointer(int index, int size, boolean unsigned, boolean normalized, int stride, IntBuffer buffer) { - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointer(index, size, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, normalized, stride, buffer, buffer.position() << 2); - } - - private static native void nglVertexAttribPointer(int index, int size, int type, boolean normalized, int stride, Buffer buffer, int bufferOffset); - - // --------------------------- - public static void glVertexAttribPointer(int index, int size, int type, boolean normalized, int stride, int bufferOffset) { - GLBufferChecks.ensureArrayVBOenabled(); - nglVertexAttribPointerVBO(index, size, type, normalized, stride, bufferOffset); - } - - private static native void nglVertexAttribPointerVBO(int index, int size, int type, boolean normalized, int stride, int bufferOffset); - // --------------------------- - - public static native void glEnableVertexAttribArray(int index); - - public static native void glDisableVertexAttribArray(int index); - - // --------------------------- - public static void glGetVertexAttrib(int index, int pname, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetVertexAttribfv(index, pname, params, params.position()); - } - - private static native void nglGetVertexAttribfv(int index, int pname, FloatBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- - public static void glGetVertexAttrib(int index, int pname, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetVertexAttribiv(index, pname, params, params.position()); - } - - private static native void nglGetVertexAttribiv(int index, int pname, IntBuffer params, int paramsOffset); - // --------------------------- - - public static native ByteBuffer glGetVertexAttribPointer(int index, int pname, int size); - - // ----------------------------------------------------------------- - // ----------------------[ ARB_vertex_shader ]---------------------- - // ----------------------------------------------------------------- - - /* - * Accepted by the argument of CreateShader and - * returned by the parameter of GetShader{if}v: - */ - public static final int GL_VERTEX_SHADER = 0x8B31; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ - public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A; - public static final int GL_MAX_VARYING_FLOATS = 0x8B4B; - public static final int GL_MAX_VERTEX_ATTRIBS = 0x8869; - public static final int GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872; - public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C; - public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D; - public static final int GL_MAX_TEXTURE_COORDS = 0x8871; - - /* - * Accepted by the parameter of Disable, Enable, and IsEnabled, and - * by the parameter of GetBooleanv, GetIntegerv, GetFloatv, and - * GetDoublev: - */ - public static final int GL_VERTEX_PROGRAM_POINT_SIZE = 0x8642; - public static final int GL_VERTEX_PROGRAM_TWO_SIDE = 0x8643; - - /* - * Accepted by the parameter of GetVertexAttrib{dfi}vARB: - */ - public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622; - public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623; - public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624; - public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625; - public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A; - public static final int GL_CURRENT_VERTEX_ATTRIB = 0x8626; - - /* - * Accepted by the parameter of GetVertexAttribPointervARB: - */ - public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645; - - // --------------------------- - public static void glBindAttribLocation(int program, int index, ByteBuffer name) { - BufferChecks.checkDirect(name); - if ( name.get(name.limit() - 1) != 0 ) { - throw new IllegalArgumentException(" must be a null-terminated string."); - } - nglBindAttribLocation(program, index, name, name.position()); - } - - private static native void nglBindAttribLocation(int program, int index, ByteBuffer name, int nameOffset); - // --------------------------- - - // --------------------------- - public static void glGetActiveAttrib(int program, int index, - IntBuffer length, IntBuffer size, IntBuffer type, ByteBuffer name) { - BufferChecks.checkDirect(name); - BufferChecks.checkDirect(size); - BufferChecks.checkDirect(type); - - if ( length == null ) { - nglGetActiveAttrib(program, index, name.remaining(), null, -1, - size, size.position(), type, type.position(), name, name.position()); - } else { - BufferChecks.checkDirect(length); - nglGetActiveAttrib(program, index, name.remaining(), length, length.position(), - size, size.position(), type, type.position(), name, name.position()); - } - } - - private static native void nglGetActiveAttrib(int program, int index, int maxLength, - IntBuffer length, int lengthOffset, - IntBuffer size, int sizeOffset, - IntBuffer type, int typeOffset, - ByteBuffer name, int nameOffset); - // --------------------------- - - // --------------------------- - public static int glGetAttribLocation(int program, ByteBuffer name) { - BufferChecks.checkDirect(name); - if ( name.get(name.limit() - 1) != 0 ) { - throw new IllegalArgumentException(" must be a null-terminated string."); - } - return nglGetAttribLocation(program, name, name.position()); - } - - private static native int nglGetAttribLocation(int program, ByteBuffer name, int nameOffset); - // --------------------------- - - // ------------------------------------------------------------------- - // ----------------------[ ARB_fragment_shader ]---------------------- - // ------------------------------------------------------------------- - - /* - * Accepted by the argument of CreateShader and - * returned by the parameter of GetShader{fi}vARB: - */ - public static final int GL_FRAGMENT_SHADER = 0x8B30; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ - public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49; - - /* - * Accepted by the parameter of Hint and the parameter of - * GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev: - */ - public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B; - - // ---------------------------------------------------------------- - // ----------------------[ ARB_draw_buffers ]---------------------- - // ---------------------------------------------------------------- - - /* - * Accepted by the parameters of GetIntegerv, GetFloatv, - * and GetDoublev: - */ - public static final int GL_MAX_DRAW_BUFFERS = 0x8824; - public static final int GL_DRAW_BUFFER0 = 0x8825; - public static final int GL_DRAW_BUFFER1 = 0x8826; - public static final int GL_DRAW_BUFFER2 = 0x8827; - public static final int GL_DRAW_BUFFER3 = 0x8828; - public static final int GL_DRAW_BUFFER4 = 0x8829; - public static final int GL_DRAW_BUFFER5 = 0x882A; - public static final int GL_DRAW_BUFFER6 = 0x882B; - public static final int GL_DRAW_BUFFER7 = 0x882C; - public static final int GL_DRAW_BUFFER8 = 0x882D; - public static final int GL_DRAW_BUFFER9 = 0x882E; - public static final int GL_DRAW_BUFFER10 = 0x882F; - public static final int GL_DRAW_BUFFER11 = 0x8830; - public static final int GL_DRAW_BUFFER12 = 0x8831; - public static final int GL_DRAW_BUFFER13 = 0x8832; - public static final int GL_DRAW_BUFFER14 = 0x8833; - public static final int GL_DRAW_BUFFER15 = 0x8834; - - // --------------------------- - public static void glDrawBuffers(IntBuffer buffers) { - BufferChecks.checkBuffer(buffers, 1); - nglDrawBuffers(buffers.remaining(), buffers, buffers.position()); - } - - private static native void nglDrawBuffers(int size, IntBuffer buffers, int buffersOffset); - // --------------------------- - - // ---------------------------------------------------------------- - // ----------------------[ ARB_point_sprite ]---------------------- - // ---------------------------------------------------------------- - - /* - * Accepted by the parameter of Enable, Disable, and IsEnabled, by - * the parameter of GetBooleanv, GetIntegerv, GetFloatv, and - * GetDoublev, and by the parameter of TexEnvi, TexEnviv, - * TexEnvf, TexEnvfv, GetTexEnviv, and GetTexEnvfv: - */ - public static final int GL_POINT_SPRITE = 0x8861; - - /* - * When the parameter of TexEnvf, TexEnvfv, TexEnvi, TexEnviv, - * GetTexEnvfv, or GetTexEnviv is POINT_SPRITE, then the value of - * may be: - */ - public static final int GL_COORD_REPLACE = 0x8862; - - /* - * Accepted by the parameter of PointParameter{if}vARB, and the - * of Get: - */ - public static final int GL_POINT_SPRITE_COORD_ORIGIN = 0x8CA0; - - /* - * Accepted by the parameter of PointParameter{if}vARB: - */ - public static final int GL_LOWER_LEFT = 0x8CA1; - public static final int GL_UPPER_LEFT = 0x8CA2; - - // ----------------------------------------------------------------- - // ----------------------[ Two-Sided Stencil ]---------------------- - // ----------------------------------------------------------------- - - public static final int GL_STENCIL_BACK_FUNC = 0x8800; - public static final int GL_STENCIL_BACK_FAIL = 0x8801; - public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802; - public static final int GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803; - public static final int GL_STENCIL_BACK_REF = 0x8CA3; - public static final int GL_STENCIL_BACK_VALUE_MASK = 0x8CA4; - public static final int GL_STENCIL_BACK_WRITEMASK = 0x8CA5; - - public static native void glStencilOpSeparate(int face, int sfail, int dpfail, int dppass); - - public static native void glStencilFuncSeparate(int face, int func, int ref, int mask); - - public static native void glStencilMaskSeparate(int face, int mask); - - // ------------------------------------------------------------- - // ----------------------[ EXT_blend_equation_separate ]---------------------- - // ------------------------------------------------------------- - - public static final int GL_BLEND_EQUATION_RGB = 0x8009; - public static final int GL_BLEND_EQUATION_ALPHA = 0x883D; - - public static native void glBlendEquationSeparate(int modeRGB, int modeAlpha); - -} \ No newline at end of file + private static native void nglShaderSource(int shader, int count, ByteBuffer string, int string_position, int length); +} diff --git a/src/java/org/lwjgl/opengl/GLBufferChecks.java b/src/java/org/lwjgl/opengl/GLBufferChecks.java index 98e3d60d..20e0316b 100644 --- a/src/java/org/lwjgl/opengl/GLBufferChecks.java +++ b/src/java/org/lwjgl/opengl/GLBufferChecks.java @@ -31,6 +31,8 @@ */ package org.lwjgl.opengl; +import org.lwjgl.BufferUtils; +import java.nio.*; /** * $Id$ A class to check buffer boundaries in GL methods. Many GL @@ -99,7 +101,34 @@ class GLBufferChecks { } /** - * Calculate the storage required for an image. + * Calculate the storage required for an image in elements + * + * @param format The format of the image (example: GL_RGBA) + * @param type The type of the image elements (example: GL_UNSIGNED_BYTE) + * @param width The width of the image + * @param height The height of the image (1 for 1D images) + * @param depth The depth of the image (1 for 2D images) + * + * @return the size, in elements, of the image + */ + static int calculateImageStorage(Buffer buffer, int format, int type, int width, int height, int depth) { + return calculateImageStorage(format, type, width, height, depth) >> BufferUtils.getElementSizeExponent(buffer); + } + + static int calculateTexImage1DStorage(Buffer buffer, int format, int type, int width, int border) { + return calculateTexImage1DStorage(format, type, width, border) >> BufferUtils.getElementSizeExponent(buffer); + } + + static int calculateTexImage2DStorage(Buffer buffer, int format, int type, int width, int height, int border) { + return calculateTexImage2DStorage(format, type, width, height, border) >> BufferUtils.getElementSizeExponent(buffer); + } + + static int calculateTexImage3DStorage(Buffer buffer, int format, int type, int width, int height, int depth, int border) { + return calculateTexImage3DStorage(format, type, width, height, depth, border) >> BufferUtils.getElementSizeExponent(buffer); + } + + /** + * Calculate the storage required for an image in bytes. * * @param format The format of the image (example: GL_RGBA) * @param type The type of the image elements (example: GL_UNSIGNED_BYTE) @@ -109,23 +138,23 @@ class GLBufferChecks { * * @return the size, in bytes, of the image */ - static int calculateImageStorage(int format, int type, int width, int height, int depth) { - return calculateBytesPerPixel(type, format) * width * height * depth; + private static int calculateImageStorage(int format, int type, int width, int height, int depth) { + return calculateBytesPerPixel(format, type) * width * height * depth; } - static int calculateTexImage1DStorage(int format, int type, int width, int border) { - return calculateBytesPerPixel(type, format) * (width + (border << 1)); + private static int calculateTexImage1DStorage(int format, int type, int width, int border) { + return calculateBytesPerPixel(format, type) * (width + (border << 1)); } - static int calculateTexImage2DStorage(int format, int type, int width, int height, int border) { - return calculateTexImage1DStorage(type, format, width, border) * (height + (border << 1)); + private static int calculateTexImage2DStorage(int format, int type, int width, int height, int border) { + return calculateTexImage1DStorage(format, type, width, border) * (height + (border << 1)); } - static int calculateTexImage3DStorage(int format, int type, int width, int height, int depth, int border) { - return calculateTexImage2DStorage(type, format, width, height, border) * (depth + (border << 1)); + private static int calculateTexImage3DStorage(int format, int type, int width, int height, int depth, int border) { + return calculateTexImage2DStorage(format, type, width, height, border) * (depth + (border << 1)); } - private static int calculateBytesPerPixel(int type, int format) { + private static int calculateBytesPerPixel(int format, int type) { int bpe; switch ( type ) { case GL11.GL_UNSIGNED_BYTE: diff --git a/src/java/org/lwjgl/opengl/GLContext.java b/src/java/org/lwjgl/opengl/GLContext.java index d8ea9541..4cdfa4d1 100644 --- a/src/java/org/lwjgl/opengl/GLContext.java +++ b/src/java/org/lwjgl/opengl/GLContext.java @@ -382,7 +382,7 @@ public final class GLContext { Method init_stubs_method = extension_class.getDeclaredMethod("initNativeStubs", null); init_stubs_method.invoke(null, null); } catch (Exception e) { - Sys.log("Failed to initialize extension " + extension_class); + Sys.log("Failed to initialize extension " + extension_class + " - exception: " + e); exts_it.remove(); exts_names.remove(exts.get(extension_class)); } diff --git a/src/java/org/lwjgl/opengl/NVCopyDepthToColor.java b/src/java/org/lwjgl/opengl/NVCopyDepthToColor.java index 08abf290..67355375 100644 --- a/src/java/org/lwjgl/opengl/NVCopyDepthToColor.java +++ b/src/java/org/lwjgl/opengl/NVCopyDepthToColor.java @@ -1,41 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVCopyDepthToColor { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_DEPTH_STENCIL_TO_RGBA_NV = 0x886E; - public static final int GL_DEPTH_STENCIL_TO_BGRA_NV = 0x886F; +public final class NVCopyDepthToColor { + public static final int GL_DEPTH_STENCIL_TO_BGRA_NV = 0x886f; + public static final int GL_DEPTH_STENCIL_TO_RGBA_NV = 0x886e; private NVCopyDepthToColor() { } + } diff --git a/src/java/org/lwjgl/opengl/NVDepthClamp.java b/src/java/org/lwjgl/opengl/NVDepthClamp.java index d95f626a..47141d52 100644 --- a/src/java/org/lwjgl/opengl/NVDepthClamp.java +++ b/src/java/org/lwjgl/opengl/NVDepthClamp.java @@ -1,40 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVDepthClamp { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_DEPTH_CLAMP_NV = 0x864F; +public final class NVDepthClamp { + public static final int GL_DEPTH_CLAMP_NV = 0x864f; private NVDepthClamp() { } + } diff --git a/src/java/org/lwjgl/opengl/NVEvaluators.java b/src/java/org/lwjgl/opengl/NVEvaluators.java index 9a40403f..38104019 100644 --- a/src/java/org/lwjgl/opengl/NVEvaluators.java +++ b/src/java/org/lwjgl/opengl/NVEvaluators.java @@ -1,132 +1,89 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVEvaluators { - - public static final int GL_EVAL_2D_NV = 0x86C0; - public static final int GL_EVAL_TRIANGULAR_2D_NV = 0x86C1; - public static final int GL_MAP_TESSELLATION_NV = 0x86C2; - public static final int GL_MAP_ATTRIB_U_ORDER_NV = 0x86C3; - public static final int GL_MAP_ATTRIB_V_ORDER_NV = 0x86C4; - public static final int GL_EVAL_FRACTIONAL_TESSELLATION_NV = 0x86C5; - public static final int GL_EVAL_VERTEX_ATTRIB0_NV = 0x86C6; - public static final int GL_EVAL_VERTEX_ATTRIB1_NV = 0x86C7; - public static final int GL_EVAL_VERTEX_ATTRIB2_NV = 0x86C8; - public static final int GL_EVAL_VERTEX_ATTRIB3_NV = 0x86C9; - public static final int GL_EVAL_VERTEX_ATTRIB4_NV = 0x86CA; - public static final int GL_EVAL_VERTEX_ATTRIB5_NV = 0x86CB; - public static final int GL_EVAL_VERTEX_ATTRIB6_NV = 0x86CC; - public static final int GL_EVAL_VERTEX_ATTRIB7_NV = 0x86CD; - public static final int GL_EVAL_VERTEX_ATTRIB8_NV = 0x86CE; - public static final int GL_EVAL_VERTEX_ATTRIB9_NV = 0x86CF; - public static final int GL_EVAL_VERTEX_ATTRIB10_NV = 0x86D0; - public static final int GL_EVAL_VERTEX_ATTRIB11_NV = 0x86D1; - public static final int GL_EVAL_VERTEX_ATTRIB12_NV = 0x86D2; - public static final int GL_EVAL_VERTEX_ATTRIB13_NV = 0x86D3; - public static final int GL_EVAL_VERTEX_ATTRIB14_NV = 0x86D4; - public static final int GL_EVAL_VERTEX_ATTRIB15_NV = 0x86D5; - public static final int GL_MAX_MAP_TESSELLATION_NV = 0x86D6; - public static final int GL_MAX_RATIONAL_EVAL_ORDER_NV = 0x86D7; + public static final int GL_MAX_RATIONAL_EVAL_ORDER_NV = 0x86d7; + public static final int GL_MAX_MAP_TESSELLATION_NV = 0x86d6; + public static final int GL_EVAL_VERTEX_ATTRIB15_NV = 0x86d5; + public static final int GL_EVAL_VERTEX_ATTRIB14_NV = 0x86d4; + public static final int GL_EVAL_VERTEX_ATTRIB13_NV = 0x86d3; + public static final int GL_EVAL_VERTEX_ATTRIB12_NV = 0x86d2; + public static final int GL_EVAL_VERTEX_ATTRIB11_NV = 0x86d1; + public static final int GL_EVAL_VERTEX_ATTRIB10_NV = 0x86d0; + public static final int GL_EVAL_VERTEX_ATTRIB9_NV = 0x86cf; + public static final int GL_EVAL_VERTEX_ATTRIB8_NV = 0x86ce; + public static final int GL_EVAL_VERTEX_ATTRIB7_NV = 0x86cd; + public static final int GL_EVAL_VERTEX_ATTRIB6_NV = 0x86cc; + public static final int GL_EVAL_VERTEX_ATTRIB5_NV = 0x86cb; + public static final int GL_EVAL_VERTEX_ATTRIB4_NV = 0x86ca; + public static final int GL_EVAL_VERTEX_ATTRIB3_NV = 0x86c9; + public static final int GL_EVAL_VERTEX_ATTRIB2_NV = 0x86c8; + public static final int GL_EVAL_VERTEX_ATTRIB1_NV = 0x86c7; + public static final int GL_EVAL_VERTEX_ATTRIB0_NV = 0x86c6; + public static final int GL_EVAL_FRACTIONAL_TESSELLATION_NV = 0x86c5; + public static final int GL_MAP_ATTRIB_V_ORDER_NV = 0x86c4; + public static final int GL_MAP_ATTRIB_U_ORDER_NV = 0x86c3; + public static final int GL_MAP_TESSELLATION_NV = 0x86c2; + public static final int GL_EVAL_TRIANGULAR_2D_NV = 0x86c1; + public static final int GL_EVAL_2D_NV = 0x86c0; private NVEvaluators() { } static native void initNativeStubs() throws LWJGLException; - public static void glGetMapControlPointsNV(int target, int index, int type, int ustride, int vstride, boolean packed, FloatBuffer pPoints) { - // TODO:Check buffer size - BufferChecks.checkDirect(pPoints); - nglGetMapControlPointsNV(target, index, type, ustride, vstride, packed, pPoints, pPoints.position() << 2); - } + public static native void glEvalMapsNV(int target, int mode); - private static native void nglGetMapControlPointsNV(int target, int index, int type, int ustride, int vstride, boolean packed, Buffer pPoints, int pPoints_offset); + public static void glGetMapAttribParameterNV(int target, int index, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetMapAttribParameterivNV(target, index, pname, params, params.position()); + } + private static native void nglGetMapAttribParameterivNV(int target, int index, int pname, IntBuffer params, int params_position); + + public static void glGetMapAttribParameterNV(int target, int index, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetMapAttribParameterfvNV(target, index, pname, params, params.position()); + } + private static native void nglGetMapAttribParameterfvNV(int target, int index, int pname, FloatBuffer params, int params_position); + + public static void glGetMapParameterNV(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetMapParameterivNV(target, pname, params, params.position()); + } + private static native void nglGetMapParameterivNV(int target, int pname, IntBuffer params, int params_position); + + public static void glGetMapParameterNV(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetMapParameterfvNV(target, pname, params, params.position()); + } + private static native void nglGetMapParameterfvNV(int target, int pname, FloatBuffer params, int params_position); + + public static void glMapParameterNV(int target, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglMapParameterivNV(target, pname, params, params.position()); + } + private static native void nglMapParameterivNV(int target, int pname, IntBuffer params, int params_position); + + public static void glMapParameterNV(int target, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglMapParameterfvNV(target, pname, params, params.position()); + } + private static native void nglMapParameterfvNV(int target, int pname, FloatBuffer params, int params_position); public static void glMapControlPointsNV(int target, int index, int type, int ustride, int vstride, int uorder, int vorder, boolean packed, FloatBuffer pPoints) { BufferChecks.checkDirect(pPoints); - // TODO:Check buffer size nglMapControlPointsNV(target, index, type, ustride, vstride, uorder, vorder, packed, pPoints, pPoints.position() << 2); } + private static native void nglMapControlPointsNV(int target, int index, int type, int ustride, int vstride, int uorder, int vorder, boolean packed, Buffer pPoints, int pPoints_position); - private static native void nglMapControlPointsNV(int target, int index, int type, int ustride, int vstride, int uorder, int vorder, boolean packed, Buffer pPoints, int pPoints_offset); - - public static void glMapParameterNV(int target, int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglMapParameterfvNV(target, pname, pfParams, pfParams.position()); + public static void glGetMapControlPointsNV(int target, int index, int type, int ustride, int vstride, boolean packed, FloatBuffer pPoints) { + BufferChecks.checkDirect(pPoints); + nglGetMapControlPointsNV(target, index, type, ustride, vstride, packed, pPoints, pPoints.position() << 2); } - - private static native void nglMapParameterfvNV(int target, int pname, FloatBuffer pfParams, int pfParams_offset); - - public static void glMapParameterNV(int target, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglMapParameterivNV(target, pname, piParams, piParams.position()); - } - - private static native void nglMapParameterivNV(int target, int pname, IntBuffer piParams, int piParams_offset); - - public static void glGetMapParameterNV(int target, int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglGetMapParameterfvNV(target, pname, pfParams, pfParams.position()); - } - - private static native void nglGetMapParameterfvNV(int target, int pname, FloatBuffer pfParams, int pfParams_offset); - - public static void glGetMapParameterNV(int target, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglGetMapParameterivNV(target, pname, piParams, piParams.position()); - } - - private static native void nglGetMapParameterivNV(int target, int pname, IntBuffer piParams, int piParams_offset); - - public static void glGetMapAttribParameterNV(int target, int index, int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglGetMapAttribParameterfvNV(target, index, pname, pfParams, pfParams.position()); - } - - private static native void nglGetMapAttribParameterfvNV(int target, int index, int pname, FloatBuffer pfParams, int pfParams_offset); - - public static void glGetMapAttribParameterNV(int target, int index, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglGetMapAttribParameterivNV(target, index, pname, piParams, piParams.position()); - } - - private static native void nglGetMapAttribParameterivNV(int target, int index, int pname, IntBuffer piParams, int piParams_offset); - - public static native void glEvalMapsNV(int target, int mode); + private static native void nglGetMapControlPointsNV(int target, int index, int type, int ustride, int vstride, boolean packed, Buffer pPoints, int pPoints_position); } diff --git a/src/java/org/lwjgl/opengl/NVFence.java b/src/java/org/lwjgl/opengl/NVFence.java index 54b69ad5..c3454311 100644 --- a/src/java/org/lwjgl/opengl/NVFence.java +++ b/src/java/org/lwjgl/opengl/NVFence.java @@ -1,78 +1,44 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVFence { - - 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 final int GL_FENCE_CONDITION_NV = 0x84f4; + public static final int GL_FENCE_STATUS_NV = 0x84f3; + public static final int GL_ALL_COMPLETED_NV = 0x84f2; private NVFence() { } static native void initNativeStubs() throws LWJGLException; - public static void glGenFencesNV(IntBuffer piFences) { - BufferChecks.checkDirect(piFences); - nglGenFencesNV(piFences.remaining(), piFences, piFences.position()); + public static void glGetFenceivNV(int fence, int pname, IntBuffer piParams) { + BufferChecks.checkBuffer(piParams, 4); + nglGetFenceivNV(fence, pname, piParams, piParams.position()); } - - private static native void nglGenFencesNV(int n, IntBuffer piFences, int piFences_offset); - - public static void glDeleteFencesNV(IntBuffer piFences) { - BufferChecks.checkDirect(piFences); - nglDeleteFencesNV(piFences.remaining(), piFences, piFences.position()); - } - - private static native void nglDeleteFencesNV(int n, IntBuffer piFences, int piFences_offset); - - public static native void glSetFenceNV(int fence, int condition); - - public static native boolean glTestFenceNV(int fence); - - public static native void glFinishFenceNV(int fence); + private static native void nglGetFenceivNV(int fence, int pname, IntBuffer piParams, int piParams_position); public static native boolean glIsFenceNV(int fence); - public static void glGetFenceNV(int fence, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglGetFenceivNV(fence, pname, piParams, piParams.position()); - } + public static native void glFinishFenceNV(int fence); - private static native void nglGetFenceivNV(int fence, int pname, IntBuffer piParams, int piParams_offset); + public static native boolean glTestFenceNV(int fence); + + public static native void glSetFenceNV(int fence, int condition); + + public static void glDeleteFencesNV(IntBuffer piFences) { + BufferChecks.checkDirect(piFences); + nglDeleteFencesNV((piFences.remaining()), piFences, piFences.position()); + } + private static native void nglDeleteFencesNV(int n, IntBuffer piFences, int piFences_position); + + public static void glGenFencesNV(IntBuffer piFences) { + BufferChecks.checkDirect(piFences); + nglGenFencesNV((piFences.remaining()), piFences, piFences.position()); + } + private static native void nglGenFencesNV(int n, IntBuffer piFences, int piFences_position); } diff --git a/src/java/org/lwjgl/opengl/NVFloatBuffer.java b/src/java/org/lwjgl/opengl/NVFloatBuffer.java index 0c308be8..93e1b839 100644 --- a/src/java/org/lwjgl/opengl/NVFloatBuffer.java +++ b/src/java/org/lwjgl/opengl/NVFloatBuffer.java @@ -1,89 +1,38 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; + public final class NVFloatBuffer { - - /* - * Accepted by the parameter of TexImage2D and - * CopyTexImage2D: - */ - 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_WGL_TEXTURE_FLOAT_RGBA_NV = 0x20b8; + public static final int GL_WGL_TEXTURE_FLOAT_RGB_NV = 0x20b7; + public static final int GL_WGL_TEXTURE_FLOAT_RG_NV = 0x20b6; + public static final int GL_WGL_TEXTURE_FLOAT_R_NV = 0x20b5; + public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV = 0x20b4; + public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV = 0x20b3; + public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV = 0x20b2; + public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV = 0x20b1; + public static final int GL_WGL_FLOAT_COMPONENTS_NV = 0x20b0; + public static final int GL_FLOAT_RGBA_MODE_NV = 0x888e; + public static final int GL_FLOAT_CLEAR_COLOR_VALUE_NV = 0x888d; + public static final int GL_TEXTURE_FLOAT_COMPONENTS_NV = 0x888c; + public static final int GL_FLOAT_RGBA32_NV = 0x888b; + public static final int GL_FLOAT_RGBA16_NV = 0x888a; 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; - - /* - * Accepted by the parameter of GetTexLevelParameterfv and - * GetTexLevelParameteriv: - */ - public static final int GL_TEXTURE_FLOAT_COMPONENTS_NV = 0x888C; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, GetFloatv, - * and GetDoublev: - */ - public static final int GL_FLOAT_CLEAR_COLOR_VALUE_NV = 0x888D; - public static final int GL_FLOAT_RGBA_MODE_NV = 0x888E; - - /* - * Accepted in the array of wglGetPixelFormatAttribivARB and - * wglGetPixelFormatAttribfvARB and in the and - * arrays of wglChoosePixelFormatARB: - */ - public static final int GL_WGL_FLOAT_COMPONENTS_NV = 0x20B0; - public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV = 0x20B1; - public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV = 0x20B2; - public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV = 0x20B3; - public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV = 0x20B4; - - /* - * Accepted in the array of wglCreatePbufferARB and returned - * in the parameter of wglQueryPbufferARB when is - * WGL_TEXTURE_FORMAT_ARB: - */ - public static final int GL_WGL_TEXTURE_FLOAT_R_NV = 0x20B5; - public static final int GL_WGL_TEXTURE_FLOAT_RG_NV = 0x20B6; - public static final int GL_WGL_TEXTURE_FLOAT_RGB_NV = 0x20B7; - public static final int GL_WGL_TEXTURE_FLOAT_RGBA_NV = 0x20B8; + public static final int GL_FLOAT_RGB16_NV = 0x8888; + public static final int GL_FLOAT_RG32_NV = 0x8887; + public static final int GL_FLOAT_RG16_NV = 0x8886; + public static final int GL_FLOAT_R32_NV = 0x8885; + public static final int GL_FLOAT_R16_NV = 0x8884; + public static final int GL_FLOAT_RGBA_NV = 0x8883; + public static final int GL_FLOAT_RGB_NV = 0x8882; + public static final int GL_FLOAT_RG_NV = 0x8881; + public static final int GL_FLOAT_R_NV = 0x8880; private NVFloatBuffer() { } + } diff --git a/src/java/org/lwjgl/opengl/NVFogDistance.java b/src/java/org/lwjgl/opengl/NVFogDistance.java index a034d1a9..cd5a3eae 100644 --- a/src/java/org/lwjgl/opengl/NVFogDistance.java +++ b/src/java/org/lwjgl/opengl/NVFogDistance.java @@ -1,42 +1,17 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVFogDistance { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - 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; +public final class NVFogDistance { + public static final int GL_EYE_PLANE_ABSOLUTE_NV = 0x855c; + public static final int GL_EYE_RADIAL_NV = 0x855b; + public static final int GL_FOG_DISTANCE_MODE_NV = 0x855a; private NVFogDistance() { } + } diff --git a/src/java/org/lwjgl/opengl/NVFragmentProgram.java b/src/java/org/lwjgl/opengl/NVFragmentProgram.java index 4c744e68..56823636 100644 --- a/src/java/org/lwjgl/opengl/NVFragmentProgram.java +++ b/src/java/org/lwjgl/opengl/NVFragmentProgram.java @@ -1,86 +1,33 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVFragmentProgram extends NVProgram { - - /* - * Accepted by the parameter of Disable, Enable, and IsEnabled, by the - * parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev, - * and by the parameter of BindProgramNV, LoadProgramNV, - * ProgramLocalParameter4dARB, ProgramLocalParameter4dvARB, - * ProgramLocalParameter4fARB, ProgramLocalParameter4fvARB, - * GetProgramLocalParameterdvARB, and GetProgramLocalParameterfvARB: - */ - public static final int GL_FRAGMENT_PROGRAM_NV = 0x8870; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, GetFloatv, - * and GetDoublev: - */ - 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_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = 0x8868; + public static final int GL_FRAGMENT_PROGRAM_BINDING_NV = 0x8873; + public static final int GL_MAX_TEXTURE_IMAGE_UNITS_NV = 0x8872; + public static final int GL_MAX_TEXTURE_COORDS_NV = 0x8871; + public static final int GL_FRAGMENT_PROGRAM_NV = 0x8870; private NVFragmentProgram() { } static native void initNativeStubs() throws LWJGLException; - // --------------------------- - public static void glProgramNamedParameter4fNV(int id, ByteBuffer name, float x, float y, float z, float w) { - BufferChecks.checkDirect(name); - nglProgramNamedParameter4fNV(id, name.remaining(), name, name.position(), x, y, z, w); - } - - private static native void nglProgramNamedParameter4fNV(int id, int length, ByteBuffer name, int nameOffset, float x, float y, float z, float w); - // --------------------------- - - // --------------------------- public static void glGetProgramNamedParameterNV(int id, ByteBuffer name, FloatBuffer params) { BufferChecks.checkDirect(name); - BufferChecks.checkBuffer(params); - nglGetProgramNamedParameterfvNV(id, name.remaining(), name, name.position(), params, params.position()); + BufferChecks.checkBuffer(params, 4); + nglGetProgramNamedParameterfvNV(id, (name.remaining()), name, name.position(), params, params.position()); } + private static native void nglGetProgramNamedParameterfvNV(int id, int length, ByteBuffer name, int name_position, FloatBuffer params, int params_position); - private static native void nglGetProgramNamedParameterfvNV(int id, int length, ByteBuffer name, int nameOffset, FloatBuffer params, int paramsOffset); - // --------------------------- - + public static void glProgramNamedParameter4fNV(int id, ByteBuffer name, float x, float y, float z, float w) { + BufferChecks.checkDirect(name); + nglProgramNamedParameter4fNV(id, (name.remaining()), name, name.position(), x, y, z, w); + } + private static native void nglProgramNamedParameter4fNV(int id, int length, ByteBuffer name, int name_position, float x, float y, float z, float w); } - diff --git a/src/java/org/lwjgl/opengl/NVFragmentProgram2.java b/src/java/org/lwjgl/opengl/NVFragmentProgram2.java index 8277b24c..bd2f9e52 100644 --- a/src/java/org/lwjgl/opengl/NVFragmentProgram2.java +++ b/src/java/org/lwjgl/opengl/NVFragmentProgram2.java @@ -1,47 +1,19 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVFragmentProgram2 { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - /* - * Accepted by the parameter of GetProgramivARB: - */ - 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; +public final class NVFragmentProgram2 { + public static final int GL_MAX_PROGRAM_LOOP_COUNT_NV = 0x88f8; + public static final int GL_MAX_PROGRAM_LOOP_DEPTH_NV = 0x88f7; + public static final int GL_MAX_PROGRAM_IF_DEPTH_NV = 0x88f6; + public static final int GL_MAX_PROGRAM_CALL_DEPTH_NV = 0x88f5; + public static final int GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88f4; private NVFragmentProgram2() { } + } diff --git a/src/java/org/lwjgl/opengl/NVHalfFloat.java b/src/java/org/lwjgl/opengl/NVHalfFloat.java index 40db8900..1fe0bfbe 100644 --- a/src/java/org/lwjgl/opengl/NVHalfFloat.java +++ b/src/java/org/lwjgl/opengl/NVHalfFloat.java @@ -1,131 +1,80 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVHalfFloat { - - /* - * Accepted by the argument of VertexPointer, NormalPointer, - * ColorPointer, TexCoordPointer, FogCoordPointerEXT, - * SecondaryColorPointerEXT, VertexWeightPointerEXT, VertexAttribPointerNV, - * DrawPixels, ReadPixels, TexImage1D, TexImage2D, TexImage3D, TexSubImage1D, - * TexSubImage2D, TexSubImage3D, and GetTexImage: - */ - public static final int GL_HALF_FLOAT_NV = 0x140B; + public static final int GL_HALF_FLOAT_NV = 0x140b; private NVHalfFloat() { } static native void initNativeStubs() throws LWJGLException; - public static native void glVertex2hNV(short x, short y); + public static void glVertexAttribs4NV(int index, ShortBuffer attribs) { + BufferChecks.checkDirect(attribs); + nglVertexAttribs4hvNV(index, (attribs.remaining()) >> 2, attribs, attribs.position()); + } + private static native void nglVertexAttribs4hvNV(int index, int n, ShortBuffer attribs, int attribs_position); - public static native void glVertex3hNV(short x, short y, short z); + public static void glVertexAttribs3NV(int index, ShortBuffer attribs) { + BufferChecks.checkDirect(attribs); + nglVertexAttribs3hvNV(index, (attribs.remaining()) / 3, attribs, attribs.position()); + } + private static native void nglVertexAttribs3hvNV(int index, int n, ShortBuffer attribs, int attribs_position); - public static native void glVertex4hNV(short x, short y, short z, short w); + public static void glVertexAttribs2NV(int index, ShortBuffer attribs) { + BufferChecks.checkDirect(attribs); + nglVertexAttribs2hvNV(index, (attribs.remaining()) >> 1, attribs, attribs.position()); + } + private static native void nglVertexAttribs2hvNV(int index, int n, ShortBuffer attribs, int attribs_position); - public static native void glNormal3hNV(short nx, short ny, short nz); - - public static native void glColor3hNV(short red, short green, short blue); - - public static native void glColor4hNV(short red, short green, short blue, short alpha); - - public static native void glTexCoord1hNV(short s); - - public static native void glTexCoord2hNV(short s, short t); - - public static native void glTexCoord3hNV(short s, short t, short r); - - public static native void glTexCoord4hNV(short s, short t, short r, short q); - - public static native void glMultiTexCoord1hNV(int target, short s); - - public static native void glMultiTexCoord2hNV(int target, short s, short t); - - public static native void glMultiTexCoord3hNV(int target, short s, short t, short r); - - public static native void glMultiTexCoord4hNV(int target, short s, short t, short r, short q); - - public static native void glFogCoordhNV(short fog); - - public static native void glSecondaryColor3hNV(short red, short green, short blue); - - public static native void glVertexAttrib1hNV(int index, short x); - - public static native void glVertexAttrib2hNV(int index, short x, short y); - - public static native void glVertexAttrib3hNV(int index, short x, short y, short z); + public static void glVertexAttribs1NV(int index, ShortBuffer attribs) { + BufferChecks.checkDirect(attribs); + nglVertexAttribs1hvNV(index, (attribs.remaining()), attribs, attribs.position()); + } + private static native void nglVertexAttribs1hvNV(int index, int n, ShortBuffer attribs, int attribs_position); public static native void glVertexAttrib4hNV(int index, short x, short y, short z, short w); - // --------------------------- - public static void glVertexAttribs1hNV(int index, ShortBuffer attribs) { - BufferChecks.checkDirect(attribs); - nglVertexAttribs1hvNV(index, attribs.remaining(), attribs, attribs.position()); - } + public static native void glVertexAttrib3hNV(int index, short x, short y, short z); - private static native void nglVertexAttribs1hvNV(int index, int n, ShortBuffer attribs, int attribsOffset); - // --------------------------- + public static native void glVertexAttrib2hNV(int index, short x, short y); - // --------------------------- - public static void glVertexAttribs2hNV(int index, ShortBuffer attribs) { - BufferChecks.checkDirect(attribs); - nglVertexAttribs2hvNV(index, attribs.remaining() >> 1, attribs, attribs.position()); - } + public static native void glVertexAttrib1hNV(int index, short x); - private static native void nglVertexAttribs2hvNV(int index, int n, ShortBuffer attribs, int attribsOffset); - // --------------------------- + public static native void glSecondaryColor3hNV(short red, short green, short blue); - // --------------------------- - public static void glVertexAttribs3hNV(int index, ShortBuffer attribs) { - BufferChecks.checkDirect(attribs); - nglVertexAttribs3hvNV(index, attribs.remaining() / 3, attribs, attribs.position()); - } + public static native void glFogCoordhNV(short fog); - private static native void nglVertexAttribs3hvNV(int index, int n, ShortBuffer attribs, int attribsOffset); - // --------------------------- + public static native void glMultiTexCoord4hNV(int target, short s, short t, short r, short q); - // --------------------------- - public static void glVertexAttribs4hNV(int index, ShortBuffer attribs) { - BufferChecks.checkDirect(attribs); - nglVertexAttribs4hvNV(index, attribs.remaining() >> 2, attribs, attribs.position()); - } + public static native void glMultiTexCoord3hNV(int target, short s, short t, short r); - private static native void nglVertexAttribs4hvNV(int index, int n, ShortBuffer attribs, int attribsOffset); - // --------------------------- + public static native void glMultiTexCoord2hNV(int target, short s, short t); + public static native void glMultiTexCoord1hNV(int target, short s); + + public static native void glTexCoord4hNV(short s, short t, short r, short q); + + public static native void glTexCoord3hNV(short s, short t, short r); + + public static native void glTexCoord2hNV(short s, short t); + + public static native void glTexCoord1hNV(short s); + + public static native void glColor4hNV(short red, short green, short blue, short alpha); + + public static native void glColor3hNV(short red, short green, short blue); + + public static native void glNormal3hNV(short nx, short ny, short nz); + + public static native void glVertex4hNV(short x, short y, short z, short w); + + public static native void glVertex3hNV(short x, short y, short z); + + public static native void glVertex2hNV(short x, short y); } diff --git a/src/java/org/lwjgl/opengl/NVLightMaxExponent.java b/src/java/org/lwjgl/opengl/NVLightMaxExponent.java index 824f531c..b745b090 100644 --- a/src/java/org/lwjgl/opengl/NVLightMaxExponent.java +++ b/src/java/org/lwjgl/opengl/NVLightMaxExponent.java @@ -1,41 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVLightMaxExponent { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_MAX_SHININESS_NV = 0x8504; +public final class NVLightMaxExponent { public static final int GL_MAX_SPOT_EXPONENT_NV = 0x8505; + public static final int GL_MAX_SHININESS_NV = 0x8504; private NVLightMaxExponent() { } + } diff --git a/src/java/org/lwjgl/opengl/NVMultisampleFilterHint.java b/src/java/org/lwjgl/opengl/NVMultisampleFilterHint.java index c5012a48..262832c3 100644 --- a/src/java/org/lwjgl/opengl/NVMultisampleFilterHint.java +++ b/src/java/org/lwjgl/opengl/NVMultisampleFilterHint.java @@ -1,44 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVMultisampleFilterHint { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - /* - * Accepted by the parameter of Hint and by the - * parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev: - */ +public final class NVMultisampleFilterHint { public static final int GL_MULTISAMPLE_FILTER_HINT_NV = 0x8534; private NVMultisampleFilterHint() { } + } diff --git a/src/java/org/lwjgl/opengl/NVOcclusionQuery.java b/src/java/org/lwjgl/opengl/NVOcclusionQuery.java index a70e5cc5..2d34a1dc 100644 --- a/src/java/org/lwjgl/opengl/NVOcclusionQuery.java +++ b/src/java/org/lwjgl/opengl/NVOcclusionQuery.java @@ -1,87 +1,51 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVOcclusionQuery { - - public static final int GL_OCCLUSION_TEST_HP = 0x8165; - public static final int GL_OCCLUSION_TEST_RESULT_HP = 0x8166; - /* HP_occlusion_test */ - 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 final int GL_PIXEL_COUNT_NV = 0x8866; + public static final int GL_CURRENT_OCCLUSION_QUERY_ID_NV = 0x8865; + public static final int GL_PIXEL_COUNTER_BITS_NV = 0x8864; + public static final int GL_OCCLUSION_TEST_RESULT_HP = 0x8166; + public static final int GL_OCCLUSION_TEST_HP = 0x8165; private NVOcclusionQuery() { } static native void initNativeStubs() throws LWJGLException; - public static void glGenOcclusionQueriesNV(IntBuffer piIDs) { - BufferChecks.checkDirect(piIDs); - nglGenOcclusionQueriesNV(piIDs.remaining(), piIDs, piIDs.position()); + public static void glGetOcclusionQueryNV(int id, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetOcclusionQueryivNV(id, pname, params, params.position()); } + private static native void nglGetOcclusionQueryivNV(int id, int pname, IntBuffer params, int params_position); - private static native void nglGenOcclusionQueriesNV(int n, IntBuffer piIDs, int piIDs_offset); - - public static void glDeleteOcclusionQueriesNV(IntBuffer piIDs) { - BufferChecks.checkDirect(piIDs); - nglDeleteOcclusionQueriesNV(piIDs.remaining(), piIDs, piIDs.position()); + public static void glGetOcclusionQueryuNV(int id, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetOcclusionQueryuivNV(id, pname, params, params.position()); } - - private static native void nglDeleteOcclusionQueriesNV(int n, IntBuffer piIDs, int piIDs_offset); - - public static native boolean glIsOcclusionQueryNV(int id); - - public static native void glBeginOcclusionQueryNV(int id); + private static native void nglGetOcclusionQueryuivNV(int id, int pname, IntBuffer params, int params_position); public static native void glEndOcclusionQueryNV(); - public static void glGetOcclusionQueryNV(int id, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglGetOcclusionQueryivNV(id, pname, piParams, piParams.position()); + public static native void glBeginOcclusionQueryNV(int id); + + public static native boolean glIsOcclusionQueryNV(int id); + + public static void glDeleteOcclusionQueriesNV(IntBuffer piIDs) { + BufferChecks.checkDirect(piIDs); + nglDeleteOcclusionQueriesNV((piIDs.remaining()), piIDs, piIDs.position()); } + private static native void nglDeleteOcclusionQueriesNV(int n, IntBuffer piIDs, int piIDs_position); - private static native void nglGetOcclusionQueryivNV(int id, int pname, IntBuffer piParams, int piParams_offset); - - public static void glGetOcclusionQueryuNV(int id, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglGetOcclusionQueryuivNV(id, pname, piParams, piParams.position()); + public static void glGenOcclusionQueriesNV(IntBuffer piIDs) { + BufferChecks.checkDirect(piIDs); + nglGenOcclusionQueriesNV((piIDs.remaining()), piIDs, piIDs.position()); } - - private static native void nglGetOcclusionQueryuivNV(int id, int pname, IntBuffer piParams, int piParams_offset); + private static native void nglGenOcclusionQueriesNV(int n, IntBuffer piIDs, int piIDs_position); } diff --git a/src/java/org/lwjgl/opengl/NVPackedDepthStencil.java b/src/java/org/lwjgl/opengl/NVPackedDepthStencil.java index fe8a22d4..4bbc9432 100644 --- a/src/java/org/lwjgl/opengl/NVPackedDepthStencil.java +++ b/src/java/org/lwjgl/opengl/NVPackedDepthStencil.java @@ -1,41 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVPackedDepthStencil { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_DEPTH_STENCIL_NV = 0x84F9; - public static final int GL_UNSIGNED_INT_24_8_NV = 0x84FA; +public final class NVPackedDepthStencil { + public static final int GL_UNSIGNED_INT_24_8_NV = 0x84fa; + public static final int GL_DEPTH_STENCIL_NV = 0x84f9; private NVPackedDepthStencil() { } + } diff --git a/src/java/org/lwjgl/opengl/NVPixelDataRange.java b/src/java/org/lwjgl/opengl/NVPixelDataRange.java index 52f4aa70..5203dcfa 100644 --- a/src/java/org/lwjgl/opengl/NVPixelDataRange.java +++ b/src/java/org/lwjgl/opengl/NVPixelDataRange.java @@ -1,97 +1,41 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVPixelDataRange { - - /* - * Accepted by the parameter of PixelDataRangeNV and - * FlushPixelDataRangeNV, and by the parameter of - * EnableClientState, DisableClientState, and IsEnabled: - */ - public static final int GL_WRITE_PIXEL_DATA_RANGE_NV = 0x8878; + public static final int GL_READ_PIXEL_DATA_RANGE_POINTER_NV = 0x887d; + public static final int GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV = 0x887c; + public static final int GL_READ_PIXEL_DATA_RANGE_LENGTH_NV = 0x887b; + public static final int GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV = 0x887a; public static final int GL_READ_PIXEL_DATA_RANGE_NV = 0x8879; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ - public static final int GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV = 0x887A; - public static final int GL_READ_PIXEL_DATA_RANGE_LENGTH_NV = 0x887B; - - /* - * Accepted by the parameter of GetPointerv: - */ - public static final int GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV = 0x887C; - public static final int GL_READ_PIXEL_DATA_RANGE_POINTER_NV = 0x887D; + public static final int GL_WRITE_PIXEL_DATA_RANGE_NV = 0x8878; private NVPixelDataRange() { } static native void initNativeStubs() throws LWJGLException; - // --------------------------- - public static void glPixelDataRangeNV(int target, ByteBuffer data) { - BufferChecks.checkDirect(data); - nglPixelDataRangeNV(target, data.remaining(), data, data.position()); - } + public static native void glFlushPixelDataRangeNV(int target); public static void glPixelDataRangeNV(int target, ShortBuffer data) { BufferChecks.checkDirect(data); - nglPixelDataRangeNV(target, data.remaining() << 1, data, data.position() << 1); + nglPixelDataRangeNV(target, (data.remaining() << 1), data, data.position() << 1); } - public static void glPixelDataRangeNV(int target, IntBuffer data) { BufferChecks.checkDirect(data); - nglPixelDataRangeNV(target, data.remaining() << 2, data, data.position() << 2); + nglPixelDataRangeNV(target, (data.remaining() << 2), data, data.position() << 2); + } + public static void glPixelDataRangeNV(int target, ByteBuffer data) { + BufferChecks.checkDirect(data); + nglPixelDataRangeNV(target, (data.remaining()), data, data.position()); } - public static void glPixelDataRangeNV(int target, FloatBuffer data) { BufferChecks.checkDirect(data); - nglPixelDataRangeNV(target, data.remaining() << 2, data, data.position() << 2); + nglPixelDataRangeNV(target, (data.remaining() << 2), data, data.position() << 2); } - - private static native void nglPixelDataRangeNV(int target, int length, Buffer data, int dataOffset); - // --------------------------- - - public static native void glFlushPixelDataRangeNV(int target); - + private static native void nglPixelDataRangeNV(int target, int length, Buffer data, int data_position); } diff --git a/src/java/org/lwjgl/opengl/NVPointSprite.java b/src/java/org/lwjgl/opengl/NVPointSprite.java index 316fe653..374610ae 100644 --- a/src/java/org/lwjgl/opengl/NVPointSprite.java +++ b/src/java/org/lwjgl/opengl/NVPointSprite.java @@ -1,58 +1,26 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVPointSprite { - - public static final int GL_POINT_SPRITE_NV = 0x8861; - public static final int GL_COORD_REPLACE_NV = 0x8862; public static final int GL_POINT_SPRITE_R_MODE_NV = 0x8863; + public static final int GL_COORD_REPLACE_NV = 0x8862; + public static final int GL_POINT_SPRITE_NV = 0x8861; private NVPointSprite() { } static native void initNativeStubs() throws LWJGLException; - public static native void glPointParameteriNV(int pname, int param); - - public static void glPointParameterNV(int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglPointParameterivNV(pname, piParams, piParams.position()); + public static void glPointParameterNV(int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglPointParameterivNV(pname, params, params.position()); } + private static native void nglPointParameterivNV(int pname, IntBuffer params, int params_position); - private static native void nglPointParameterivNV(int pname, IntBuffer piParams, int piParams_offset); + public static native void glPointParameteriNV(int pname, int param); } diff --git a/src/java/org/lwjgl/opengl/NVPrimitiveRestart.java b/src/java/org/lwjgl/opengl/NVPrimitiveRestart.java index 933d3c31..2e0589a9 100644 --- a/src/java/org/lwjgl/opengl/NVPrimitiveRestart.java +++ b/src/java/org/lwjgl/opengl/NVPrimitiveRestart.java @@ -1,60 +1,21 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVPrimitiveRestart { - - /* - * Accepted by the parameter of EnableClientState and - * DisableClientState, by the parameter of IsEnabled, and by - * the parameter of GetBooleanv, GetIntegerv, GetFloatv, and - * GetDoublev: - */ - public static final int GL_PRIMITIVE_RESTART_NV = 0x8558; - - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ public static final int GL_PRIMITIVE_RESTART_INDEX_NV = 0x8559; + public static final int GL_PRIMITIVE_RESTART_NV = 0x8558; private NVPrimitiveRestart() { } static native void initNativeStubs() throws LWJGLException; - public static native void glPrimitiveRestartNV(); - public static native void glPrimitiveRestartIndexNV(int index); + + public static native void glPrimitiveRestartNV(); } diff --git a/src/java/org/lwjgl/opengl/NVProgram.java b/src/java/org/lwjgl/opengl/NVProgram.java index 5fa308fb..90753999 100644 --- a/src/java/org/lwjgl/opengl/NVProgram.java +++ b/src/java/org/lwjgl/opengl/NVProgram.java @@ -1,140 +1,68 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; -public abstract class NVProgram { - - /* - Accepted by the parameter of GetProgramivNV: - */ - public static final int GL_PROGRAM_TARGET_NV = 0x8646; - public static final int GL_PROGRAM_LENGTH_NV = 0x8627; - public static final int GL_PROGRAM_RESIDENT_NV = 0x8647; - - /* - Accepted by the parameter of GetProgramStringNV: - */ - public static final int GL_PROGRAM_STRING_NV = 0x8628; - - /* - Accepted by the parameter of GetBooleanv, GetIntegerv, - GetFloatv, and GetDoublev: - */ - public static final int GL_PROGRAM_ERROR_POSITION_NV = 0x864B; - - /* - Accepted by the parameter of GetString: - */ +public class NVProgram { public static final int GL_PROGRAM_ERROR_STRING_NV = 0x8874; + public static final int GL_PROGRAM_ERROR_POSITION_NV = 0x864b; + public static final int GL_PROGRAM_STRING_NV = 0x8628; + public static final int GL_PROGRAM_RESIDENT_NV = 0x8647; + public static final int GL_PROGRAM_LENGTH_NV = 0x8627; + public static final int GL_PROGRAM_TARGET_NV = 0x8646; static native void initNativeStubs() throws LWJGLException; - // --------------------------- - public static void glLoadProgramNV(int target, int programID, ByteBuffer string) { - BufferChecks.checkDirect(string); - nglLoadProgramNV(target, programID, string.remaining(), string, string.position()); + public static void glRequestResidentProgramsNV(IntBuffer programIDs) { + BufferChecks.checkDirect(programIDs); + nglRequestResidentProgramsNV((programIDs.remaining()), programIDs, programIDs.position()); } + private static native void nglRequestResidentProgramsNV(int n, IntBuffer programIDs, int programIDs_position); - private static native void nglLoadProgramNV(int target, int programID, int length, Buffer string, int stringOffset); - - // --------------------------- - public static native void glBindProgramNV(int target, int programID); - // --------------------------- - - public static void glDeleteProgramsNV(IntBuffer programs) { - BufferChecks.checkDirect(programs); - nglDeleteProgramsNV(programs.remaining(), programs, programs.position()); + public static boolean glAreProgramsResidentNV(IntBuffer programIDs, ByteBuffer programResidences) { + BufferChecks.checkDirect(programIDs); + BufferChecks.checkDirect(programResidences); + if (programIDs.remaining() != programResidences.remaining()) + throw new IllegalArgumentException("programIDs.remaining() != programResidences.remaining()"); + boolean __result = nglAreProgramsResidentNV((programIDs.remaining()), programIDs, programIDs.position(), programResidences, programResidences.position()); + return __result; } + private static native boolean nglAreProgramsResidentNV(int n, IntBuffer programIDs, int programIDs_position, ByteBuffer programResidences, int programResidences_position); - private static native void nglDeleteProgramsNV(int n, IntBuffer programs, int programsOffset); + public static native boolean glIsProgramNV(int programID); - // --------------------------- - - // --------------------------- - public static void glGenProgramsNV(IntBuffer programs) { - BufferChecks.checkDirect(programs); - nglGenProgramsNV(programs.remaining(), programs, programs.position()); - } - - private static native void nglGenProgramsNV(int n, IntBuffer programs, int programsOffset); - - // --------------------------- - - // --------------------------- - public static void glGetProgramNV(int programID, int parameterName, IntBuffer params) { - BufferChecks.checkDirect(params); - nglGetProgramivNV(programID, parameterName, params, params.position()); - } - - private static native void nglGetProgramivNV(int programID, int parameterName, IntBuffer params, int paramsOffset); - // --------------------------- - - // --------------------------- public static void glGetProgramStringNV(int programID, int parameterName, ByteBuffer paramString) { BufferChecks.checkDirect(paramString); nglGetProgramStringNV(programID, parameterName, paramString, paramString.position()); } + private static native void nglGetProgramStringNV(int programID, int parameterName, Buffer paramString, int paramString_position); - private static native void nglGetProgramStringNV(int programID, int parameterName, Buffer paramString, int paramStringOffset); - // --------------------------- - - public static native boolean glIsProgramNV(int programID); - - // --------------------------- - public static boolean glAreProgramsResidentNV(IntBuffer programIDs, ByteBuffer programResidences) { - BufferChecks.checkDirect(programIDs); - BufferChecks.checkDirect(programResidences); - if ( programIDs.remaining() != programResidences.remaining() ) - throw new IllegalArgumentException("programIDs.remaining() != programResidences.remaining()"); - return nglAreProgramsResidentNV(programIDs.remaining(), programIDs, programIDs.position(), programResidences, programResidences.position()); + public static void glGetProgramNV(int programID, int parameterName, IntBuffer params) { + BufferChecks.checkDirect(params); + nglGetProgramivNV(programID, parameterName, params, params.position()); } + private static native void nglGetProgramivNV(int programID, int parameterName, IntBuffer params, int params_position); - private static native boolean nglAreProgramsResidentNV(int n, IntBuffer programIDs, int programIDsOffset, ByteBuffer programResidences, int programResidencesOffset); - // --------------------------- - - // --------------------------- - public static void glRequestResidentProgramsNV(IntBuffer programIDs) { - BufferChecks.checkDirect(programIDs); - nglRequestResidentProgramsNV(programIDs.remaining(), programIDs, programIDs.position()); + public static void glGenProgramsNV(IntBuffer programs) { + BufferChecks.checkDirect(programs); + nglGenProgramsNV((programs.remaining()), programs, programs.position()); } + private static native void nglGenProgramsNV(int n, IntBuffer programs, int programs_position); - private static native void nglRequestResidentProgramsNV(int n, IntBuffer programIDs, int programIDsOffset); - // --------------------------- + public static void glDeleteProgramsNV(IntBuffer programs) { + BufferChecks.checkDirect(programs); + nglDeleteProgramsNV((programs.remaining()), programs, programs.position()); + } + private static native void nglDeleteProgramsNV(int n, IntBuffer programs, int programs_position); + + public static native void glBindProgramNV(int target, int programID); + + public static void glLoadProgramNV(int target, int programID, ByteBuffer string) { + BufferChecks.checkDirect(string); + nglLoadProgramNV(target, programID, (string.remaining()), string, string.position()); + } + private static native void nglLoadProgramNV(int target, int programID, int length, Buffer string, int string_position); } - diff --git a/src/java/org/lwjgl/opengl/NVRegisterCombiners.java b/src/java/org/lwjgl/opengl/NVRegisterCombiners.java index 612b0dc7..589c3db2 100644 --- a/src/java/org/lwjgl/opengl/NVRegisterCombiners.java +++ b/src/java/org/lwjgl/opengl/NVRegisterCombiners.java @@ -1,164 +1,124 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.FloatBuffer; -import java.nio.IntBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVRegisterCombiners { - - public static final int GL_REGISTER_COMBINERS_NV = 0x8522; - public static final int GL_COMBINER0_NV = 0x8550; - public static final int GL_COMBINER1_NV = 0x8551; - public static final int GL_COMBINER2_NV = 0x8552; - public static final int GL_COMBINER3_NV = 0x8553; - public static final int GL_COMBINER4_NV = 0x8554; - public static final int GL_COMBINER5_NV = 0x8555; - public static final int GL_COMBINER6_NV = 0x8556; - public static final int GL_COMBINER7_NV = 0x8557; - public static final int GL_VARIABLE_A_NV = 0x8523; - public static final int GL_VARIABLE_B_NV = 0x8524; - public static final int GL_VARIABLE_C_NV = 0x8525; - public static final int GL_VARIABLE_D_NV = 0x8526; - public static final int GL_VARIABLE_E_NV = 0x8527; - public static final int GL_VARIABLE_F_NV = 0x8528; - public static final int GL_VARIABLE_G_NV = 0x8529; - public static final int GL_CONSTANT_COLOR0_NV = 0x852A; - public static final int GL_CONSTANT_COLOR1_NV = 0x852B; - public static final int GL_PRIMARY_COLOR_NV = 0x852C; - public static final int GL_SECONDARY_COLOR_NV = 0x852D; - public static final int GL_SPARE0_NV = 0x852E; - public static final int GL_SPARE1_NV = 0x852F; - public static final int GL_UNSIGNED_IDENTITY_NV = 0x8536; - public static final int GL_UNSIGNED_INVERT_NV = 0x8537; - public static final int GL_EXPAND_NORMAL_NV = 0x8538; - public static final int GL_EXPAND_NEGATE_NV = 0x8539; - public static final int GL_HALF_BIAS_NORMAL_NV = 0x853A; - public static final int GL_HALF_BIAS_NEGATE_NV = 0x853B; - public static final int GL_SIGNED_IDENTITY_NV = 0x853C; - public static final int GL_SIGNED_NEGATE_NV = 0x853D; - public static final int GL_E_TIMES_F_NV = 0x8531; - public static final int GL_SPARE0_PLUS_SECONDARY_COLOR_NV = 0x8532; - public static final int GL_SCALE_BY_TWO_NV = 0x853E; - public static final int GL_SCALE_BY_FOUR_NV = 0x853F; - public static final int GL_SCALE_BY_ONE_HALF_NV = 0x8540; - public static final int GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = 0x8541; - public static final int GL_DISCARD_NV = 0x8530; - public static final int GL_COMBINER_INPUT_NV = 0x8542; - public static final int GL_COMBINER_MAPPING_NV = 0x8543; - public static final int GL_COMBINER_COMPONENT_USAGE_NV = 0x8544; - public static final int GL_COMBINER_AB_DOT_PRODUCT_NV = 0x8545; - public static final int GL_COMBINER_CD_DOT_PRODUCT_NV = 0x8546; - public static final int GL_COMBINER_MUX_SUM_NV = 0x8547; - public static final int GL_COMBINER_SCALE_NV = 0x8548; + public static final int GL_MAX_GENERAL_COMBINERS_NV = 0x854d; + public static final int GL_COLOR_SUM_CLAMP_NV = 0x854f; + public static final int GL_NUM_GENERAL_COMBINERS_NV = 0x854e; + public static final int GL_COMBINER_SUM_OUTPUT_NV = 0x854c; + public static final int GL_COMBINER_CD_OUTPUT_NV = 0x854b; + public static final int GL_COMBINER_AB_OUTPUT_NV = 0x854a; public static final int GL_COMBINER_BIAS_NV = 0x8549; - public static final int GL_COMBINER_AB_OUTPUT_NV = 0x854A; - public static final int GL_COMBINER_CD_OUTPUT_NV = 0x854B; - public static final int GL_COMBINER_SUM_OUTPUT_NV = 0x854C; - public static final int GL_NUM_GENERAL_COMBINERS_NV = 0x854E; - public static final int GL_COLOR_SUM_CLAMP_NV = 0x854F; - public static final int GL_MAX_GENERAL_COMBINERS_NV = 0x854D; + public static final int GL_COMBINER_SCALE_NV = 0x8548; + public static final int GL_COMBINER_MUX_SUM_NV = 0x8547; + public static final int GL_COMBINER_CD_DOT_PRODUCT_NV = 0x8546; + public static final int GL_COMBINER_AB_DOT_PRODUCT_NV = 0x8545; + public static final int GL_COMBINER_COMPONENT_USAGE_NV = 0x8544; + public static final int GL_COMBINER_MAPPING_NV = 0x8543; + public static final int GL_COMBINER_INPUT_NV = 0x8542; + public static final int GL_DISCARD_NV = 0x8530; + public static final int GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = 0x8541; + public static final int GL_SCALE_BY_ONE_HALF_NV = 0x8540; + public static final int GL_SCALE_BY_FOUR_NV = 0x853f; + public static final int GL_SCALE_BY_TWO_NV = 0x853e; + public static final int GL_SPARE0_PLUS_SECONDARY_COLOR_NV = 0x8532; + public static final int GL_E_TIMES_F_NV = 0x8531; + public static final int GL_SIGNED_NEGATE_NV = 0x853d; + public static final int GL_SIGNED_IDENTITY_NV = 0x853c; + public static final int GL_HALF_BIAS_NEGATE_NV = 0x853b; + public static final int GL_HALF_BIAS_NORMAL_NV = 0x853a; + public static final int GL_EXPAND_NEGATE_NV = 0x8539; + public static final int GL_EXPAND_NORMAL_NV = 0x8538; + public static final int GL_UNSIGNED_INVERT_NV = 0x8537; + public static final int GL_UNSIGNED_IDENTITY_NV = 0x8536; + public static final int GL_SPARE1_NV = 0x852f; + public static final int GL_SPARE0_NV = 0x852e; + public static final int GL_SECONDARY_COLOR_NV = 0x852d; + public static final int GL_PRIMARY_COLOR_NV = 0x852c; + public static final int GL_CONSTANT_COLOR1_NV = 0x852b; + public static final int GL_CONSTANT_COLOR0_NV = 0x852a; + public static final int GL_VARIABLE_G_NV = 0x8529; + public static final int GL_VARIABLE_F_NV = 0x8528; + public static final int GL_VARIABLE_E_NV = 0x8527; + public static final int GL_VARIABLE_D_NV = 0x8526; + public static final int GL_VARIABLE_C_NV = 0x8525; + public static final int GL_VARIABLE_B_NV = 0x8524; + public static final int GL_VARIABLE_A_NV = 0x8523; + public static final int GL_COMBINER7_NV = 0x8557; + public static final int GL_COMBINER6_NV = 0x8556; + public static final int GL_COMBINER5_NV = 0x8555; + public static final int GL_COMBINER4_NV = 0x8554; + public static final int GL_COMBINER3_NV = 0x8553; + public static final int GL_COMBINER2_NV = 0x8552; + public static final int GL_COMBINER1_NV = 0x8551; + public static final int GL_COMBINER0_NV = 0x8550; + public static final int GL_REGISTER_COMBINERS_NV = 0x8522; private NVRegisterCombiners() { } static native void initNativeStubs() throws LWJGLException; - public static native void glCombinerParameterfNV(int pname, float param); - - public static void glCombinerParameterNV(int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglCombinerParameterfvNV(pname, pfParams, pfParams.position()); + public static void glGetFinalCombinerInputParameterNV(int variable, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetFinalCombinerInputParameterivNV(variable, pname, params, params.position()); } + private static native void nglGetFinalCombinerInputParameterivNV(int variable, int pname, IntBuffer params, int params_position); - private static native void nglCombinerParameterfvNV(int pname, FloatBuffer pfParams, int pfParams_offset); - - public static native void glCombinerParameteriNV(int pname, int param); - - public static void glCombinerParameterNV(int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglCombinerParameterivNV(pname, piParams, piParams.position()); + public static void glGetFinalCombinerInputParameterNV(int variable, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetFinalCombinerInputParameterfvNV(variable, pname, params, params.position()); } + private static native void nglGetFinalCombinerInputParameterfvNV(int variable, int pname, FloatBuffer params, int params_position); - private static native void nglCombinerParameterivNV(int pname, IntBuffer piParams, int piParams_offset); + public static void glGetCombinerOutputParameterNV(int stage, int portion, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetCombinerOutputParameterivNV(stage, portion, pname, params, params.position()); + } + private static native void nglGetCombinerOutputParameterivNV(int stage, int portion, int pname, IntBuffer params, int params_position); - public static native void glCombinerInputNV(int stage, int portion, int variable, int input, int mapping, int componentUsage); + public static void glGetCombinerOutputParameterNV(int stage, int portion, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetCombinerOutputParameterfvNV(stage, portion, pname, params, params.position()); + } + private static native void nglGetCombinerOutputParameterfvNV(int stage, int portion, int pname, FloatBuffer params, int params_position); - public static native void glCombinerOutputNV(int stage, int portion, int abOutput, int cdOutput, int sumOutput, int scale, int bias, boolean abDotProduct, boolean cdDotProduct, boolean muxSum); + public static void glGetCombinerInputParameterNV(int stage, int portion, int variable, int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetCombinerInputParameterivNV(stage, portion, variable, pname, params, params.position()); + } + private static native void nglGetCombinerInputParameterivNV(int stage, int portion, int variable, int pname, IntBuffer params, int params_position); + + public static void glGetCombinerInputParameterNV(int stage, int portion, int variable, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetCombinerInputParameterfvNV(stage, portion, variable, pname, params, params.position()); + } + private static native void nglGetCombinerInputParameterfvNV(int stage, int portion, int variable, int pname, FloatBuffer params, int params_position); public static native void glFinalCombinerInputNV(int variable, int input, int mapping, int componentUsage); - public static void glGetCombinerInputParameterNV(int stage, int portion, int variable, int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglGetCombinerInputParameterfvNV(stage, portion, variable, pname, pfParams, pfParams.position()); + public static native void glCombinerOutputNV(int stage, int portion, int abOutput, int cdOutput, int sumOutput, int scale, int bias, boolean abDotProduct, boolean cdDotProduct, boolean muxSum); + + public static native void glCombinerInputNV(int stage, int portion, int variable, int input, int mapping, int componentUsage); + + public static void glCombinerParameterNV(int pname, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglCombinerParameterivNV(pname, params, params.position()); } + private static native void nglCombinerParameterivNV(int pname, IntBuffer params, int params_position); - private static native void nglGetCombinerInputParameterfvNV(int stage, int portion, int variable, int pname, FloatBuffer pfParams, int pfParams_offset); + public static native void glCombinerParameteriNV(int pname, int param); - public static void glGetCombinerInputParameterNV(int stage, int portion, int variable, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglGetCombinerInputParameterivNV(stage, portion, variable, pname, piParams, piParams.position()); + public static void glCombinerParameterNV(int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglCombinerParameterfvNV(pname, params, params.position()); } + private static native void nglCombinerParameterfvNV(int pname, FloatBuffer params, int params_position); - private static native void nglGetCombinerInputParameterivNV(int stage, int portion, int variable, int pname, IntBuffer piParams, int piParams_offset); - - public static void glGetCombinerOutputParameterNV(int stage, int portion, int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglGetCombinerOutputParameterfvNV(stage, portion, pname, pfParams, pfParams.position()); - } - - private static native void nglGetCombinerOutputParameterfvNV(int stage, int portion, int pname, FloatBuffer pfParams, int pfParams_offset); - - public static void glGetCombinerOutputParameterNV(int stage, int portion, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglGetCombinerOutputParameterivNV(stage, portion, pname, piParams, piParams.position()); - } - - private static native void nglGetCombinerOutputParameterivNV(int stage, int portion, int pname, IntBuffer piParams, int pfParams_offset); - - public static void glGetFinalCombinerInputParameterNV(int variable, int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglGetFinalCombinerInputParameterfvNV(variable, pname, pfParams, pfParams.position()); - } - - private static native void nglGetFinalCombinerInputParameterfvNV(int variable, int pname, FloatBuffer pfParams, int pfParams_offset); - - public static void glGetFinalCombinerInputParameterNV(int variable, int pname, IntBuffer piParams) { - BufferChecks.checkBuffer(piParams); - nglGetFinalCombinerInputParameterivNV(variable, pname, piParams, piParams.position()); - } - - private static native void nglGetFinalCombinerInputParameterivNV(int variable, int pname, IntBuffer piParams, int piParams_offset); + public static native void glCombinerParameterfNV(int pname, float param); } diff --git a/src/java/org/lwjgl/opengl/NVRegisterCombiners2.java b/src/java/org/lwjgl/opengl/NVRegisterCombiners2.java index 7db10cda..614cc55e 100644 --- a/src/java/org/lwjgl/opengl/NVRegisterCombiners2.java +++ b/src/java/org/lwjgl/opengl/NVRegisterCombiners2.java @@ -1,43 +1,12 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.FloatBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVRegisterCombiners2 { - public static final int GL_PER_STAGE_CONSTANTS_NV = 0x8535; private NVRegisterCombiners2() { @@ -45,17 +14,15 @@ public final class NVRegisterCombiners2 { static native void initNativeStubs() throws LWJGLException; - public static void glCombinerStageParameterNV(int stage, int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglCombinerStageParameterfvNV(stage, pname, pfParams, pfParams.position()); + public static void glGetCombinerStageParameterNV(int stage, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetCombinerStageParameterfvNV(stage, pname, params, params.position()); } + private static native void nglGetCombinerStageParameterfvNV(int stage, int pname, FloatBuffer params, int params_position); - private static native void nglCombinerStageParameterfvNV(int stage, int pname, FloatBuffer pfParams, int pfParams_offset); - - public static void glGetCombinerStageParameterNV(int stage, int pname, FloatBuffer pfParams) { - BufferChecks.checkBuffer(pfParams); - nglGetCombinerStageParameterfvNV(stage, pname, pfParams, pfParams.position()); + public static void glCombinerStageParameterNV(int stage, int pname, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglCombinerStageParameterfvNV(stage, pname, params, params.position()); } - - private static native void nglGetCombinerStageParameterfvNV(int stage, int pname, FloatBuffer pfParams, int pfParams_offset); + private static native void nglCombinerStageParameterfvNV(int stage, int pname, FloatBuffer params, int params_position); } diff --git a/src/java/org/lwjgl/opengl/NVTexgenReflection.java b/src/java/org/lwjgl/opengl/NVTexgenReflection.java index eda146a1..fb3a138f 100644 --- a/src/java/org/lwjgl/opengl/NVTexgenReflection.java +++ b/src/java/org/lwjgl/opengl/NVTexgenReflection.java @@ -1,41 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVTexgenReflection { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_NORMAL_MAP_NV = 0x8511; +public final class NVTexgenReflection { public static final int GL_REFLECTION_MAP_NV = 0x8512; + public static final int GL_NORMAL_MAP_NV = 0x8511; private NVTexgenReflection() { } + } diff --git a/src/java/org/lwjgl/opengl/NVTextureCompressionVTC.java b/src/java/org/lwjgl/opengl/NVTextureCompressionVTC.java index 475bc13c..7eb5dd61 100644 --- a/src/java/org/lwjgl/opengl/NVTextureCompressionVTC.java +++ b/src/java/org/lwjgl/opengl/NVTextureCompressionVTC.java @@ -1,48 +1,18 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVTextureCompressionVTC { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - /* - * Accepted by the parameter of TexImage3D and - * CompressedTexImage3DARB and the parameter of - * CompressedTexSubImage2DARB: - */ - public static final int COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0; - public static final int COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; - public static final int COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; - public static final int COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; +public final class NVTextureCompressionVTC { + public static final int COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83f3; + public static final int COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83f2; + public static final int COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83f1; + public static final int COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83f0; private NVTextureCompressionVTC() { } + } diff --git a/src/java/org/lwjgl/opengl/NVTextureEnvCombine4.java b/src/java/org/lwjgl/opengl/NVTextureEnvCombine4.java index 2de4b756..8cdcba5c 100644 --- a/src/java/org/lwjgl/opengl/NVTextureEnvCombine4.java +++ b/src/java/org/lwjgl/opengl/NVTextureEnvCombine4.java @@ -1,44 +1,19 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVTextureEnvCombine4 { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_COMBINE4_NV = 0x8503; - public static final int GL_SOURCE3_RGB_NV = 0x8583; - public static final int GL_SOURCE3_ALPHA_NV = 0x858B; +public final class NVTextureEnvCombine4 { + public static final int GL_OPERAND3_ALPHA_NV = 0x859b; public static final int GL_OPERAND3_RGB_NV = 0x8593; - public static final int GL_OPERAND3_ALPHA_NV = 0x859B; + public static final int GL_SOURCE3_ALPHA_NV = 0x858b; + public static final int GL_SOURCE3_RGB_NV = 0x8583; + public static final int GL_COMBINE4_NV = 0x8503; private NVTextureEnvCombine4() { } + } diff --git a/src/java/org/lwjgl/opengl/NVTextureExpandNormal.java b/src/java/org/lwjgl/opengl/NVTextureExpandNormal.java index e733b52e..0cffda4f 100644 --- a/src/java/org/lwjgl/opengl/NVTextureExpandNormal.java +++ b/src/java/org/lwjgl/opengl/NVTextureExpandNormal.java @@ -1,45 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVTextureExpandNormal { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - /* - * Accepted by the parameters of TexParameteri, - * TexParameteriv, TexParameterf, TexParameterfv, GetTexParameteri, - * and GetTexParameteriv: - */ - public static final int GL_TEXTURE_UNSIGNED_REMAP_MODE_NV = 0x888F; +public final class NVTextureExpandNormal { + public static final int GL_TEXTURE_UNSIGNED_REMAP_MODE_NV = 0x888f; private NVTextureExpandNormal() { } + } diff --git a/src/java/org/lwjgl/opengl/NVTextureRectangle.java b/src/java/org/lwjgl/opengl/NVTextureRectangle.java index 01e0d25d..99216f67 100644 --- a/src/java/org/lwjgl/opengl/NVTextureRectangle.java +++ b/src/java/org/lwjgl/opengl/NVTextureRectangle.java @@ -1,43 +1,18 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVTextureRectangle { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_TEXTURE_RECTANGLE_NV = 0x84F5; - public static final int GL_TEXTURE_BINDING_RECTANGLE_NV = 0x84F6; - public static final int GL_PROXY_TEXTURE_RECTANGLE_NV = 0x84F7; - public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_NV = 0x84F8; +public final class NVTextureRectangle { + public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_NV = 0x84f8; + public static final int GL_PROXY_TEXTURE_RECTANGLE_NV = 0x84f7; + public static final int GL_TEXTURE_BINDING_RECTANGLE_NV = 0x84f6; + public static final int GL_TEXTURE_RECTANGLE_NV = 0x84f5; private NVTextureRectangle() { } + } diff --git a/src/java/org/lwjgl/opengl/NVTextureShader.java b/src/java/org/lwjgl/opengl/NVTextureShader.java index 2a04553c..37084952 100644 --- a/src/java/org/lwjgl/opengl/NVTextureShader.java +++ b/src/java/org/lwjgl/opengl/NVTextureShader.java @@ -1,109 +1,84 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVTextureShader { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_TEXTURE_SHADER_NV = 0x86DE; - public static final int GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV = 0x86D9; - public static final int GL_SHADER_OPERATION_NV = 0x86DF; - public static final int GL_CULL_MODES_NV = 0x86E0; - public static final int GL_OFFSET_TEXTURE_MATRIX_NV = 0x86E1; - public static final int GL_OFFSET_TEXTURE_SCALE_NV = 0x86E2; - public static final int GL_OFFSET_TEXTURE_BIAS_NV = 0x86E3; - public static final int GL_PREVIOUS_TEXTURE_INPUT_NV = 0x86E4; - public static final int GL_CONST_EYE_NV = 0x86E5; - public static final int GL_SHADER_CONSISTENT_NV = 0x86DD; - public static final int GL_PASS_THROUGH_NV = 0x86E6; - public static final int GL_CULL_FRAGMENT_NV = 0x86E7; - public static final int GL_OFFSET_TEXTURE_2D_NV = 0x86E8; - public static final int GL_OFFSET_TEXTURE_RECTANGLE_NV = 0x864C; - public static final int GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV = 0x864D; - public static final int GL_DEPENDENT_AR_TEXTURE_2D_NV = 0x86E9; - public static final int GL_DEPENDENT_GB_TEXTURE_2D_NV = 0x86EA; - public static final int GL_DOT_PRODUCT_NV = 0x86EC; - public static final int GL_DOT_PRODUCT_DEPTH_REPLACE_NV = 0x86ED; - public static final int GL_DOT_PRODUCT_TEXTURE_2D_NV = 0x86EE; - public static final int GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV = 0x864E; - public static final int GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV = 0x86F0; - public static final int GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV = 0x86F1; - public static final int GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV = 0x86F2; - public static final int GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV = 0x86F3; - public static final int GL_HILO_NV = 0x86F4; - public static final int GL_DSDT_NV = 0x86F5; - public static final int GL_DSDT_MAG_NV = 0x86F6; - public static final int GL_DSDT_MAG_VIB_NV = 0x86F7; - public static final int GL_UNSIGNED_INT_S8_S8_8_8_NV = 0x86DA; - public static final int GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86DB; - public static final int GL_SIGNED_RGBA_NV = 0x86FB; - public static final int GL_SIGNED_RGBA8_NV = 0x86FC; - public static final int GL_SIGNED_RGB_NV = 0x86FE; - public static final int GL_SIGNED_RGB8_NV = 0x86FF; - public static final int GL_SIGNED_LUMINANCE_NV = 0x8701; - public static final int GL_SIGNED_LUMINANCE8_NV = 0x8702; - public static final int GL_SIGNED_LUMINANCE_ALPHA_NV = 0x8703; - public static final int GL_SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704; - public static final int GL_SIGNED_ALPHA_NV = 0x8705; - public static final int GL_SIGNED_ALPHA8_NV = 0x8706; - public static final int GL_SIGNED_INTENSITY_NV = 0x8707; - public static final int GL_SIGNED_INTENSITY8_NV = 0x8708; - public static final int GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870C; - public static final int GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870D; - public static final int GL_HILO16_NV = 0x86F8; - public static final int GL_SIGNED_HILO_NV = 0x86F9; - public static final int GL_SIGNED_HILO16_NV = 0x86FA; - public static final int GL_DSDT8_NV = 0x8709; - public static final int GL_DSDT8_MAG8_NV = 0x870A; - public static final int GL_DSDT_MAG_INTENSITY_NV = 0x86DC; - public static final int GL_DSDT8_MAG8_INTENSITY8_NV = 0x870B; - public static final int GL_HI_SCALE_NV = 0x870E; - public static final int GL_LO_SCALE_NV = 0x870F; - public static final int GL_DS_SCALE_NV = 0x8710; - public static final int GL_DT_SCALE_NV = 0x8711; - public static final int GL_MAGNITUDE_SCALE_NV = 0x8712; - public static final int GL_VIBRANCE_SCALE_NV = 0x8713; - public static final int GL_HI_BIAS_NV = 0x8714; - public static final int GL_LO_BIAS_NV = 0x8715; - public static final int GL_DS_BIAS_NV = 0x8716; - public static final int GL_DT_BIAS_NV = 0x8717; - public static final int GL_MAGNITUDE_BIAS_NV = 0x8718; +public final class NVTextureShader { + public static final int GL_TEXTURE_MAG_SIZE_NV = 0x871f; + public static final int GL_TEXTURE_DT_SIZE_NV = 0x871e; + public static final int GL_TEXTURE_DS_SIZE_NV = 0x871d; + public static final int GL_TEXTURE_LO_SIZE_NV = 0x871c; + public static final int GL_TEXTURE_HI_SIZE_NV = 0x871b; + public static final int GL_TEXTURE_BORDER_VALUES_NV = 0x871a; public static final int GL_VIBRANCE_BIAS_NV = 0x8719; - public static final int GL_TEXTURE_BORDER_VALUES_NV = 0x871A; - public static final int GL_TEXTURE_HI_SIZE_NV = 0x871B; - public static final int GL_TEXTURE_LO_SIZE_NV = 0x871C; - public static final int GL_TEXTURE_DS_SIZE_NV = 0x871D; - public static final int GL_TEXTURE_DT_SIZE_NV = 0x871E; - public static final int GL_TEXTURE_MAG_SIZE_NV = 0x871F; + public static final int GL_MAGNITUDE_BIAS_NV = 0x8718; + public static final int GL_DT_BIAS_NV = 0x8717; + public static final int GL_DS_BIAS_NV = 0x8716; + public static final int GL_LO_BIAS_NV = 0x8715; + public static final int GL_HI_BIAS_NV = 0x8714; + public static final int GL_VIBRANCE_SCALE_NV = 0x8713; + public static final int GL_MAGNITUDE_SCALE_NV = 0x8712; + public static final int GL_DT_SCALE_NV = 0x8711; + public static final int GL_DS_SCALE_NV = 0x8710; + public static final int GL_LO_SCALE_NV = 0x870f; + public static final int GL_HI_SCALE_NV = 0x870e; + public static final int GL_DSDT8_MAG8_INTENSITY8_NV = 0x870b; + public static final int GL_DSDT_MAG_INTENSITY_NV = 0x86dc; + public static final int GL_DSDT8_MAG8_NV = 0x870a; + public static final int GL_DSDT8_NV = 0x8709; + public static final int GL_SIGNED_HILO16_NV = 0x86fa; + public static final int GL_SIGNED_HILO_NV = 0x86f9; + public static final int GL_HILO16_NV = 0x86f8; + public static final int GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870d; + public static final int GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870c; + public static final int GL_SIGNED_INTENSITY8_NV = 0x8708; + public static final int GL_SIGNED_INTENSITY_NV = 0x8707; + public static final int GL_SIGNED_ALPHA8_NV = 0x8706; + public static final int GL_SIGNED_ALPHA_NV = 0x8705; + public static final int GL_SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704; + public static final int GL_SIGNED_LUMINANCE_ALPHA_NV = 0x8703; + public static final int GL_SIGNED_LUMINANCE8_NV = 0x8702; + public static final int GL_SIGNED_LUMINANCE_NV = 0x8701; + public static final int GL_SIGNED_RGB8_NV = 0x86ff; + public static final int GL_SIGNED_RGB_NV = 0x86fe; + public static final int GL_SIGNED_RGBA8_NV = 0x86fc; + public static final int GL_SIGNED_RGBA_NV = 0x86fb; + public static final int GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86db; + public static final int GL_UNSIGNED_INT_S8_S8_8_8_NV = 0x86da; + public static final int GL_DSDT_MAG_VIB_NV = 0x86f7; + public static final int GL_DSDT_MAG_NV = 0x86f6; + public static final int GL_DSDT_NV = 0x86f5; + public static final int GL_HILO_NV = 0x86f4; + public static final int GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV = 0x86f3; + public static final int GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV = 0x86f2; + public static final int GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV = 0x86f1; + public static final int GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV = 0x86f0; + public static final int GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV = 0x864e; + public static final int GL_DOT_PRODUCT_TEXTURE_2D_NV = 0x86ee; + public static final int GL_DOT_PRODUCT_DEPTH_REPLACE_NV = 0x86ed; + public static final int GL_DOT_PRODUCT_NV = 0x86ec; + public static final int GL_DEPENDENT_GB_TEXTURE_2D_NV = 0x86ea; + public static final int GL_DEPENDENT_AR_TEXTURE_2D_NV = 0x86e9; + public static final int GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV = 0x864d; + public static final int GL_OFFSET_TEXTURE_RECTANGLE_NV = 0x864c; + public static final int GL_OFFSET_TEXTURE_2D_NV = 0x86e8; + public static final int GL_CULL_FRAGMENT_NV = 0x86e7; + public static final int GL_PASS_THROUGH_NV = 0x86e6; + public static final int GL_SHADER_CONSISTENT_NV = 0x86dd; + public static final int GL_CONST_EYE_NV = 0x86e5; + public static final int GL_PREVIOUS_TEXTURE_INPUT_NV = 0x86e4; + public static final int GL_OFFSET_TEXTURE_BIAS_NV = 0x86e3; + public static final int GL_OFFSET_TEXTURE_SCALE_NV = 0x86e2; + public static final int GL_OFFSET_TEXTURE_MATRIX_NV = 0x86e1; + public static final int GL_CULL_MODES_NV = 0x86e0; + public static final int GL_SHADER_OPERATION_NV = 0x86df; + public static final int GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV = 0x86d9; + public static final int GL_TEXTURE_SHADER_NV = 0x86de; private NVTextureShader() { } + } diff --git a/src/java/org/lwjgl/opengl/NVTextureShader2.java b/src/java/org/lwjgl/opengl/NVTextureShader2.java index 7b508f4e..9bf7b689 100644 --- a/src/java/org/lwjgl/opengl/NVTextureShader2.java +++ b/src/java/org/lwjgl/opengl/NVTextureShader2.java @@ -1,67 +1,42 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVTextureShader2 { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_DOT_PRODUCT_TEXTURE_3D_NV = 0x86EF; - public static final int GL_HILO_NV = 0x86F4; - public static final int GL_DSDT_NV = 0x86F5; - public static final int GL_DSDT_MAG_NV = 0x86F6; - public static final int GL_DSDT_MAG_VIB_NV = 0x86F7; - public static final int GL_UNSIGNED_INT_S8_S8_8_8_NV = 0x86DA; - public static final int GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86DB; - public static final int GL_SIGNED_RGBA_NV = 0x86FB; - public static final int GL_SIGNED_RGBA8_NV = 0x86FC; - public static final int GL_SIGNED_RGB_NV = 0x86FE; - public static final int GL_SIGNED_RGB8_NV = 0x86FF; - public static final int GL_SIGNED_LUMINANCE_NV = 0x8701; - public static final int GL_SIGNED_LUMINANCE8_NV = 0x8702; - public static final int GL_SIGNED_LUMINANCE_ALPHA_NV = 0x8703; - public static final int GL_SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704; - public static final int GL_SIGNED_ALPHA_NV = 0x8705; - public static final int GL_SIGNED_ALPHA8_NV = 0x8706; - public static final int GL_SIGNED_INTENSITY_NV = 0x8707; - public static final int GL_SIGNED_INTENSITY8_NV = 0x8708; - public static final int GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870C; - public static final int GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870D; - public static final int GL_HILO16_NV = 0x86F8; - public static final int GL_SIGNED_HILO_NV = 0x86F9; - public static final int GL_SIGNED_HILO16_NV = 0x86FA; +public final class NVTextureShader2 { + public static final int GL_DSDT8_MAG8_INTENSITY8_NV = 0x870b; + public static final int GL_DSDT_MAG_INTENSITY_NV = 0x86dc; + public static final int GL_DSDT8_MAG8_NV = 0x870a; public static final int GL_DSDT8_NV = 0x8709; - public static final int GL_DSDT8_MAG8_NV = 0x870A; - public static final int GL_DSDT_MAG_INTENSITY_NV = 0x86DC; - public static final int GL_DSDT8_MAG8_INTENSITY8_NV = 0x870B; + public static final int GL_SIGNED_HILO16_NV = 0x86fa; + public static final int GL_SIGNED_HILO_NV = 0x86f9; + public static final int GL_HILO16_NV = 0x86f8; + public static final int GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870d; + public static final int GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870c; + public static final int GL_SIGNED_INTENSITY8_NV = 0x8708; + public static final int GL_SIGNED_INTENSITY_NV = 0x8707; + public static final int GL_SIGNED_ALPHA8_NV = 0x8706; + public static final int GL_SIGNED_ALPHA_NV = 0x8705; + public static final int GL_SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704; + public static final int GL_SIGNED_LUMINANCE_ALPHA_NV = 0x8703; + public static final int GL_SIGNED_LUMINANCE8_NV = 0x8702; + public static final int GL_SIGNED_LUMINANCE_NV = 0x8701; + public static final int GL_SIGNED_RGB8_NV = 0x86ff; + public static final int GL_SIGNED_RGB_NV = 0x86fe; + public static final int GL_SIGNED_RGBA8_NV = 0x86fc; + public static final int GL_SIGNED_RGBA_NV = 0x86fb; + public static final int GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86db; + public static final int GL_UNSIGNED_INT_S8_S8_8_8_NV = 0x86da; + public static final int GL_DSDT_MAG_VIB_NV = 0x86f7; + public static final int GL_DSDT_MAG_NV = 0x86f6; + public static final int GL_DSDT_NV = 0x86f5; + public static final int GL_HILO_NV = 0x86f4; + public static final int GL_DOT_PRODUCT_TEXTURE_3D_NV = 0x86ef; private NVTextureShader2() { } + } diff --git a/src/java/org/lwjgl/opengl/NVTextureShader3.java b/src/java/org/lwjgl/opengl/NVTextureShader3.java index 9bfe5786..300460ca 100644 --- a/src/java/org/lwjgl/opengl/NVTextureShader3.java +++ b/src/java/org/lwjgl/opengl/NVTextureShader3.java @@ -1,56 +1,31 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVTextureShader3 { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - public static final int GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV = 0x8850; - public static final int GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV = 0x8851; - public static final int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8852; - public static final int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV = 0x8853; - public static final int GL_OFFSET_HILO_TEXTURE_2D_NV = 0x8854; - public static final int GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV = 0x8855; - public static final int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV = 0x8856; - public static final int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8857; - public static final int GL_DEPENDENT_HILO_TEXTURE_2D_NV = 0x8858; - public static final int GL_DEPENDENT_RGB_TEXTURE_3D_NV = 0x8859; - public static final int GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV = 0x885A; - public static final int GL_DOT_PRODUCT_PASS_THROUGH_NV = 0x885B; - public static final int GL_DOT_PRODUCT_TEXTURE_1D_NV = 0x885C; - public static final int GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV = 0x885D; - public static final int GL_HILO8_NV = 0x885E; - public static final int GL_SIGNED_HILO8_NV = 0x885F; +public final class NVTextureShader3 { public static final int GL_FORCE_BLUE_TO_ONE_NV = 0x8860; + public static final int GL_SIGNED_HILO8_NV = 0x885f; + public static final int GL_HILO8_NV = 0x885e; + public static final int GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV = 0x885d; + public static final int GL_DOT_PRODUCT_TEXTURE_1D_NV = 0x885c; + public static final int GL_DOT_PRODUCT_PASS_THROUGH_NV = 0x885b; + public static final int GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV = 0x885a; + public static final int GL_DEPENDENT_RGB_TEXTURE_3D_NV = 0x8859; + public static final int GL_DEPENDENT_HILO_TEXTURE_2D_NV = 0x8858; + public static final int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8857; + public static final int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV = 0x8856; + public static final int GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV = 0x8855; + public static final int GL_OFFSET_HILO_TEXTURE_2D_NV = 0x8854; + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV = 0x8853; + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8852; + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV = 0x8851; + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV = 0x8850; private NVTextureShader3() { } + } diff --git a/src/java/org/lwjgl/opengl/NVVertexArrayRange.java b/src/java/org/lwjgl/opengl/NVVertexArrayRange.java index be0c6b24..2a0f943b 100644 --- a/src/java/org/lwjgl/opengl/NVVertexArrayRange.java +++ b/src/java/org/lwjgl/opengl/NVVertexArrayRange.java @@ -1,69 +1,48 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.ByteBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVVertexArrayRange { - - public static final int GL_VERTEX_ARRAY_RANGE_NV = 0x851D; - public static final int GL_VERTEX_ARRAY_RANGE_LENGTH_NV = 0x851E; - public static final int GL_VERTEX_ARRAY_RANGE_VALID_NV = 0x851F; - public static final int GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = 0x8520; public static final int GL_VERTEX_ARRAY_RANGE_POINTER_NV = 0x8521; + public static final int GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = 0x8520; + public static final int GL_VERTEX_ARRAY_RANGE_VALID_NV = 0x851f; + public static final int GL_VERTEX_ARRAY_RANGE_LENGTH_NV = 0x851e; + public static final int GL_VERTEX_ARRAY_RANGE_NV = 0x851d; private NVVertexArrayRange() { } static native void initNativeStubs() throws LWJGLException; - public static void glVertexArrayRangeNV(ByteBuffer pPointer) { - BufferChecks.checkDirect(pPointer); - nglVertexArrayRangeNV(pPointer.remaining(), pPointer, pPointer.position()); + public static void glFreeMemoryNV(ByteBuffer pointer) { + BufferChecks.checkDirect(pointer); + nglFreeMemoryNV(pointer, pointer.position()); } + private static native void nglFreeMemoryNV(Buffer pointer, int pointer_position); - private static native void nglVertexArrayRangeNV(int size, Buffer pPointer, int pPointer_offset); + public static native java.nio.ByteBuffer glAllocateMemoryNV(int size, float readFrequency, float writeFrequency, float priority, int result_size); public static native void glFlushVertexArrayRangeNV(); - public static native ByteBuffer glXAllocateMemoryNV(int size, float readFrequency, float writeFrequency, float priority); - - private static native void glXFreeMemoryNV(ByteBuffer pointer); - - public static native ByteBuffer wglAllocateMemoryNV(int size, float readFrequency, float writeFrequency, float priority); - - public static native void wglFreeMemoryNV(ByteBuffer pointer); + public static void glVertexArrayRangeNV(ShortBuffer pPointer) { + BufferChecks.checkDirect(pPointer); + nglVertexArrayRangeNV((pPointer.remaining() << 1), pPointer, pPointer.position() << 1); + } + public static void glVertexArrayRangeNV(IntBuffer pPointer) { + BufferChecks.checkDirect(pPointer); + nglVertexArrayRangeNV((pPointer.remaining() << 2), pPointer, pPointer.position() << 2); + } + public static void glVertexArrayRangeNV(ByteBuffer pPointer) { + BufferChecks.checkDirect(pPointer); + nglVertexArrayRangeNV((pPointer.remaining()), pPointer, pPointer.position()); + } + public static void glVertexArrayRangeNV(FloatBuffer pPointer) { + BufferChecks.checkDirect(pPointer); + nglVertexArrayRangeNV((pPointer.remaining() << 2), pPointer, pPointer.position() << 2); + } + private static native void nglVertexArrayRangeNV(int size, Buffer pPointer, int pPointer_position); } diff --git a/src/java/org/lwjgl/opengl/NVVertexArrayRange2.java b/src/java/org/lwjgl/opengl/NVVertexArrayRange2.java index 23aee96d..d5f5a73f 100644 --- a/src/java/org/lwjgl/opengl/NVVertexArrayRange2.java +++ b/src/java/org/lwjgl/opengl/NVVertexArrayRange2.java @@ -1,40 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVVertexArrayRange2 { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; +public final class NVVertexArrayRange2 { public static final int GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV = 0x8533; private NVVertexArrayRange2() { } + } diff --git a/src/java/org/lwjgl/opengl/NVVertexProgram.java b/src/java/org/lwjgl/opengl/NVVertexProgram.java index bd72fe9b..b14412f5 100644 --- a/src/java/org/lwjgl/opengl/NVVertexProgram.java +++ b/src/java/org/lwjgl/opengl/NVVertexProgram.java @@ -1,399 +1,232 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package org.lwjgl.opengl; +/* MACHINE GENERATED FILE, DO NOT EDIT */ -import java.nio.Buffer; -import java.nio.BufferOverflowException; -import java.nio.ByteBuffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; -import java.nio.ShortBuffer; +package org.lwjgl.opengl; import org.lwjgl.LWJGLException; import org.lwjgl.BufferChecks; +import java.nio.*; public final class NVVertexProgram extends NVProgram { - - /* - Accepted by the parameter of Disable, Enable, and IsEnabled, - and by the parameter of GetBooleanv, GetIntegerv, GetFloatv, - and GetDoublev, and by the parameter of BindProgramNV, - ExecuteProgramNV, GetProgramParameter[df]vNV, GetTrackMatrixivNV, - LoadProgramNV, ProgramParameter[s]4[df][v]NV, and TrackMatrixNV: - */ - public static final int GL_VERTEX_PROGRAM_NV = 0x8620; - - /* - Accepted by the parameter of Disable, Enable, and IsEnabled, - and by the parameter of GetBooleanv, GetIntegerv, GetFloatv, - and GetDoublev: - */ - public static final int GL_VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642; - public static final int GL_VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643; - - /* - Accepted by the parameter of ExecuteProgramNV and - LoadProgramNV: - */ - public static final int GL_VERTEX_STATE_PROGRAM_NV = 0x8621; - - /* - Accepted by the parameter of GetVertexAttrib[dfi]vNV: - */ - public static final int GL_ATTRIB_ARRAY_SIZE_NV = 0x8623; - public static final int GL_ATTRIB_ARRAY_STRIDE_NV = 0x8624; - public static final int GL_ATTRIB_ARRAY_TYPE_NV = 0x8625; - public static final int GL_CURRENT_ATTRIB_NV = 0x8626; - - /* - Accepted by the parameter of GetProgramParameterfvNV - and GetProgramParameterdvNV: - */ - public static final int GL_PROGRAM_PARAMETER_NV = 0x8644; - - /* - Accepted by the parameter of GetVertexAttribPointervNV: - */ - public static final int GL_ATTRIB_ARRAY_POINTER_NV = 0x8645; - - /* - Accepted by the parameter of GetTrackMatrixivNV: - */ - public static final int GL_TRACK_MATRIX_NV = 0x8648; - public static final int GL_TRACK_MATRIX_TRANSFORM_NV = 0x8649; - - /* - Accepted by the parameter of GetBooleanv, GetIntegerv, - GetFloatv, and GetDoublev: - */ - public static final int GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = 0x862E; - public static final int GL_MAX_TRACK_MATRICES_NV = 0x862F; - public static final int GL_CURRENT_MATRIX_STACK_DEPTH_NV = 0x8640; - public static final int GL_CURRENT_MATRIX_NV = 0x8641; - public static final int GL_VERTEX_PROGRAM_BINDING_NV = 0x864A; - - /* - Accepted by the parameter of TrackMatrixNV: - */ - public static final int GL_MODELVIEW_PROJECTION_NV = 0x8629; - - /* - Accepted by the parameter of TrackMatrixNV and by the - parameter of MatrixMode: - */ - public static final int GL_MATRIX0_NV = 0x8630; - public static final int GL_MATRIX1_NV = 0x8631; - public static final int GL_MATRIX2_NV = 0x8632; - public static final int GL_MATRIX3_NV = 0x8633; - public static final int GL_MATRIX4_NV = 0x8634; - public static final int GL_MATRIX5_NV = 0x8635; - public static final int GL_MATRIX6_NV = 0x8636; - public static final int GL_MATRIX7_NV = 0x8637; - - /* - Accepted by the parameter of TrackMatrixNV: - */ - public static final int GL_IDENTITY_NV = 0x862A; - public static final int GL_INVERSE_NV = 0x862B; - public static final int GL_TRANSPOSE_NV = 0x862C; - public static final int GL_INVERSE_TRANSPOSE_NV = 0x862D; - - /* - Accepted by the parameter of EnableClientState and - DisableClientState, by the parameter of IsEnabled, and by - the parameter of GetBooleanv, GetIntegerv, GetFloatv, and - GetDoublev: - */ - public static final int GL_VERTEX_ATTRIB_ARRAY0_NV = 0x8650; - public static final int GL_VERTEX_ATTRIB_ARRAY1_NV = 0x8651; - public static final int GL_VERTEX_ATTRIB_ARRAY2_NV = 0x8652; - public static final int GL_VERTEX_ATTRIB_ARRAY3_NV = 0x8653; - public static final int GL_VERTEX_ATTRIB_ARRAY4_NV = 0x8654; - public static final int GL_VERTEX_ATTRIB_ARRAY5_NV = 0x8655; - public static final int GL_VERTEX_ATTRIB_ARRAY6_NV = 0x8656; - public static final int GL_VERTEX_ATTRIB_ARRAY7_NV = 0x8657; - public static final int GL_VERTEX_ATTRIB_ARRAY8_NV = 0x8658; - public static final int GL_VERTEX_ATTRIB_ARRAY9_NV = 0x8659; - public static final int GL_VERTEX_ATTRIB_ARRAY10_NV = 0x865A; - public static final int GL_VERTEX_ATTRIB_ARRAY11_NV = 0x865B; - public static final int GL_VERTEX_ATTRIB_ARRAY12_NV = 0x865C; - public static final int GL_VERTEX_ATTRIB_ARRAY13_NV = 0x865D; - public static final int GL_VERTEX_ATTRIB_ARRAY14_NV = 0x865E; - public static final int GL_VERTEX_ATTRIB_ARRAY15_NV = 0x865F; - - /* - Accepted by the parameter of GetMapdv, GetMapfv, GetMapiv, - Map1d and Map1f and by the parameter of Enable, Disable, and - IsEnabled, and by the parameter of GetBooleanv, GetIntegerv, - GetFloatv, and GetDoublev: - */ - public static final int GL_MAP1_VERTEX_ATTRIB0_4_NV = 0x8660; - public static final int GL_MAP1_VERTEX_ATTRIB1_4_NV = 0x8661; - public static final int GL_MAP1_VERTEX_ATTRIB2_4_NV = 0x8662; - public static final int GL_MAP1_VERTEX_ATTRIB3_4_NV = 0x8663; - public static final int GL_MAP1_VERTEX_ATTRIB4_4_NV = 0x8664; - public static final int GL_MAP1_VERTEX_ATTRIB5_4_NV = 0x8665; - public static final int GL_MAP1_VERTEX_ATTRIB6_4_NV = 0x8666; - public static final int GL_MAP1_VERTEX_ATTRIB7_4_NV = 0x8667; - public static final int GL_MAP1_VERTEX_ATTRIB8_4_NV = 0x8668; - public static final int GL_MAP1_VERTEX_ATTRIB9_4_NV = 0x8669; - public static final int GL_MAP1_VERTEX_ATTRIB10_4_NV = 0x866A; - public static final int GL_MAP1_VERTEX_ATTRIB11_4_NV = 0x866B; - public static final int GL_MAP1_VERTEX_ATTRIB12_4_NV = 0x866C; - public static final int GL_MAP1_VERTEX_ATTRIB13_4_NV = 0x866D; - public static final int GL_MAP1_VERTEX_ATTRIB14_4_NV = 0x866E; - public static final int GL_MAP1_VERTEX_ATTRIB15_4_NV = 0x866F; - - /* - Accepted by the parameter of GetMapdv, GetMapfv, GetMapiv, - Map2d and Map2f and by the parameter of Enable, Disable, and - IsEnabled, and by the parameter of GetBooleanv, GetIntegerv, - GetFloatv, and GetDoublev: - */ - public static final int GL_MAP2_VERTEX_ATTRIB0_4_NV = 0x8670; - public static final int GL_MAP2_VERTEX_ATTRIB1_4_NV = 0x8671; - public static final int GL_MAP2_VERTEX_ATTRIB2_4_NV = 0x8672; - public static final int GL_MAP2_VERTEX_ATTRIB3_4_NV = 0x8673; - public static final int GL_MAP2_VERTEX_ATTRIB4_4_NV = 0x8674; - public static final int GL_MAP2_VERTEX_ATTRIB5_4_NV = 0x8675; - public static final int GL_MAP2_VERTEX_ATTRIB6_4_NV = 0x8676; - public static final int GL_MAP2_VERTEX_ATTRIB7_4_NV = 0x8677; - public static final int GL_MAP2_VERTEX_ATTRIB8_4_NV = 0x8678; + public static final int GL_MAP2_VERTEX_ATTRIB15_4_NV = 0x867f; + public static final int GL_MAP2_VERTEX_ATTRIB14_4_NV = 0x867e; + public static final int GL_MAP2_VERTEX_ATTRIB13_4_NV = 0x867d; + public static final int GL_MAP2_VERTEX_ATTRIB12_4_NV = 0x867c; + public static final int GL_MAP2_VERTEX_ATTRIB11_4_NV = 0x867b; + public static final int GL_MAP2_VERTEX_ATTRIB10_4_NV = 0x867a; public static final int GL_MAP2_VERTEX_ATTRIB9_4_NV = 0x8679; - public static final int GL_MAP2_VERTEX_ATTRIB10_4_NV = 0x867A; - public static final int GL_MAP2_VERTEX_ATTRIB11_4_NV = 0x867B; - public static final int GL_MAP2_VERTEX_ATTRIB12_4_NV = 0x867C; - public static final int GL_MAP2_VERTEX_ATTRIB13_4_NV = 0x867D; - public static final int GL_MAP2_VERTEX_ATTRIB14_4_NV = 0x867E; - public static final int GL_MAP2_VERTEX_ATTRIB15_4_NV = 0x867F; + public static final int GL_MAP2_VERTEX_ATTRIB8_4_NV = 0x8678; + public static final int GL_MAP2_VERTEX_ATTRIB7_4_NV = 0x8677; + public static final int GL_MAP2_VERTEX_ATTRIB6_4_NV = 0x8676; + public static final int GL_MAP2_VERTEX_ATTRIB5_4_NV = 0x8675; + public static final int GL_MAP2_VERTEX_ATTRIB4_4_NV = 0x8674; + public static final int GL_MAP2_VERTEX_ATTRIB3_4_NV = 0x8673; + public static final int GL_MAP2_VERTEX_ATTRIB2_4_NV = 0x8672; + public static final int GL_MAP2_VERTEX_ATTRIB1_4_NV = 0x8671; + public static final int GL_MAP2_VERTEX_ATTRIB0_4_NV = 0x8670; + public static final int GL_MAP1_VERTEX_ATTRIB15_4_NV = 0x866f; + public static final int GL_MAP1_VERTEX_ATTRIB14_4_NV = 0x866e; + public static final int GL_MAP1_VERTEX_ATTRIB13_4_NV = 0x866d; + public static final int GL_MAP1_VERTEX_ATTRIB12_4_NV = 0x866c; + public static final int GL_MAP1_VERTEX_ATTRIB11_4_NV = 0x866b; + public static final int GL_MAP1_VERTEX_ATTRIB10_4_NV = 0x866a; + public static final int GL_MAP1_VERTEX_ATTRIB9_4_NV = 0x8669; + public static final int GL_MAP1_VERTEX_ATTRIB8_4_NV = 0x8668; + public static final int GL_MAP1_VERTEX_ATTRIB7_4_NV = 0x8667; + public static final int GL_MAP1_VERTEX_ATTRIB6_4_NV = 0x8666; + public static final int GL_MAP1_VERTEX_ATTRIB5_4_NV = 0x8665; + public static final int GL_MAP1_VERTEX_ATTRIB4_4_NV = 0x8664; + public static final int GL_MAP1_VERTEX_ATTRIB3_4_NV = 0x8663; + public static final int GL_MAP1_VERTEX_ATTRIB2_4_NV = 0x8662; + public static final int GL_MAP1_VERTEX_ATTRIB1_4_NV = 0x8661; + public static final int GL_MAP1_VERTEX_ATTRIB0_4_NV = 0x8660; + public static final int GL_VERTEX_ATTRIB_ARRAY15_NV = 0x865f; + public static final int GL_VERTEX_ATTRIB_ARRAY14_NV = 0x865e; + public static final int GL_VERTEX_ATTRIB_ARRAY13_NV = 0x865d; + public static final int GL_VERTEX_ATTRIB_ARRAY12_NV = 0x865c; + public static final int GL_VERTEX_ATTRIB_ARRAY11_NV = 0x865b; + public static final int GL_VERTEX_ATTRIB_ARRAY10_NV = 0x865a; + public static final int GL_VERTEX_ATTRIB_ARRAY9_NV = 0x8659; + public static final int GL_VERTEX_ATTRIB_ARRAY8_NV = 0x8658; + public static final int GL_VERTEX_ATTRIB_ARRAY7_NV = 0x8657; + public static final int GL_VERTEX_ATTRIB_ARRAY6_NV = 0x8656; + public static final int GL_VERTEX_ATTRIB_ARRAY5_NV = 0x8655; + public static final int GL_VERTEX_ATTRIB_ARRAY4_NV = 0x8654; + public static final int GL_VERTEX_ATTRIB_ARRAY3_NV = 0x8653; + public static final int GL_VERTEX_ATTRIB_ARRAY2_NV = 0x8652; + public static final int GL_VERTEX_ATTRIB_ARRAY1_NV = 0x8651; + public static final int GL_VERTEX_ATTRIB_ARRAY0_NV = 0x8650; + public static final int GL_INVERSE_TRANSPOSE_NV = 0x862d; + public static final int GL_TRANSPOSE_NV = 0x862c; + public static final int GL_INVERSE_NV = 0x862b; + public static final int GL_IDENTITY_NV = 0x862a; + public static final int GL_MATRIX7_NV = 0x8637; + public static final int GL_MATRIX6_NV = 0x8636; + public static final int GL_MATRIX5_NV = 0x8635; + public static final int GL_MATRIX4_NV = 0x8634; + public static final int GL_MATRIX3_NV = 0x8633; + public static final int GL_MATRIX2_NV = 0x8632; + public static final int GL_MATRIX1_NV = 0x8631; + public static final int GL_MATRIX0_NV = 0x8630; + public static final int GL_MODELVIEW_PROJECTION_NV = 0x8629; + public static final int GL_VERTEX_PROGRAM_BINDING_NV = 0x864a; + public static final int GL_CURRENT_MATRIX_NV = 0x8641; + public static final int GL_CURRENT_MATRIX_STACK_DEPTH_NV = 0x8640; + public static final int GL_MAX_TRACK_MATRICES_NV = 0x862f; + public static final int GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = 0x862e; + public static final int GL_TRACK_MATRIX_TRANSFORM_NV = 0x8649; + public static final int GL_TRACK_MATRIX_NV = 0x8648; + public static final int GL_ATTRIB_ARRAY_POINTER_NV = 0x8645; + public static final int GL_PROGRAM_PARAMETER_NV = 0x8644; + public static final int GL_CURRENT_ATTRIB_NV = 0x8626; + public static final int GL_ATTRIB_ARRAY_TYPE_NV = 0x8625; + public static final int GL_ATTRIB_ARRAY_STRIDE_NV = 0x8624; + public static final int GL_ATTRIB_ARRAY_SIZE_NV = 0x8623; + public static final int GL_VERTEX_STATE_PROGRAM_NV = 0x8621; + public static final int GL_VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643; + public static final int GL_VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642; + public static final int GL_VERTEX_PROGRAM_NV = 0x8620; private NVVertexProgram() { } static native void initNativeStubs() throws LWJGLException; - // --------------------------- - - public static void glExecuteProgramNV(int target, int id, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglExecuteProgramNV(target, id, params, params.position()); - } - - private static native void nglExecuteProgramNV(int target, int id, FloatBuffer params, int paramsOffset); - - // --------------------------- - - // --------------------------- - - public static void glGetProgramParameterNV(int target, int index, int parameterName, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetProgramParameterfvNV(target, index, parameterName, params, params.position()); - } - - private static native void nglGetProgramParameterfvNV(int target, int index, int parameterName, FloatBuffer params, int paramsOffset); - - // --------------------------- - - // --------------------------- - - public static void glGetTrackMatrixNV(int target, int address, int parameterName, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetTrackMatrixivNV(target, address, parameterName, params, params.position()); - - } - - private static native void nglGetTrackMatrixivNV(int target, int address, int parameterName, IntBuffer params, int paramsOffset); - - // --------------------------- - - // --------------------------- - - public static void glGetVertexAttribNV(int index, int parameterName, FloatBuffer params) { - BufferChecks.checkBuffer(params); - nglGetVertexAttribfvNV(index, parameterName, params, params.position()); - } - - private static native void nglGetVertexAttribfvNV(int index, int parameterName, FloatBuffer params, int paramsOffset); - - // --------------------------- - - // --------------------------- - - public static void glGetVertexAttribNV(int index, int parameterName, IntBuffer params) { - BufferChecks.checkBuffer(params); - nglGetVertexAttribivNV(index, parameterName, params, params.position()); - } - - private static native void nglGetVertexAttribivNV(int index, int parameterName, IntBuffer params, int paramsOffset); - - // --------------------------- - - public static native ByteBuffer glGetVertexAttribPointerNV(int index, int parameterName, int size); - - public static native void glProgramParameter4fNV(int target, int index, float x, float y, float z, float w); - - // --------------------------- - - public static void glProgramParameters4NV(int target, int index, int count, FloatBuffer params) { - BufferChecks.checkDirect(params); - // Special case buffer check - if ( params.remaining() < count * 4 ) { - throw new BufferOverflowException(); - } - nglProgramParameters4fvNV(target, index, count, params, params.position()); - - } - - private static native void nglProgramParameters4fvNV(int target, int index, int count, FloatBuffer params, int paramsOffset); - - // --------------------------- - - public static native void glTrackMatrixNV(int target, int address, int matrix, int transform); - - public static void glVertexAttribPointerNV(int index, int size, boolean unsigned, int stride, ByteBuffer buffer) { - BufferChecks.checkDirect(buffer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointerNV(index, size, unsigned ? GL11.GL_UNSIGNED_BYTE : GL11.GL_BYTE, stride, buffer, buffer.position()); - } - - public static void glVertexAttribPointerNV(int index, int size, boolean unsigned, int stride, ShortBuffer buffer) { - BufferChecks.checkDirect(buffer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointerNV(index, size, unsigned ? GL11.GL_UNSIGNED_SHORT : GL11.GL_SHORT, stride, buffer, buffer.position() << 1); - } - - public static void glVertexAttribPointerNV(int index, int size, int stride, FloatBuffer buffer) { - BufferChecks.checkDirect(buffer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointerNV(index, size, GL11.GL_FLOAT, stride, buffer, buffer.position() << 2); - } - - public static void glVertexAttribPointerNV(int index, int size, boolean unsigned, int stride, IntBuffer buffer) { - BufferChecks.checkDirect(buffer); - GLBufferChecks.ensureArrayVBOdisabled(); - nglVertexAttribPointerNV(index, size, unsigned ? GL11.GL_UNSIGNED_INT : GL11.GL_INT, stride, buffer, buffer.position() << 2); - } - - private static native void nglVertexAttribPointerNV(int index, int size, int type, int stride, Buffer buffer, int bufferOffset); - - // --------------------------- - - public static void glVertexAttribPointerNV(int index, int size, int type, int stride, int bufferOffset) { - GLBufferChecks.ensureArrayVBOenabled(); - nglVertexAttribPointerNVVBO(index, size, type, stride, bufferOffset); - } - - private static native void nglVertexAttribPointerNVVBO(int index, int size, int type, int stride, int bufferOffset); - - // --------------------------- - - public static native void glVertexAttrib1sNV(int index, short x); - - public static native void glVertexAttrib1fNV(int index, float x); - - public static native void glVertexAttrib2sNV(int index, short x, short y); - - public static native void glVertexAttrib2fNV(int index, float x, float y); - - public static native void glVertexAttrib3sNV(int index, short x, short y, short z); - - public static native void glVertexAttrib3fNV(int index, float x, float y, float z); - - public static native void glVertexAttrib4sNV(int index, short x, short y, short z, short w); - - public static native void glVertexAttrib4fNV(int index, float x, float y, float z, float w); - - public static native void glVertexAttrib4ubNV(int index, byte x, byte y, byte z, byte w); - - public static void glVertexAttribs1NV(int index, ShortBuffer v) { + public static void glVertexAttribs4NV(int index, FloatBuffer v) { BufferChecks.checkDirect(v); - nglVertexAttribs1svNV(index, v.remaining(), v, v.position() << 1); + nglVertexAttribs4fvNV(index, (v.remaining()) >> 2, v, v.position()); } - - private static native void nglVertexAttribs1svNV(int index, int n, ShortBuffer v, int v_offset); - - public static void glVertexAttribs1NV(int index, FloatBuffer v) { - BufferChecks.checkDirect(v); - nglVertexAttribs1fvNV(index, v.remaining(), v, v.position() << 2); - } - - private static native void nglVertexAttribs1fvNV(int index, int n, FloatBuffer v, int v_offset); - - public static void glVertexAttribs2NV(int index, ShortBuffer v) { - BufferChecks.checkDirect(v); - nglVertexAttribs2svNV(index, v.remaining() >> 1, v, v.position() << 1); - } - - private static native void nglVertexAttribs2svNV(int index, int n, ShortBuffer v, int v_offset); - - public static void glVertexAttribs2NV(int index, FloatBuffer v) { - BufferChecks.checkDirect(v); - nglVertexAttribs2fvNV(index, v.remaining() >> 1, v, v.position() << 2); - } - - private static native void nglVertexAttribs2fvNV(int index, int n, FloatBuffer v, int v_offset); - - public static void glVertexAttribs3NV(int index, ShortBuffer v) { - BufferChecks.checkDirect(v); - nglVertexAttribs3svNV(index, v.remaining() / 3, v, v.position() << 1); - } - - private static native void nglVertexAttribs3svNV(int index, int n, ShortBuffer v, int v_offset); - - public static void glVertexAttribs3NV(int index, FloatBuffer v) { - BufferChecks.checkDirect(v); - nglVertexAttribs3fvNV(index, v.remaining() / 3, v, v.position() << 2); - } - - private static native void nglVertexAttribs3fvNV(int index, int n, FloatBuffer v, int v_offset); + private static native void nglVertexAttribs4fvNV(int index, int n, FloatBuffer v, int v_position); public static void glVertexAttribs4NV(int index, ShortBuffer v) { BufferChecks.checkDirect(v); - nglVertexAttribs4svNV(index, v.remaining() >> 2, v, v.position() << 1); + nglVertexAttribs4svNV(index, (v.remaining()) >> 2, v, v.position()); } + private static native void nglVertexAttribs4svNV(int index, int n, ShortBuffer v, int v_position); - private static native void nglVertexAttribs4svNV(int index, int n, ShortBuffer v, int v_offset); - - public static void glVertexAttribs4NV(int index, FloatBuffer v) { + public static void glVertexAttribs3NV(int index, FloatBuffer v) { BufferChecks.checkDirect(v); - nglVertexAttribs4fvNV(index, v.remaining() >> 2, v, v.position() << 2); + nglVertexAttribs3fvNV(index, (v.remaining()) / 3, v, v.position()); } + private static native void nglVertexAttribs3fvNV(int index, int n, FloatBuffer v, int v_position); - private static native void nglVertexAttribs4fvNV(int index, int n, FloatBuffer v, int v_offset); - - public static void glVertexAttribs4uNV(int index, ByteBuffer v) { + public static void glVertexAttribs3NV(int index, ShortBuffer v) { BufferChecks.checkDirect(v); - nglVertexAttribs4ubvNV(index, v.remaining() >> 2, v, v.position()); + nglVertexAttribs3svNV(index, (v.remaining()) / 3, v, v.position()); } + private static native void nglVertexAttribs3svNV(int index, int n, ShortBuffer v, int v_position); - private static native void nglVertexAttribs4ubvNV(int index, int n, ByteBuffer v, int v_offset); + public static void glVertexAttribs2NV(int index, FloatBuffer v) { + BufferChecks.checkDirect(v); + nglVertexAttribs2fvNV(index, (v.remaining()) >> 1, v, v.position()); + } + private static native void nglVertexAttribs2fvNV(int index, int n, FloatBuffer v, int v_position); + + public static void glVertexAttribs2NV(int index, ShortBuffer v) { + BufferChecks.checkDirect(v); + nglVertexAttribs2svNV(index, (v.remaining()) >> 1, v, v.position()); + } + private static native void nglVertexAttribs2svNV(int index, int n, ShortBuffer v, int v_position); + + public static void glVertexAttribs1NV(int index, FloatBuffer v) { + BufferChecks.checkDirect(v); + nglVertexAttribs1fvNV(index, (v.remaining()), v, v.position()); + } + private static native void nglVertexAttribs1fvNV(int index, int n, FloatBuffer v, int v_position); + + public static void glVertexAttribs1NV(int index, ShortBuffer v) { + BufferChecks.checkDirect(v); + nglVertexAttribs1svNV(index, (v.remaining()), v, v.position()); + } + private static native void nglVertexAttribs1svNV(int index, int n, ShortBuffer v, int v_position); + + public static native void glVertexAttrib4ubNV(int index, byte x, byte y, byte z, byte w); + + public static native void glVertexAttrib4fNV(int index, float x, float y, float z, float w); + + public static native void glVertexAttrib4sNV(int index, short x, short y, short z, short w); + + public static native void glVertexAttrib3fNV(int index, float x, float y, float z); + + public static native void glVertexAttrib3sNV(int index, short x, short y, short z); + + public static native void glVertexAttrib2fNV(int index, float x, float y); + + public static native void glVertexAttrib2sNV(int index, short x, short y); + + public static native void glVertexAttrib1fNV(int index, float x); + + public static native void glVertexAttrib1sNV(int index, short x); + + public static void glVertexAttribPointerNV(int index, int size, int type, int stride, ShortBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointerNV(index, size, type, stride, buffer, buffer.position() << 1); + } + public static void glVertexAttribPointerNV(int index, int size, int type, int stride, IntBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointerNV(index, size, type, stride, buffer, buffer.position() << 2); + } + public static void glVertexAttribPointerNV(int index, int size, int type, int stride, ByteBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointerNV(index, size, type, stride, buffer, buffer.position()); + } + public static void glVertexAttribPointerNV(int index, int size, int type, int stride, FloatBuffer buffer) { + GLBufferChecks.ensureArrayVBOdisabled(); + BufferChecks.checkDirect(buffer); + nglVertexAttribPointerNV(index, size, type, stride, buffer, buffer.position() << 2); + } + private static native void nglVertexAttribPointerNV(int index, int size, int type, int stride, Buffer buffer, int buffer_position); + public static void glVertexAttribPointerNV(int index, int size, int type, int stride, int buffer_buffer_offset) { + GLBufferChecks.ensureArrayVBOenabled(); + nglVertexAttribPointerNVBO(index, size, type, stride, buffer_buffer_offset); + } + private static native void nglVertexAttribPointerNVBO(int index, int size, int type, int stride, int buffer_buffer_offset); + + public static native void glTrackMatrixNV(int target, int address, int matrix, int transform); + + public static void glProgramParameters4NV(int target, int index, FloatBuffer params) { + BufferChecks.checkDirect(params); + nglProgramParameters4fvNV(target, index, (params.remaining()) >> 2, params, params.position()); + } + private static native void nglProgramParameters4fvNV(int target, int index, int count, FloatBuffer params, int params_position); + + public static native void glProgramParameter4fNV(int target, int index, float x, float y, float z, float w); + + public static java.nio.ByteBuffer glGetVertexAttribPointerNV(int index, int parameterName, int result_size) { + java.nio.ByteBuffer __result = nglGetVertexAttribPointervNV(index, parameterName, result_size); + return __result; + } + private static native java.nio.ByteBuffer nglGetVertexAttribPointervNV(int index, int parameterName, int result_size); + + public static void glGetVertexAttribNV(int index, int parameterName, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetVertexAttribivNV(index, parameterName, params, params.position()); + } + private static native void nglGetVertexAttribivNV(int index, int parameterName, IntBuffer params, int params_position); + + public static void glGetVertexAttribNV(int index, int parameterName, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetVertexAttribfvNV(index, parameterName, params, params.position()); + } + private static native void nglGetVertexAttribfvNV(int index, int parameterName, FloatBuffer params, int params_position); + + public static void glGetTrackMatrixNV(int target, int address, int parameterName, IntBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetTrackMatrixivNV(target, address, parameterName, params, params.position()); + } + private static native void nglGetTrackMatrixivNV(int target, int address, int parameterName, IntBuffer params, int params_position); + + public static void glGetProgramParameterNV(int target, int index, int parameterName, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglGetProgramParameterfvNV(target, index, parameterName, params, params.position()); + } + private static native void nglGetProgramParameterfvNV(int target, int index, int parameterName, FloatBuffer params, int params_position); + + public static void glExecuteProgramNV(int target, int id, FloatBuffer params) { + BufferChecks.checkBuffer(params, 4); + nglExecuteProgramNV(target, id, params, params.position()); + } + private static native void nglExecuteProgramNV(int target, int id, FloatBuffer params, int params_position); } diff --git a/src/java/org/lwjgl/opengl/NVVertexProgram2Option.java b/src/java/org/lwjgl/opengl/NVVertexProgram2Option.java index bad52a2d..10cee44d 100644 --- a/src/java/org/lwjgl/opengl/NVVertexProgram2Option.java +++ b/src/java/org/lwjgl/opengl/NVVertexProgram2Option.java @@ -1,44 +1,16 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVVertexProgram2Option { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - /* - * Accepted by the parameter of GetProgramivARB: - */ - public static final int GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88F4; - public static final int GL_MAX_PROGRAM_CALL_DEPTH_NV = 0x88F5; +public final class NVVertexProgram2Option { + public static final int GL_MAX_PROGRAM_CALL_DEPTH_NV = 0x88f5; + public static final int GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88f4; private NVVertexProgram2Option() { } + } diff --git a/src/java/org/lwjgl/opengl/NVVertexProgram3.java b/src/java/org/lwjgl/opengl/NVVertexProgram3.java index c93959cb..d8ffc3ef 100644 --- a/src/java/org/lwjgl/opengl/NVVertexProgram3.java +++ b/src/java/org/lwjgl/opengl/NVVertexProgram3.java @@ -1,44 +1,15 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ + package org.lwjgl.opengl; -public final class NVVertexProgram3 { +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import java.nio.*; - /* - * Accepted by the parameter of GetBooleanv, GetIntegerv, - * GetFloatv, and GetDoublev: - */ - public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8B4C; +public final class NVVertexProgram3 { + public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8b4c; private NVVertexProgram3() { } + } diff --git a/src/java/org/lwjgl/util/GL.java b/src/java/org/lwjgl/util/GL.java index 6dce5e0b..49aff751 100644 --- a/src/java/org/lwjgl/util/GL.java +++ b/src/java/org/lwjgl/util/GL.java @@ -786,8 +786,8 @@ public class GL { * @param map * @param values */ - public static void glGetPixelMap(int map, IntBuffer values) { - GL11.glGetPixelMap(map, values); + public static void glGetPixelMapu(int map, IntBuffer values) { + GL11.glGetPixelMapu(map, values); } /** @@ -802,8 +802,8 @@ public class GL { * @param map * @param values */ - public static void glGetPixelMap(int map, ShortBuffer values) { - GL11.glGetPixelMap(map, values); + public static void glGetPixelMapu(int map, ShortBuffer values) { + GL11.glGetPixelMapu(map, values); } /** @@ -820,8 +820,8 @@ public class GL { * * @return */ - public static ByteBuffer glGetPointerv(int pname, int size) { - return GL11.glGetPointerv(pname, size); + public static ByteBuffer glGetPointer(int pname, int size) { + return GL11.glGetPointer(pname, size); } /** @param mask */ @@ -1358,8 +1358,8 @@ public class GL { * @param map * @param values */ - public static void glPixelMap(int map, IntBuffer values) { - GL11.glPixelMap(map, values); + public static void glPixelMapu(int map, IntBuffer values) { + GL11.glPixelMapu(map, values); } /** @@ -1375,8 +1375,8 @@ public class GL { * @param map * @param values */ - public static void glPixelMap(int map, ShortBuffer values) { - GL11.glPixelMap(map, values); + public static void glPixelMapu(int map, ShortBuffer values) { + GL11.glPixelMapu(map, values); } /** @@ -3655,8 +3655,8 @@ public class GL { * @param index * @param params */ - public static void glProgramEnvParameterARB(int target, int index, FloatBuffer params) { - ARBFragmentProgram.glProgramEnvParameterARB(target, index, params); + public static void glProgramEnvParameter4ARB(int target, int index, FloatBuffer params) { + ARBFragmentProgram.glProgramEnvParameter4ARB(target, index, params); } /** @@ -3676,8 +3676,8 @@ public class GL { * @param index * @param params */ - public static void glProgramLocalParameterARB(int target, int index, FloatBuffer params) { - ARBFragmentProgram.glProgramLocalParameterARB(target, index, params); + public static void glProgramLocalParameter4ARB(int target, int index, FloatBuffer params) { + ARBFragmentProgram.glProgramLocalParameter4ARB(target, index, params); } /** @@ -3923,8 +3923,8 @@ public class GL { * @param pname * @param params */ - public static void glConvolutionParameteriv(int target, int pname, IntBuffer params) { - ARBImaging.glConvolutionParameteriv(target, pname, params); + public static void glConvolutionParameter(int target, int pname, IntBuffer params) { + ARBImaging.glConvolutionParameter(target, pname, params); } /** @@ -4225,10 +4225,10 @@ public class GL { * @param column * @param span */ - public static void glGetSeparableFilter(int target, int format, int type, Buffer row, Buffer column, Buffer span) { +/* public static void glGetSeparableFilter(int target, int format, int type, Buffer row, Buffer column, Buffer span) { ARBImaging.glGetSeparableFilter(target, format, type, row, column, span); } - +*/ /** * @param target * @param format @@ -4280,10 +4280,10 @@ public class GL { * @param row * @param column */ - public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer row, Buffer column) { +/* public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer row, Buffer column) { ARBImaging.glSeparableFilter2D(target, internalformat, width, height, format, type, row, column); } - +*/ /** * @param target * @param internalformat @@ -4524,8 +4524,8 @@ public class GL { * @param pname * @param params */ - public static void glGetQueryObjectiARB(int id, int pname, IntBuffer params) { - ARBOcclusionQuery.glGetQueryObjectiARB(id, pname, params); + public static void glGetQueryObjectARB(int id, int pname, IntBuffer params) { + ARBOcclusionQuery.glGetQueryObjectARB(id, pname, params); } /** @@ -4533,8 +4533,8 @@ public class GL { * @param pname * @param params */ - public static void glGetQueryObjectuiARB(int id, int pname, IntBuffer params) { - ARBOcclusionQuery.glGetQueryObjectuiARB(id, pname, params); + public static void glGetQueryObjectuARB(int id, int pname, IntBuffer params) { + ARBOcclusionQuery.glGetQueryObjectuARB(id, pname, params); } /** @@ -4943,8 +4943,8 @@ public class GL { } /** @param pfMtx */ - public static void glMultTransposeMatrixfARB(FloatBuffer pfMtx) { - ARBTransposeMatrix.glMultTransposeMatrixfARB(pfMtx); + public static void glMultTransposeMatrixARB(FloatBuffer pfMtx) { + ARBTransposeMatrix.glMultTransposeMatrixARB(pfMtx); } /** @param count */ @@ -5269,10 +5269,10 @@ public class GL { * @param shaderObj * @param strings */ - public static void glShaderSourceARB(int shaderObj, ByteBuffer[] strings) { +/* public static void glShaderSourceARB(int shaderObj, ByteBuffer[] strings) { ARBShaderObjects.glShaderSourceARB(shaderObj, strings); } - +*/ /** * @param location * @param values @@ -6320,10 +6320,10 @@ public class GL { * @param shader * @param strings */ - public static void glShaderSource(int shader, ByteBuffer[] strings) { +/* public static void glShaderSource(int shader, ByteBuffer[] strings) { GL20.glShaderSource(shader, strings); } - +*/ /** * @param type * @@ -6737,4 +6737,4 @@ public class GL { GL20.glStencilOpSeparate(face, sfail, dpfail, dppass); } -} \ No newline at end of file +} diff --git a/src/java/org/lwjgl/util/GLImpl.java b/src/java/org/lwjgl/util/GLImpl.java index 8dc5d9a1..2b3e61ee 100644 --- a/src/java/org/lwjgl/util/GLImpl.java +++ b/src/java/org/lwjgl/util/GLImpl.java @@ -1567,8 +1567,8 @@ public class GLImpl implements IGL { * @param pname * @param params */ - public void glConvolutionParameteriv(int target, int pname, IntBuffer params) { - GL.glConvolutionParameteriv(target, pname, params); + public void glConvolutionParameter(int target, int pname, IntBuffer params) { + GL.glConvolutionParameter(target, pname, params); } /** @@ -2992,16 +2992,16 @@ public class GLImpl implements IGL { * @param map * @param values */ - public void glGetPixelMap(int map, IntBuffer values) { - GL.glGetPixelMap(map, values); + public void glGetPixelMapu(int map, IntBuffer values) { + GL.glGetPixelMapu(map, values); } /** * @param map * @param values */ - public void glGetPixelMap(int map, ShortBuffer values) { - GL.glGetPixelMap(map, values); + public void glGetPixelMapu(int map, ShortBuffer values) { + GL.glGetPixelMapu(map, values); } /** @@ -3010,8 +3010,8 @@ public class GLImpl implements IGL { * * @return */ - public ByteBuffer glGetPointerv(int pname, int size) { - return GL.glGetPointerv(pname, size); + public ByteBuffer glGetPointer(int pname, int size) { + return GL.glGetPointer(pname, size); } /** @@ -3089,8 +3089,8 @@ public class GLImpl implements IGL { * @param pname * @param params */ - public void glGetQueryObjectiARB(int id, int pname, IntBuffer params) { - GL.glGetQueryObjectiARB(id, pname, params); + public void glGetQueryObjectARB(int id, int pname, IntBuffer params) { + GL.glGetQueryObjectARB(id, pname, params); } /** @@ -3107,8 +3107,8 @@ public class GLImpl implements IGL { * @param pname * @param params */ - public void glGetQueryObjectuiARB(int id, int pname, IntBuffer params) { - GL.glGetQueryObjectuiARB(id, pname, params); + public void glGetQueryObjectuARB(int id, int pname, IntBuffer params) { + GL.glGetQueryObjectuARB(id, pname, params); } /** @@ -3119,10 +3119,10 @@ public class GLImpl implements IGL { * @param column * @param span */ - public void glGetSeparableFilter(int target, int format, int type, Buffer row, Buffer column, Buffer span) { +/* public void glGetSeparableFilter(int target, int format, int type, Buffer row, Buffer column, Buffer span) { GL.glGetSeparableFilter(target, format, type, row, column, span); } - +*/ /** * @param obj * @param length @@ -4021,8 +4021,8 @@ public class GLImpl implements IGL { /** * @param pfMtx */ - public void glMultTransposeMatrixfARB(FloatBuffer pfMtx) { - GL.glMultTransposeMatrixfARB(pfMtx); + public void glMultTransposeMatrixARB(FloatBuffer pfMtx) { + GL.glMultTransposeMatrixARB(pfMtx); } /** @@ -4124,16 +4124,16 @@ public class GLImpl implements IGL { * @param map * @param values */ - public void glPixelMap(int map, IntBuffer values) { - GL.glPixelMap(map, values); + public void glPixelMapu(int map, IntBuffer values) { + GL.glPixelMapu(map, values); } /** * @param map * @param values */ - public void glPixelMap(int map, ShortBuffer values) { - GL.glPixelMap(map, values); + public void glPixelMapu(int map, ShortBuffer values) { + GL.glPixelMapu(map, values); } /** @@ -4299,8 +4299,8 @@ public class GLImpl implements IGL { * @param index * @param params */ - public void glProgramEnvParameterARB(int target, int index, FloatBuffer params) { - GL.glProgramEnvParameterARB(target, index, params); + public void glProgramEnvParameter4ARB(int target, int index, FloatBuffer params) { + GL.glProgramEnvParameter4ARB(target, index, params); } /** @@ -4320,8 +4320,8 @@ public class GLImpl implements IGL { * @param index * @param params */ - public void glProgramLocalParameterARB(int target, int index, FloatBuffer params) { - GL.glProgramLocalParameterARB(target, index, params); + public void glProgramLocalParameter4ARB(int target, int index, FloatBuffer params) { + GL.glProgramLocalParameter4ARB(target, index, params); } /** @@ -4678,10 +4678,10 @@ public class GLImpl implements IGL { * @param row * @param column */ - public void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer row, Buffer column) { +/* public void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer row, Buffer column) { GL.glSeparableFilter2D(target, internalformat, width, height, format, type, row, column); } - +*/ /** * @param id * @param unsigned @@ -4801,10 +4801,10 @@ public class GLImpl implements IGL { * @param shaderObj * @param strings */ - public void glShaderSourceARB(int shaderObj, ByteBuffer[] strings) { +/* public void glShaderSourceARB(int shaderObj, ByteBuffer[] strings) { GL.glShaderSourceARB(shaderObj, strings); } - +*/ /** * @param func * @param ref @@ -6137,10 +6137,10 @@ public class GLImpl implements IGL { * @param shader * @param strings */ - public void glShaderSource(int shader, ByteBuffer[] strings) { +/* public void glShaderSource(int shader, ByteBuffer[] strings) { GL.glShaderSource(shader, strings); } - +*/ /** * @param type * diff --git a/src/java/org/lwjgl/util/IGL.java b/src/java/org/lwjgl/util/IGL.java index bad47d47..01dd9378 100644 --- a/src/java/org/lwjgl/util/IGL.java +++ b/src/java/org/lwjgl/util/IGL.java @@ -653,7 +653,7 @@ public interface IGL { * @param map * @param values */ - void glGetPixelMap(int map, IntBuffer values); + void glGetPixelMapu(int map, IntBuffer values); /** * @param map @@ -665,7 +665,7 @@ public interface IGL { * @param map * @param values */ - void glGetPixelMap(int map, ShortBuffer values); + void glGetPixelMapu(int map, ShortBuffer values); /** * @param map @@ -679,7 +679,7 @@ public interface IGL { * * @return */ - ByteBuffer glGetPointerv(int pname, int size); + ByteBuffer glGetPointer(int pname, int size); /** * @param mask @@ -1104,13 +1104,13 @@ public interface IGL { * @param map * @param values */ - void glPixelMap(int map, IntBuffer values); + void glPixelMapu(int map, IntBuffer values); /** * @param map * @param values */ - void glPixelMap(int map, ShortBuffer values); + void glPixelMapu(int map, ShortBuffer values); /** * @@ -3045,7 +3045,7 @@ public interface IGL { * @param index * @param params */ - void glProgramEnvParameterARB(int target, int index, FloatBuffer params); + void glProgramEnvParameter4ARB(int target, int index, FloatBuffer params); /** * @param target @@ -3063,7 +3063,7 @@ public interface IGL { * @param index * @param params */ - void glProgramLocalParameterARB(int target, int index, FloatBuffer params); + void glProgramLocalParameter4ARB(int target, int index, FloatBuffer params); /** * @param target @@ -3267,7 +3267,7 @@ public interface IGL { * @param pname * @param params */ - void glConvolutionParameteriv(int target, int pname, IntBuffer params); + void glConvolutionParameter(int target, int pname, IntBuffer params); /** * @param target @@ -3518,7 +3518,7 @@ public interface IGL { * @param column * @param span */ - void glGetSeparableFilter(int target, int format, int type, Buffer row, Buffer column, Buffer span); +// void glGetSeparableFilter(int target, int format, int type, Buffer row, Buffer column, Buffer span); /** * @param target @@ -3565,7 +3565,7 @@ public interface IGL { * @param row * @param column */ - void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer row, Buffer column); +// void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, Buffer row, Buffer column); /** * @param target @@ -3768,14 +3768,14 @@ public interface IGL { * @param pname * @param params */ - void glGetQueryObjectiARB(int id, int pname, IntBuffer params); + void glGetQueryObjectARB(int id, int pname, IntBuffer params); /** * @param id * @param pname * @param params */ - void glGetQueryObjectuiARB(int id, int pname, IntBuffer params); + void glGetQueryObjectuARB(int id, int pname, IntBuffer params); /** * @param id @@ -4149,7 +4149,7 @@ public interface IGL { /** * @param pfMtx */ - void glMultTransposeMatrixfARB(FloatBuffer pfMtx); + void glMultTransposeMatrixARB(FloatBuffer pfMtx); /** * @param count @@ -4419,7 +4419,7 @@ public interface IGL { * @param shaderObj * @param strings */ - void glShaderSourceARB(int shaderObj, ByteBuffer[] strings); +// void glShaderSourceARB(int shaderObj, ByteBuffer[] strings); /** * @param location @@ -5266,7 +5266,7 @@ public interface IGL { * @param shader * @param strings */ - void glShaderSource(int shader, ByteBuffer[] strings); +// void glShaderSource(int shader, ByteBuffer[] strings); /** * @param type @@ -5601,4 +5601,4 @@ public interface IGL { */ void glStencilOpSeparate(int face, int sfail, int dpfail, int dppass); -} \ No newline at end of file +} diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBBufferObject.c b/src/native/common/arb/org_lwjgl_opengl_ARBBufferObject.c index ea7c5791..e3a87a7b 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBBufferObject.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBBufferObject.c @@ -1,222 +1,101 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBBufferObject -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef void (APIENTRY * glBindBufferARBPROC) (GLenum target, GLuint buffer); -typedef void (APIENTRY * glDeleteBuffersARBPROC) (GLsizei n, const GLuint *buffers); -typedef void (APIENTRY * glGenBuffersARBPROC) (GLsizei n, GLuint *buffers); -typedef GLboolean (APIENTRY * glIsBufferARBPROC) (GLuint buffer); -typedef void (APIENTRY * glBufferDataARBPROC) (GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage); -typedef void (APIENTRY * glBufferSubDataARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data); -typedef void (APIENTRY * glGetBufferSubDataARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data); -typedef void * (APIENTRY * glMapBufferARBPROC) (GLenum target, GLenum access); -typedef GLboolean (APIENTRY * glUnmapBufferARBPROC) (GLenum target); -typedef void (APIENTRY * glGetBufferParameterivARBPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetBufferPointervARBPROC) (GLenum target, GLenum pname, GLvoid **params); +typedef void (APIENTRY *glGetBufferPointervARBPROC) (GLenum target, GLenum pname, GLvoid ** pointer); +typedef void (APIENTRY *glGetBufferParameterivARBPROC) (GLenum target, GLenum pname, GLint * params); +typedef GLboolean (APIENTRY *glUnmapBufferARBPROC) (GLenum target); +typedef GLvoid * (APIENTRY *glMapBufferARBPROC) (GLenum target, GLenum access); +typedef void (APIENTRY *glGetBufferSubDataARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid * data); +typedef void (APIENTRY *glBufferSubDataARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid * data); +typedef void (APIENTRY *glBufferDataARBPROC) (GLenum target, GLsizeiptrARB size, const GLvoid * data, GLenum usage); +typedef GLboolean (APIENTRY *glIsBufferARBPROC) (GLuint buffer); +typedef void (APIENTRY *glGenBuffersARBPROC) (GLint n, GLuint * buffers); +typedef void (APIENTRY *glDeleteBuffersARBPROC) (GLsizei n, const GLuint * buffers); +typedef void (APIENTRY *glBindBufferARBPROC) (GLenum target, GLuint buffer); -static glBindBufferARBPROC glBindBufferARB; -static glDeleteBuffersARBPROC glDeleteBuffersARB; -static glGenBuffersARBPROC glGenBuffersARB; -static glIsBufferARBPROC glIsBufferARB; -static glBufferDataARBPROC glBufferDataARB; -static glBufferSubDataARBPROC glBufferSubDataARB; -static glGetBufferSubDataARBPROC glGetBufferSubDataARB; -static glMapBufferARBPROC glMapBufferARB; -static glUnmapBufferARBPROC glUnmapBufferARB; -static glGetBufferParameterivARBPROC glGetBufferParameterivARB; static glGetBufferPointervARBPROC glGetBufferPointervARB; +static glGetBufferParameterivARBPROC glGetBufferParameterivARB; +static glUnmapBufferARBPROC glUnmapBufferARB; +static glMapBufferARBPROC glMapBufferARB; +static glGetBufferSubDataARBPROC glGetBufferSubDataARB; +static glBufferSubDataARBPROC glBufferSubDataARB; +static glBufferDataARBPROC glBufferDataARB; +static glIsBufferARBPROC glIsBufferARB; +static glGenBuffersARBPROC glGenBuffersARB; +static glDeleteBuffersARBPROC glDeleteBuffersARB; +static glBindBufferARBPROC glBindBufferARB; -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: nglBindBufferARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglBindBufferARB - (JNIEnv * env, jclass clazz, jint target, jint buffer) -{ +static jobject JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglGetBufferPointervARB(JNIEnv *env, jclass clazz, jint target, jint pname, jint result_size) { + GLvoid * __result; + glGetBufferPointervARB(target, pname, &__result); + return safeNewBuffer(env, __result, result_size); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglGetBufferParameterivARB(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetBufferParameterivARB(target, pname, params_address); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_ARBBufferObject_glUnmapBufferARB(JNIEnv *env, jclass clazz, jint target) { + GLboolean __result = glUnmapBufferARB(target); + return __result; +} + +static jobject JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglMapBufferARB(JNIEnv *env, jclass clazz, jint target, jint access, jint result_size, jobject old_buffer) { + GLvoid * __result = glMapBufferARB(target, access); + return safeNewBufferCached(env, __result, result_size, old_buffer); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglGetBufferSubDataARB(JNIEnv *env, jclass clazz, jint target, jint offset, jint size, jobject data, jint data_position) { + GLvoid *data_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glGetBufferSubDataARB(target, offset, size, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglBufferSubDataARB(JNIEnv *env, jclass clazz, jint target, jint offset, jint size, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glBufferSubDataARB(target, offset, size, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglBufferDataARB(JNIEnv *env, jclass clazz, jint target, jint size, jobject data, jint data_position, jint usage) { + const GLvoid *data_address = ((const GLvoid *)(((char *)safeGetBufferAddress(env, data)) + data_position)); + glBufferDataARB(target, size, data_address, usage); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_ARBBufferObject_glIsBufferARB(JNIEnv *env, jclass clazz, jint buffer) { + GLboolean __result = glIsBufferARB(buffer); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglGenBuffersARB(JNIEnv *env, jclass clazz, jint n, jobject buffers, jint buffers_position) { + GLuint *buffers_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + glGenBuffersARB(n, buffers_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglDeleteBuffersARB(JNIEnv *env, jclass clazz, jint n, jobject buffers, jint buffers_position) { + const GLuint *buffers_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + glDeleteBuffersARB(n, buffers_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglBindBufferARB(JNIEnv *env, jclass clazz, jint target, jint buffer) { glBindBufferARB(target, buffer); } -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: nglDeleteBuffersARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglDeleteBuffersARB - (JNIEnv * env, jclass clazz, jint n, jobject buffers, jint buffers_offset) -{ - GLuint *buffers_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, buffers) + buffers_offset; - glDeleteBuffersARB(n, buffers_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: nglGenBuffersARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglGenBuffersARB - (JNIEnv * env, jclass clazz, jint n, jobject buffers, jint buffers_offset) -{ - GLuint *buffers_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, buffers) + buffers_offset; - glGenBuffersARB(n, buffers_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: glIsBufferARB - */ -static jboolean JNICALL Java_org_lwjgl_opengl_ARBBufferObject_glIsBufferARB - (JNIEnv * env, jclass clazz, jint buffer) -{ - GLboolean result = glIsBufferARB(buffer); - - return result; -} - -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: nglBufferDataARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglBufferDataARB - (JNIEnv * env, jclass clazz, jint target, jint size, jobject data, jint data_offset, jint usage) -{ - GLvoid *data_ptr = (GLvoid *)((char *)safeGetBufferAddress(env, data) + data_offset); - glBufferDataARB(target, size, data_ptr, usage); - -} - -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: nglBufferSubDataARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglBufferSubDataARB - (JNIEnv * env, jclass clazz, jint target, jint offset, jint size, jobject data, jint data_offset) -{ - GLvoid *data_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, data) + data_offset); - glBufferSubDataARB(target, offset, size, data_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: nglGetBufferSubDataARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglGetBufferSubDataARB - (JNIEnv * env, jclass clazz, jint target, jint offset, jint size, jobject data, jint data_offset) -{ - GLvoid *data_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, data) + data_offset); - glGetBufferSubDataARB(target, offset, size, data_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: glMapBufferARB - */ -static jobject JNICALL Java_org_lwjgl_opengl_ARBBufferObject_glMapBufferARB - (JNIEnv * env, jclass clazz, jint target, jint access, jint size, jobject oldBuffer) -{ - void *buffer_address = glMapBufferARB((GLenum)target, (GLenum)access); - - void *old_buffer_address = safeGetBufferAddress(env, oldBuffer); - if (old_buffer_address == buffer_address) - return oldBuffer; - else - return safeNewBuffer(env, buffer_address, size); -} - -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: glUnmapBufferARB - */ -static jboolean JNICALL Java_org_lwjgl_opengl_ARBBufferObject_glUnmapBufferARB - (JNIEnv * env, jclass clazz, jint target) -{ - GLboolean result = glUnmapBufferARB(target); - - return result; -} - -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: nglGetBufferParameterivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_nglGetBufferParameterivARB - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject params, jint params_offset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + params_offset; - glGetBufferParameterivARB(target, pname, params_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBBufferObject - * Method: glGetBufferPointerARB - */ -static jobject JNICALL Java_org_lwjgl_opengl_ARBBufferObject_glGetBufferPointerARB - (JNIEnv * env, jclass clazz, jint target, jint pname, jint size) -{ - void *pointer; - glGetBufferPointervARB((GLenum)target, (GLenum)pname, &pointer); - - return safeNewBuffer(env, pointer, size); -} - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBBufferObject_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglBindBufferARB", "(II)V", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_nglBindBufferARB, "glBindBufferARB", (void*)&glBindBufferARB}, - {"nglDeleteBuffersARB", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_nglDeleteBuffersARB, "glDeleteBuffersARB", (void*)&glDeleteBuffersARB}, - {"nglGenBuffersARB", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_nglGenBuffersARB, "glGenBuffersARB", (void*)&glGenBuffersARB}, - {"glIsBufferARB", "(I)Z", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_glIsBufferARB, "glIsBufferARB", (void*)&glIsBufferARB}, - {"nglBufferDataARB", "(IILjava/nio/Buffer;II)V", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_nglBufferDataARB, "glBufferDataARB", (void*)&glBufferDataARB}, - {"nglBufferSubDataARB", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_nglBufferSubDataARB, "glBufferSubDataARB", (void*)&glBufferSubDataARB}, - {"nglGetBufferSubDataARB", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_nglGetBufferSubDataARB, "glGetBufferSubDataARB", (void*)&glGetBufferSubDataARB}, - {"glMapBufferARB", "(IIILjava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_glMapBufferARB, "glMapBufferARB", (void*)&glMapBufferARB}, - {"glUnmapBufferARB", "(I)Z", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_glUnmapBufferARB, "glUnmapBufferARB", (void*)&glUnmapBufferARB}, - {"nglGetBufferParameterivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_nglGetBufferParameterivARB, "glGetBufferParameterivARB", (void*)&glGetBufferParameterivARB}, - {"glGetBufferPointerARB", "(III)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_ARBBufferObject_glGetBufferPointerARB, "glGetBufferPointervARB", (void*)&glGetBufferPointervARB} + {"nglGetBufferPointervARB", "(III)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_nglGetBufferPointervARB, "glGetBufferPointervARB", (void *)&glGetBufferPointervARB}, + {"nglGetBufferParameterivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_nglGetBufferParameterivARB, "glGetBufferParameterivARB", (void *)&glGetBufferParameterivARB}, + {"glUnmapBufferARB", "(I)Z", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_glUnmapBufferARB, "glUnmapBufferARB", (void *)&glUnmapBufferARB}, + {"nglMapBufferARB", "(IIILjava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_nglMapBufferARB, "glMapBufferARB", (void *)&glMapBufferARB}, + {"nglGetBufferSubDataARB", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_nglGetBufferSubDataARB, "glGetBufferSubDataARB", (void *)&glGetBufferSubDataARB}, + {"nglBufferSubDataARB", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_nglBufferSubDataARB, "glBufferSubDataARB", (void *)&glBufferSubDataARB}, + {"nglBufferDataARB", "(IILjava/nio/Buffer;II)V", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_nglBufferDataARB, "glBufferDataARB", (void *)&glBufferDataARB}, + {"glIsBufferARB", "(I)Z", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_glIsBufferARB, "glIsBufferARB", (void *)&glIsBufferARB}, + {"nglGenBuffersARB", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_nglGenBuffersARB, "glGenBuffersARB", (void *)&glGenBuffersARB}, + {"nglDeleteBuffersARB", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_nglDeleteBuffersARB, "glDeleteBuffersARB", (void *)&glDeleteBuffersARB}, + {"nglBindBufferARB", "(II)V", (void *)&Java_org_lwjgl_opengl_ARBBufferObject_nglBindBufferARB, "glBindBufferARB", (void *)&glBindBufferARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBColorBufferFloat.c b/src/native/common/arb/org_lwjgl_opengl_ARBColorBufferFloat.c index b70ab8de..ff39639a 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBColorBufferFloat.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBColorBufferFloat.c @@ -1,67 +1,20 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBColorBufferFloat -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" - -typedef void (APIENTRY * glClampColorARBPROC) (GLenum target, GLenum clamp); +typedef void (APIENTRY *glClampColorARBPROC) (GLenum target, GLenum clamp); static glClampColorARBPROC glClampColorARB; -/* - * Class: org.lwjgl.opengl.ARBColorBufferFloat - * Method: glClampColorARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBColorBufferFloat_glClampColorARB - (JNIEnv * env, jclass clazz, jint target, jint clamp) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBColorBufferFloat_glClampColorARB(JNIEnv *env, jclass clazz, jint target, jint clamp) { glClampColorARB(target, clamp); } -#ifdef __clplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBColorBufferFloat_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glClampColorARB", "(II)V", (void*)&Java_org_lwjgl_opengl_ARBColorBufferFloat_glClampColorARB, "glClampColorARB", (void*)&glClampColorARB} + {"glClampColorARB", "(II)V", (void *)&Java_org_lwjgl_opengl_ARBColorBufferFloat_glClampColorARB, "glClampColorARB", (void *)&glClampColorARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBDrawBuffers.c b/src/native/common/arb/org_lwjgl_opengl_ARBDrawBuffers.c index b94c504a..ed4cbdd2 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBDrawBuffers.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBDrawBuffers.c @@ -1,69 +1,21 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBDrawBuffers -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" - -typedef void (APIENTRY * glDrawBuffersARBPROC) (GLsizei n, const GLenum *bufs); +typedef void (APIENTRY *glDrawBuffersARBPROC) (GLsizei size, const GLenum * buffers); static glDrawBuffersARBPROC glDrawBuffersARB; -/* - * Class: org.lwjgl.opengl.ARBDrawBuffers - * Method: nglDrawBuffersARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBDrawBuffers_nglDrawBuffersARB - (JNIEnv * env, jclass clazz, jint size, jobject buffers, jint buffersOffset) -{ - GLuint *buffers_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, buffers) + buffersOffset; - glDrawBuffersARB(size, buffers_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBDrawBuffers_nglDrawBuffersARB(JNIEnv *env, jclass clazz, jint size, jobject buffers, jint buffers_position) { + const GLenum *buffers_address = ((const GLenum *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + glDrawBuffersARB(size, buffers_address); } -#ifdef __clplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBDrawBuffers_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglDrawBuffersARB", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBDrawBuffers_nglDrawBuffersARB, "glDrawBuffersARB", (void*)&glDrawBuffersARB} + {"nglDrawBuffersARB", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBDrawBuffers_nglDrawBuffersARB, "glDrawBuffersARB", (void *)&glDrawBuffersARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBImaging.c b/src/native/common/arb/org_lwjgl_opengl_ARBImaging.c index 295b3cc7..c72ffdbb 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBImaging.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBImaging.c @@ -1,693 +1,333 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/** - * $Id$ - * - * Core OpenGL functions. - * - * @author cix_foo - * @version $Revision$ - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glBlendColorPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ); -typedef void (APIENTRY * glBlendEquationPROC) (GLenum mode ); -typedef void (APIENTRY * glColorTablePROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table ); -typedef void (APIENTRY * glColorTableParameterfvPROC) (GLenum target, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glColorTableParameterivPROC) (GLenum target, GLenum pname, const GLint *params); -typedef void (APIENTRY * glCopyColorTablePROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ); -typedef void (APIENTRY * glGetColorTablePROC) (GLenum target, GLenum format, GLenum type, GLvoid *table ); -typedef void (APIENTRY * glGetColorTableParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); -typedef void (APIENTRY * glGetColorTableParameterivPROC) (GLenum target, GLenum pname, GLint *params ); -typedef void (APIENTRY * glColorSubTablePROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data ); -typedef void (APIENTRY * glCopyColorSubTablePROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width ); -typedef void (APIENTRY * glConvolutionFilter1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image ); -typedef void (APIENTRY * glConvolutionFilter2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image ); -typedef void (APIENTRY * glConvolutionParameterfPROC) (GLenum target, GLenum pname, GLfloat params ); -typedef void (APIENTRY * glConvolutionParameterfvPROC) (GLenum target, GLenum pname, const GLfloat *params ); -typedef void (APIENTRY * glConvolutionParameteriPROC) (GLenum target, GLenum pname, GLint params ); -typedef void (APIENTRY * glConvolutionParameterivPROC) (GLenum target, GLenum pname, const GLint *params ); -typedef void (APIENTRY * glCopyConvolutionFilter1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width ); -typedef void (APIENTRY * glCopyConvolutionFilter2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (APIENTRY * glGetConvolutionFilterPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image ); -typedef void (APIENTRY * glGetConvolutionParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); -typedef void (APIENTRY * glGetConvolutionParameterivPROC) (GLenum target, GLenum pname, GLint *params ); -typedef void (APIENTRY * glSeparableFilter2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column ); -typedef void (APIENTRY * glGetHistogramPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values ); -typedef void (APIENTRY * glGetHistogramParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); -typedef void (APIENTRY * glGetHistogramParameterivPROC) (GLenum target, GLenum pname, GLint *params ); -typedef void (APIENTRY * glGetMinmaxPROC) (GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid *values ); -typedef void (APIENTRY * glGetMinmaxParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params ); -typedef void (APIENTRY * glGetMinmaxParameterivPROC) (GLenum target, GLenum pname, GLint *params ); -typedef void (APIENTRY * glHistogramPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink ); -typedef void (APIENTRY * glResetHistogramPROC) (GLenum target ); -typedef void (APIENTRY * glMinmaxPROC) (GLenum target, GLenum internalformat, GLboolean sink ); -typedef void (APIENTRY * glResetMinmaxPROC) (GLenum target ); -typedef void (APIENTRY * glGetSeparableFilterPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); +typedef void (APIENTRY *glGetSeparableFilterPROC) (GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span); +typedef void (APIENTRY *glSeparableFilter2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * row, const GLvoid * column); +typedef void (APIENTRY *glGetConvolutionParameterivPROC) (GLenum target, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetConvolutionParameterfvPROC) (GLenum target, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetConvolutionFilterPROC) (GLenum target, GLenum format, GLenum type, GLvoid * image); +typedef void (APIENTRY *glCopyConvolutionFilter2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (APIENTRY *glCopyConvolutionFilter1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); +typedef void (APIENTRY *glConvolutionParameterivPROC) (GLenum target, GLenum pname, const GLint * params); +typedef void (APIENTRY *glConvolutionParameteriPROC) (GLenum target, GLenum pname, GLint params); +typedef void (APIENTRY *glConvolutionParameterfvPROC) (GLenum target, GLenum pname, const GLfloat * params); +typedef void (APIENTRY *glConvolutionParameterfPROC) (GLenum target, GLenum pname, GLfloat params); +typedef void (APIENTRY *glConvolutionFilter2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * image); +typedef void (APIENTRY *glConvolutionFilter1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, GLvoid * image); +typedef void (APIENTRY *glGetMinmaxParameterivPROC) (GLenum target, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetMinmaxParameterfvPROC) (GLenum target, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetMinmaxPROC) (GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid * values); +typedef void (APIENTRY *glResetMinmaxPROC) (GLenum target); +typedef void (APIENTRY *glMinmaxPROC) (GLenum target, GLenum internalformat, GLboolean sink); +typedef void (APIENTRY *glGetHistogramParameterivPROC) (GLenum target, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetHistogramParameterfvPROC) (GLenum target, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetHistogramPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values); +typedef void (APIENTRY *glResetHistogramPROC) (GLenum target); +typedef void (APIENTRY *glHistogramPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink); +typedef void (APIENTRY *glBlendColorPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); +typedef void (APIENTRY *glBlendEquationPROC) (GLenum mode); +typedef void (APIENTRY *glGetColorTableParameterfvPROC) (GLenum target, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetColorTableParameterivPROC) (GLenum target, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetColorTablePROC) (GLenum target, GLenum format, GLenum type, GLvoid * data); +typedef void (APIENTRY *glCopyColorTablePROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); +typedef void (APIENTRY *glCopyColorSubTablePROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width); +typedef void (APIENTRY *glColorTableParameterfvPROC) (GLenum target, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glColorTableParameterivPROC) (GLenum target, GLenum pname, GLint * params); +typedef void (APIENTRY *glColorSubTablePROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * data); +typedef void (APIENTRY *glColorTablePROC) (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const GLvoid * data); -static glBlendColorPROC glBlendColor; -static glBlendEquationPROC glBlendEquation; -static glColorTablePROC glColorTable; -static glColorTableParameterfvPROC glColorTableParameterfv; -static glColorTableParameterivPROC glColorTableParameteriv; -static glCopyColorTablePROC glCopyColorTable; -static glGetColorTablePROC glGetColorTable; -static glGetColorTableParameterfvPROC glGetColorTableParameterfv; -static glGetColorTableParameterivPROC glGetColorTableParameteriv; -static glColorSubTablePROC glColorSubTable; -static glCopyColorSubTablePROC glCopyColorSubTable; -static glConvolutionFilter1DPROC glConvolutionFilter1D; -static glConvolutionFilter2DPROC glConvolutionFilter2D; -static glConvolutionParameterfPROC glConvolutionParameterf; -static glConvolutionParameterfvPROC glConvolutionParameterfv; -static glConvolutionParameteriPROC glConvolutionParameteri; -static glConvolutionParameterivPROC glConvolutionParameteriv; -static glCopyConvolutionFilter1DPROC glCopyConvolutionFilter1D; -static glCopyConvolutionFilter2DPROC glCopyConvolutionFilter2D; -static glGetConvolutionFilterPROC glGetConvolutionFilter; -static glGetConvolutionParameterfvPROC glGetConvolutionParameterfv; -static glGetConvolutionParameterivPROC glGetConvolutionParameteriv; static glGetSeparableFilterPROC glGetSeparableFilter; static glSeparableFilter2DPROC glSeparableFilter2D; -static glGetHistogramPROC glGetHistogram; -static glGetHistogramParameterfvPROC glGetHistogramParameterfv; -static glGetHistogramParameterivPROC glGetHistogramParameteriv; -static glGetMinmaxPROC glGetMinmax; -static glGetMinmaxParameterfvPROC glGetMinmaxParameterfv; +static glGetConvolutionParameterivPROC glGetConvolutionParameteriv; +static glGetConvolutionParameterfvPROC glGetConvolutionParameterfv; +static glGetConvolutionFilterPROC glGetConvolutionFilter; +static glCopyConvolutionFilter2DPROC glCopyConvolutionFilter2D; +static glCopyConvolutionFilter1DPROC glCopyConvolutionFilter1D; +static glConvolutionParameterivPROC glConvolutionParameteriv; +static glConvolutionParameteriPROC glConvolutionParameteri; +static glConvolutionParameterfvPROC glConvolutionParameterfv; +static glConvolutionParameterfPROC glConvolutionParameterf; +static glConvolutionFilter2DPROC glConvolutionFilter2D; +static glConvolutionFilter1DPROC glConvolutionFilter1D; static glGetMinmaxParameterivPROC glGetMinmaxParameteriv; -static glHistogramPROC glHistogram; -static glMinmaxPROC glMinmax; -static glResetHistogramPROC glResetHistogram; +static glGetMinmaxParameterfvPROC glGetMinmaxParameterfv; +static glGetMinmaxPROC glGetMinmax; static glResetMinmaxPROC glResetMinmax; +static glMinmaxPROC glMinmax; +static glGetHistogramParameterivPROC glGetHistogramParameteriv; +static glGetHistogramParameterfvPROC glGetHistogramParameterfv; +static glGetHistogramPROC glGetHistogram; +static glResetHistogramPROC glResetHistogram; +static glHistogramPROC glHistogram; +static glBlendColorPROC glBlendColor; +static glBlendEquationPROC glBlendEquation; +static glGetColorTableParameterfvPROC glGetColorTableParameterfv; +static glGetColorTableParameterivPROC glGetColorTableParameteriv; +static glGetColorTablePROC glGetColorTable; +static glCopyColorTablePROC glCopyColorTable; +static glCopyColorSubTablePROC glCopyColorSubTable; +static glColorTableParameterfvPROC glColorTableParameterfv; +static glColorTableParameterivPROC glColorTableParameteriv; +static glColorSubTablePROC glColorSubTable; +static glColorTablePROC glColorTable; -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glColorTable - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorTable - (JNIEnv * env, jclass clazz, jint target, jint internalFormat, jint width, jint format, jint type, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glColorTable(target, internalFormat, width, format, type, address); +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetSeparableFilter(JNIEnv *env, jclass clazz, jint target, jint format, jint type, jobject row, jint row_position, jobject column, jint column_position, jobject span, jint span_position) { + GLvoid *row_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, row)) + row_position)); + GLvoid *column_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, column)) + column_position)); + GLvoid *span_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, span)) + span_position)); + glGetSeparableFilter(target, format, type, row_address, column_address, span_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glColorTableBO - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorTableBO - (JNIEnv * env, jclass clazz, jint target, jint internalFormat, jint width, jint format, jint type, jint buffer_offset) -{ - glColorTable(target, internalFormat, width, format, type, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetSeparableFilterBO(JNIEnv *env, jclass clazz, jint target, jint format, jint type, jint row_buffer_offset, jint column_buffer_offset, jint span_buffer_offset) { + GLvoid *row_address = ((GLvoid *)offsetToPointer(row_buffer_offset)); + GLvoid *column_address = ((GLvoid *)offsetToPointer(column_buffer_offset)); + GLvoid *span_address = ((GLvoid *)offsetToPointer(span_buffer_offset)); + glGetSeparableFilter(target, format, type, row_address, column_address, span_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glColorSubTable - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorSubTable - (JNIEnv * env, jclass clazz, jint target, jint start, jint count, jint format, jint type, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glColorSubTable(target, start, count, format, type, address); +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglSeparableFilter2D(JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint height, jint format, jint type, jobject row, jint row_position, jobject column, jint column_position) { + const GLvoid *row_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, row)) + row_position)); + const GLvoid *column_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, column)) + column_position)); + glSeparableFilter2D(target, internalformat, width, height, format, type, row_address, column_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glColorSubTableBO - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorSubTableBO - (JNIEnv * env, jclass clazz, jint target, jint start, jint count, jint format, jint type, jint buffer_offset) -{ - glColorSubTable(target, start, count, format, type, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglSeparableFilter2DBO(JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint height, jint format, jint type, jint row_buffer_offset, jint column_buffer_offset) { + const GLvoid *row_address = ((const GLvoid *)offsetToPointer(row_buffer_offset)); + const GLvoid *column_address = ((const GLvoid *)offsetToPointer(column_buffer_offset)); + glSeparableFilter2D(target, internalformat, width, height, format, type, row_address, column_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetColorTable - * Signature: (IIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetColorTable - (JNIEnv * env, jclass clazz, jint target, jint format, jint type, jobject buffer, jint offset) -{ - void *address = (void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glGetColorTable(target, format, type, address); - +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionParameteriv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetConvolutionParameteriv(target, pname, params_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetColorTableParameteriv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetColorTableParameteriv - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetColorTableParameteriv(target, pname, address); - +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionParameterfv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetConvolutionParameterfv(target, pname, params_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetColorTableParameterfv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetColorTableParameterfv - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetColorTableParameterfv(target, pname, address); - +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionFilter(JNIEnv *env, jclass clazz, jint target, jint format, jint type, jobject image, jint image_position) { + GLvoid *image_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, image)) + image_position)); + glGetConvolutionFilter(target, format, type, image_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glColorTableParameteriv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorTableParameteriv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - const GLint *address = offset + (const GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glColorTableParameteriv(target, pname, address); - +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionFilterBO(JNIEnv *env, jclass clazz, jint target, jint format, jint type, jint image_buffer_offset) { + GLvoid *image_address = ((GLvoid *)offsetToPointer(image_buffer_offset)); + glGetConvolutionFilter(target, format, type, image_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glColorTableParameterfv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorTableParameterfv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glColorTableParameterfv(target, pname, address); - -} - - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glCopyColorSubTable - * Signature: (IIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glCopyColorSubTable - (JNIEnv *env, jclass clazz, jint target, jint start, jint x, jint y, jint width) -{ - glCopyColorSubTable(target, start, x, y, width); - -} - - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glCopyColorTable - * Signature: (IIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glCopyColorTable - (JNIEnv *env, jclass clazz, jint target, jint internalformat, jint x, jint y, jint width) -{ - glCopyColorTable(target, internalformat, x, y, width); - -} - - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glBlendEquation - * Signature: (I)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glBlendEquation - (JNIEnv *env, jclass clazz, jint mode) -{ - glBlendEquation(mode); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glBlendColor - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glBlendColor(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2, jfloat p3) -{ - glBlendColor((GLfloat) p0, (GLfloat) p1, (GLfloat) p2, (GLfloat) p3); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glHistogram - * Signature: (IIIZ)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glHistogram - (JNIEnv *env, jclass clazz, jint target, jint width, jint internalformat, jboolean sink) -{ - glHistogram(target, width, internalformat, sink); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glResetHistogram - * Signature: (I)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glResetHistogram - (JNIEnv *env, jclass clazz, jint target) -{ - glResetHistogram(target); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetHistogram - * Signature: (IZIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetHistogram - (JNIEnv *env, jclass clazz, jint target, jboolean reset, jint format, jint type, jobject buffer, jint offset) -{ - void *address = (void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glGetHistogram(target, reset, format, type, address); -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetHistogramBO - * Signature: (IZIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramBO - (JNIEnv *env, jclass clazz, jint target, jboolean reset, jint format, jint type, jint buffer_offset) -{ - glGetHistogram(target, reset, format, type, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetHistogramParameterfv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramParameterfv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetHistogramParameterfv(target, pname, address); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetHistogramParameteriv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramParameteriv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetHistogramParameteriv(target, pname, address); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glMinmax - * Signature: (IIZ)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glMinmax - (JNIEnv *env, jclass clazz, jint target, jint internalformat, jboolean sink) -{ - glMinmax(target, internalformat, sink); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glResetMinmax - * Signature: (I)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glResetMinmax - (JNIEnv *env, jclass clazz, jint target) -{ - glResetMinmax(target); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetMinmax - * Signature: (IZIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetMinmax - (JNIEnv *env, jclass clazz, jint target, jboolean reset, jint format, jint type, jobject buffer, jint offset) -{ - void *address = (void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glGetMinmax(target, reset, format, type, address); -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetMinmaxBO - * Signature: (IZIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxBO - (JNIEnv *env, jclass clazz, jint target, jboolean reset, jint format, jint type, jint buffer_offset) -{ - glGetMinmax(target, reset, format, type, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetMinmaxParameterfv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxParameterfv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetMinmaxParameterfv(target, pname, address); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetMinmaxParameteriv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxParameteriv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetMinmaxParameteriv(target, pname, address); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glConvolutionFilter1D - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter1D - (JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint format, jint type, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glConvolutionFilter1D(target, internalformat, width, format, type, address); -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glConvolutionFilter1DBO - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter1DBO - (JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint format, jint type, jint buffer_offset) -{ - glConvolutionFilter1D(target, internalformat, width, format, type, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glConvolutionFilter2D - * Signature: (IIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter2D - (JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint height, jint format, jint type, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glConvolutionFilter2D(target, internalformat, width, height, format, type, address); -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glConvolutionFilter2DBO - * Signature: (IIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter2DBO - (JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint height, jint format, jint type, jint buffer_offset) -{ - glConvolutionFilter2D(target, internalformat, width, height, format, type, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glConvolutionParameterf - * Signature: (IIF)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glConvolutionParameterf - (JNIEnv *env, jclass clazz, jint target, jint pname, jfloat params) -{ - glConvolutionParameterf(target, pname, params); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glConvolutionParameterfv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionParameterfv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glConvolutionParameterfv(target, pname, address); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glConvolutionParameteri - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glConvolutionParameteri - (JNIEnv *env, jclass clazz, jint target, jint pname, jint params) -{ - glConvolutionParameteri(target, pname, params); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glConvolutionParameteriv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionParameteriv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - const GLint *address = offset + (const GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glConvolutionParameteriv(target, pname, address); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glCopyConvolutionFilter1D - * Signature: (IIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glCopyConvolutionFilter1D - (JNIEnv *env, jclass clazz, jint target, jint internalformat, jint x, jint y, jint width) -{ - glCopyConvolutionFilter1D(target, internalformat, x, y, width); - -} - -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glCopyConvolutionFilter2D - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glCopyConvolutionFilter2D - (JNIEnv *env, jclass clazz, jint target, jint internalformat, jint x, jint y, jint width, jint height) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glCopyConvolutionFilter2D(JNIEnv *env, jclass clazz, jint target, jint internalformat, jint x, jint y, jint width, jint height) { glCopyConvolutionFilter2D(target, internalformat, x, y, width, height); - } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetConvolutionFilter - * Signature: (IIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionFilter - (JNIEnv *env, jclass clazz, jint target, jint format, jint type, jobject buffer, jint offset) -{ - void *address = (void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glGetConvolutionFilter(target, format, type, address); +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glCopyConvolutionFilter1D(JNIEnv *env, jclass clazz, jint target, jint internalformat, jint x, jint y, jint width) { + glCopyConvolutionFilter1D(target, internalformat, x, y, width); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetConvolutionFilterBO - * Signature: (IIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionFilterBO - (JNIEnv *env, jclass clazz, jint target, jint format, jint type, jint buffer_offset) -{ - glGetConvolutionFilter(target, format, type, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionParameteriv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glConvolutionParameteriv(target, pname, params_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetConvolutionParameterfv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionParameterfv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetConvolutionParameterfv(target, pname, address); - +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glConvolutionParameteri(JNIEnv *env, jclass clazz, jint target, jint pname, jint params) { + glConvolutionParameteri(target, pname, params); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetConvolutionParameteriv - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionParameteriv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetConvolutionParameteriv(target, pname, address); - +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionParameterfv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glConvolutionParameterfv(target, pname, params_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glSeparableFilter2D - * Signature: (IIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglSeparableFilter2D - (JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint height, jint format, jint type, jobject row, jint row_offset, jobject column, jint column_offset) -{ - const void *address = (const void *)(row_offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, row)); - const void *address2 = (const void *)(column_offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, column)); - glSeparableFilter2D(target, internalformat, width, height, format, type, address, address2); +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glConvolutionParameterf(JNIEnv *env, jclass clazz, jint target, jint pname, jfloat params) { + glConvolutionParameterf(target, pname, params); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glSeparableFilter2DBO - * Signature: (IIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglSeparableFilter2DBO - (JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint height, jint format, jint type, jint row_offset, jint column_offset) -{ - glSeparableFilter2D(target, internalformat, width, height, format, type, offsetToPointer(row_offset), offsetToPointer(column_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter2D(JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint height, jint format, jint type, jobject image, jint image_position) { + GLvoid *image_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, image)) + image_position)); + glConvolutionFilter2D(target, internalformat, width, height, format, type, image_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetSeparableFilter - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetSeparableFilter - (JNIEnv *env, jclass clazz, jint target, jint format, jint type, jobject row, jint row_offset, jobject column, jint column_offset, jobject span, jint span_offset) -{ - void *address = (void *)(row_offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, row)); - void *address2 = (void *)(column_offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, column)); - void *address3 = (void *)(span_offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, span)); - glGetSeparableFilter(target, format, type, address, address2, address3); +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter2DBO(JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint height, jint format, jint type, jint image_buffer_offset) { + GLvoid *image_address = ((GLvoid *)offsetToPointer(image_buffer_offset)); + glConvolutionFilter2D(target, internalformat, width, height, format, type, image_address); } -/* - * Class: org_lwjgl_opengl_ARBImaging - * Method: glGetSeparableFilterBO - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetSeparableFilterBO - (JNIEnv *env, jclass clazz, jint target, jint format, jint type, jint row_offset, jint column_offset, jint span_offset) -{ - glGetSeparableFilter(target, format, type, offsetToPointer(row_offset), offsetToPointer(column_offset), offsetToPointer(span_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter1D(JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint format, jint type, jobject image, jint image_position) { + GLvoid *image_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, image)) + image_position)); + glConvolutionFilter1D(target, internalformat, width, format, type, image_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter1DBO(JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint format, jint type, jint image_buffer_offset) { + GLvoid *image_address = ((GLvoid *)offsetToPointer(image_buffer_offset)); + glConvolutionFilter1D(target, internalformat, width, format, type, image_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxParameteriv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetMinmaxParameteriv(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxParameterfv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetMinmaxParameterfv(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetMinmax(JNIEnv *env, jclass clazz, jint target, jboolean reset, jint format, jint types, jobject values, jint values_position) { + GLvoid *values_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, values)) + values_position)); + glGetMinmax(target, reset, format, types, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxBO(JNIEnv *env, jclass clazz, jint target, jboolean reset, jint format, jint types, jint values_buffer_offset) { + GLvoid *values_address = ((GLvoid *)offsetToPointer(values_buffer_offset)); + glGetMinmax(target, reset, format, types, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glResetMinmax(JNIEnv *env, jclass clazz, jint target) { + glResetMinmax(target); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glMinmax(JNIEnv *env, jclass clazz, jint target, jint internalformat, jboolean sink) { + glMinmax(target, internalformat, sink); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramParameteriv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetHistogramParameteriv(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramParameterfv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetHistogramParameterfv(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetHistogram(JNIEnv *env, jclass clazz, jint target, jboolean reset, jint format, jint type, jobject values, jint values_position) { + GLvoid *values_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, values)) + values_position)); + glGetHistogram(target, reset, format, type, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramBO(JNIEnv *env, jclass clazz, jint target, jboolean reset, jint format, jint type, jint values_buffer_offset) { + GLvoid *values_address = ((GLvoid *)offsetToPointer(values_buffer_offset)); + glGetHistogram(target, reset, format, type, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glResetHistogram(JNIEnv *env, jclass clazz, jint target) { + glResetHistogram(target); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glHistogram(JNIEnv *env, jclass clazz, jint target, jint width, jint internalformat, jboolean sink) { + glHistogram(target, width, internalformat, sink); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glBlendColor(JNIEnv *env, jclass clazz, jfloat red, jfloat green, jfloat blue, jfloat alpha) { + glBlendColor(red, green, blue, alpha); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glBlendEquation(JNIEnv *env, jclass clazz, jint mode) { + glBlendEquation(mode); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetColorTableParameterfv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetColorTableParameterfv(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetColorTableParameteriv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetColorTableParameteriv(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglGetColorTable(JNIEnv *env, jclass clazz, jint target, jint format, jint type, jobject data, jint data_position) { + GLvoid *data_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glGetColorTable(target, format, type, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glCopyColorTable(JNIEnv *env, jclass clazz, jint target, jint internalformat, jint x, jint y, jint width) { + glCopyColorTable(target, internalformat, x, y, width); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_glCopyColorSubTable(JNIEnv *env, jclass clazz, jint target, jint start, jint x, jint y, jint width) { + glCopyColorSubTable(target, start, x, y, width); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorTableParameterfv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glColorTableParameterfv(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorTableParameteriv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glColorTableParameteriv(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorSubTable(JNIEnv *env, jclass clazz, jint target, jint start, jint count, jint format, jint type, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glColorSubTable(target, start, count, format, type, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorSubTableBO(JNIEnv *env, jclass clazz, jint target, jint start, jint count, jint format, jint type, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glColorSubTable(target, start, count, format, type, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorTable(JNIEnv *env, jclass clazz, jint target, jint internalFormat, jint width, jint format, jint type, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glColorTable(target, internalFormat, width, format, type, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBImaging_nglColorTableBO(JNIEnv *env, jclass clazz, jint target, jint internalFormat, jint width, jint format, jint type, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glColorTable(target, internalFormat, width, format, type, data_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBImaging_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglColorTable", "(IIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglColorTable, "glColorTable", (void*)&glColorTable}, - {"nglColorTableBO", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglColorTableBO, NULL, NULL}, - {"nglColorSubTable", "(IIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglColorSubTable, "glColorSubTable", (void*)&glColorSubTable}, - {"nglColorSubTableBO", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglColorSubTableBO, NULL, NULL}, - {"nglColorTableParameteriv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglColorTableParameteriv, "glColorTableParameteriv", (void*)&glColorTableParameteriv}, - {"nglColorTableParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglColorTableParameterfv, "glColorTableParameterfv", (void*)&glColorTableParameterfv}, - {"glCopyColorSubTable", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glCopyColorSubTable, "glCopyColorSubTable", (void*)&glCopyColorSubTable}, - {"glCopyColorTable", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glCopyColorTable, "glCopyColorTable", (void*)&glCopyColorTable}, - {"nglGetColorTable", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetColorTable, "glGetColorTable", (void*)&glGetColorTable}, - {"nglGetColorTableParameteriv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetColorTableParameteriv, "glGetColorTableParameteriv", (void*)&glGetColorTableParameteriv}, - {"nglGetColorTableParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetColorTableParameterfv, "glGetColorTableParameterfv", (void*)&glGetColorTableParameterfv}, - {"glBlendEquation", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glBlendEquation, "glBlendEquation", (void*)&glBlendEquation}, - {"glBlendColor", "(FFFF)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glBlendColor, "glBlendColor", (void*)&glBlendColor}, - {"glHistogram", "(IIIZ)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glHistogram, "glHistogram", (void*)&glHistogram}, - {"glResetHistogram", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glResetHistogram, "glResetHistogram", (void*)&glResetHistogram}, - {"nglGetHistogram", "(IZIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetHistogram, "glGetHistogram", (void*)&glGetHistogram}, - {"nglGetHistogramBO", "(IZIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramBO, NULL, NULL}, - {"nglGetHistogramParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramParameterfv, "glGetHistogramParameterfv", (void*)&glGetHistogramParameterfv}, - {"nglGetHistogramParameteriv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramParameteriv, "glGetHistogramParameteriv", (void*)&glGetHistogramParameteriv}, - {"glMinmax", "(IIZ)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glMinmax, "glMinmax", (void*)&glMinmax}, - {"glResetMinmax", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glResetMinmax, "glResetMinmax", (void*)&glResetMinmax}, - {"nglGetMinmax", "(IZIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetMinmax, "glGetMinmax", (void*)&glGetMinmax}, - {"nglGetMinmaxBO", "(IZIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxBO, NULL, NULL}, - {"nglGetMinmaxParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxParameterfv, "glGetMinmaxParameterfv", (void*)&glGetMinmaxParameterfv}, - {"nglGetMinmaxParameteriv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxParameteriv, "glGetMinmaxParameteriv", (void*)&glGetMinmaxParameteriv}, - {"nglConvolutionFilter1D", "(IIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter1D, "glConvolutionFilter1D", (void*)&glConvolutionFilter1D}, - {"nglConvolutionFilter1DBO", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter1DBO, NULL, NULL}, - {"nglConvolutionFilter2D", "(IIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter2D, "glConvolutionFilter2D", (void*)&glConvolutionFilter2D}, - {"nglConvolutionFilter2DBO", "(IIIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter2DBO, NULL, NULL}, - {"glConvolutionParameterf", "(IIF)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glConvolutionParameterf, "glConvolutionParameterf", (void*)&glConvolutionParameterf}, - {"nglConvolutionParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionParameterfv, "glConvolutionParameterfv", (void*)&glConvolutionParameterfv}, - {"glConvolutionParameteri", "(III)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glConvolutionParameteri, "glConvolutionParameteri", (void*)&glConvolutionParameteri}, - {"nglConvolutionParameteriv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionParameteriv, "glConvolutionParameteriv", (void*)&glConvolutionParameteriv}, - {"glCopyConvolutionFilter1D", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glCopyConvolutionFilter1D, "glCopyConvolutionFilter1D", (void*)&glCopyConvolutionFilter1D}, - {"glCopyConvolutionFilter2D", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_glCopyConvolutionFilter2D, "glCopyConvolutionFilter2D", (void*)&glCopyConvolutionFilter2D}, - {"nglGetConvolutionFilter", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionFilter, "glGetConvolutionFilter", (void*)&glGetConvolutionFilter}, - {"nglGetConvolutionFilterBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionFilterBO, NULL, NULL}, - {"nglGetConvolutionParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionParameterfv, "glGetConvolutionParameterfv", (void*)&glGetConvolutionParameterfv}, - {"nglGetConvolutionParameteriv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionParameteriv, "glGetConvolutionParameteriv", (void*)&glGetConvolutionParameteriv}, - {"nglSeparableFilter2D", "(IIIIIILjava/nio/Buffer;ILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglSeparableFilter2D, "glSeparableFilter2D", (void*)&glSeparableFilter2D}, - {"nglSeparableFilter2DBO", "(IIIIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglSeparableFilter2DBO, NULL, NULL}, - {"nglGetSeparableFilter", "(IIILjava/nio/Buffer;ILjava/nio/Buffer;ILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetSeparableFilter, "glGetSeparableFilter", (void*)&glGetSeparableFilter}, - {"nglGetSeparableFilterBO", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBImaging_nglGetSeparableFilterBO, NULL, NULL} + {"nglGetSeparableFilter", "(IIILjava/nio/Buffer;ILjava/nio/Buffer;ILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetSeparableFilter, "glGetSeparableFilter", (void *)&glGetSeparableFilter}, + {"nglGetSeparableFilterBO", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetSeparableFilterBO, "glGetSeparableFilter", (void *)&glGetSeparableFilter}, + {"nglSeparableFilter2D", "(IIIIIILjava/nio/Buffer;ILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglSeparableFilter2D, "glSeparableFilter2D", (void *)&glSeparableFilter2D}, + {"nglSeparableFilter2DBO", "(IIIIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglSeparableFilter2DBO, "glSeparableFilter2D", (void *)&glSeparableFilter2D}, + {"nglGetConvolutionParameteriv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionParameteriv, "glGetConvolutionParameteriv", (void *)&glGetConvolutionParameteriv}, + {"nglGetConvolutionParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionParameterfv, "glGetConvolutionParameterfv", (void *)&glGetConvolutionParameterfv}, + {"nglGetConvolutionFilter", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionFilter, "glGetConvolutionFilter", (void *)&glGetConvolutionFilter}, + {"nglGetConvolutionFilterBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetConvolutionFilterBO, "glGetConvolutionFilter", (void *)&glGetConvolutionFilter}, + {"glCopyConvolutionFilter2D", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glCopyConvolutionFilter2D, "glCopyConvolutionFilter2D", (void *)&glCopyConvolutionFilter2D}, + {"glCopyConvolutionFilter1D", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glCopyConvolutionFilter1D, "glCopyConvolutionFilter1D", (void *)&glCopyConvolutionFilter1D}, + {"nglConvolutionParameteriv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionParameteriv, "glConvolutionParameteriv", (void *)&glConvolutionParameteriv}, + {"glConvolutionParameteri", "(III)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glConvolutionParameteri, "glConvolutionParameteri", (void *)&glConvolutionParameteri}, + {"nglConvolutionParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionParameterfv, "glConvolutionParameterfv", (void *)&glConvolutionParameterfv}, + {"glConvolutionParameterf", "(IIF)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glConvolutionParameterf, "glConvolutionParameterf", (void *)&glConvolutionParameterf}, + {"nglConvolutionFilter2D", "(IIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter2D, "glConvolutionFilter2D", (void *)&glConvolutionFilter2D}, + {"nglConvolutionFilter2DBO", "(IIIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter2DBO, "glConvolutionFilter2D", (void *)&glConvolutionFilter2D}, + {"nglConvolutionFilter1D", "(IIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter1D, "glConvolutionFilter1D", (void *)&glConvolutionFilter1D}, + {"nglConvolutionFilter1DBO", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglConvolutionFilter1DBO, "glConvolutionFilter1D", (void *)&glConvolutionFilter1D}, + {"nglGetMinmaxParameteriv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxParameteriv, "glGetMinmaxParameteriv", (void *)&glGetMinmaxParameteriv}, + {"nglGetMinmaxParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxParameterfv, "glGetMinmaxParameterfv", (void *)&glGetMinmaxParameterfv}, + {"nglGetMinmax", "(IZIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetMinmax, "glGetMinmax", (void *)&glGetMinmax}, + {"nglGetMinmaxBO", "(IZIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetMinmaxBO, "glGetMinmax", (void *)&glGetMinmax}, + {"glResetMinmax", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glResetMinmax, "glResetMinmax", (void *)&glResetMinmax}, + {"glMinmax", "(IIZ)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glMinmax, "glMinmax", (void *)&glMinmax}, + {"nglGetHistogramParameteriv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramParameteriv, "glGetHistogramParameteriv", (void *)&glGetHistogramParameteriv}, + {"nglGetHistogramParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramParameterfv, "glGetHistogramParameterfv", (void *)&glGetHistogramParameterfv}, + {"nglGetHistogram", "(IZIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetHistogram, "glGetHistogram", (void *)&glGetHistogram}, + {"nglGetHistogramBO", "(IZIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetHistogramBO, "glGetHistogram", (void *)&glGetHistogram}, + {"glResetHistogram", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glResetHistogram, "glResetHistogram", (void *)&glResetHistogram}, + {"glHistogram", "(IIIZ)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glHistogram, "glHistogram", (void *)&glHistogram}, + {"glBlendColor", "(FFFF)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glBlendColor, "glBlendColor", (void *)&glBlendColor}, + {"glBlendEquation", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glBlendEquation, "glBlendEquation", (void *)&glBlendEquation}, + {"nglGetColorTableParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetColorTableParameterfv, "glGetColorTableParameterfv", (void *)&glGetColorTableParameterfv}, + {"nglGetColorTableParameteriv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetColorTableParameteriv, "glGetColorTableParameteriv", (void *)&glGetColorTableParameteriv}, + {"nglGetColorTable", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglGetColorTable, "glGetColorTable", (void *)&glGetColorTable}, + {"glCopyColorTable", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glCopyColorTable, "glCopyColorTable", (void *)&glCopyColorTable}, + {"glCopyColorSubTable", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_glCopyColorSubTable, "glCopyColorSubTable", (void *)&glCopyColorSubTable}, + {"nglColorTableParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglColorTableParameterfv, "glColorTableParameterfv", (void *)&glColorTableParameterfv}, + {"nglColorTableParameteriv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglColorTableParameteriv, "glColorTableParameteriv", (void *)&glColorTableParameteriv}, + {"nglColorSubTable", "(IIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglColorSubTable, "glColorSubTable", (void *)&glColorSubTable}, + {"nglColorSubTableBO", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglColorSubTableBO, "glColorSubTable", (void *)&glColorSubTable}, + {"nglColorTable", "(IIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglColorTable, "glColorTable", (void *)&glColorTable}, + {"nglColorTableBO", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBImaging_nglColorTableBO, "glColorTable", (void *)&glColorTable} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBMatrixPalette.c b/src/native/common/arb/org_lwjgl_opengl_ARBMatrixPalette.c index 6831403d..1b8f03f1 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBMatrixPalette.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBMatrixPalette.c @@ -1,139 +1,58 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBMatrixPalette -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glCurrentPaletteMatrixARBPROC) (GLint index); -typedef void (APIENTRY * glMatrixIndexubvARBPROC) (GLint size, GLubyte *indices); -typedef void (APIENTRY * glMatrixIndexusvARBPROC) (GLint size, GLushort *indices); -typedef void (APIENTRY * glMatrixIndexuivARBPROC) (GLint size, GLuint *indices); -typedef void (APIENTRY * glMatrixIndexPointerARBPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer); +typedef void (APIENTRY *glMatrixIndexuivARBPROC) (GLint size, GLuint * pIndices); +typedef void (APIENTRY *glMatrixIndexusvARBPROC) (GLint size, GLushort * pIndices); +typedef void (APIENTRY *glMatrixIndexubvARBPROC) (GLint size, GLubyte * pIndices); +typedef void (APIENTRY *glMatrixIndexPointerARBPROC) (GLint size, GLenum type, GLsizei stride, GLvoid * pPointer); +typedef void (APIENTRY *glCurrentPaletteMatrixARBPROC) (GLint index); -static glCurrentPaletteMatrixARBPROC glCurrentPaletteMatrixARB; -static glMatrixIndexubvARBPROC glMatrixIndexubvARB; -static glMatrixIndexusvARBPROC glMatrixIndexusvARB; static glMatrixIndexuivARBPROC glMatrixIndexuivARB; +static glMatrixIndexusvARBPROC glMatrixIndexusvARB; +static glMatrixIndexubvARBPROC glMatrixIndexubvARB; static glMatrixIndexPointerARBPROC glMatrixIndexPointerARB; +static glCurrentPaletteMatrixARBPROC glCurrentPaletteMatrixARB; -/* - * Class: org.lwjgl.opengl.ARBMatrixPalette - * Method: glCurrentPaletteMatrixARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_glCurrentPaletteMatrixARB - (JNIEnv * env, jclass clazz, jint index) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexuivARB(JNIEnv *env, jclass clazz, jint size, jobject pIndices, jint pIndices_position) { + GLuint *pIndices_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, pIndices)) + pIndices_position; + glMatrixIndexuivARB(size, pIndices_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexusvARB(JNIEnv *env, jclass clazz, jint size, jobject pIndices, jint pIndices_position) { + GLushort *pIndices_address = ((GLushort *)(*env)->GetDirectBufferAddress(env, pIndices)) + pIndices_position; + glMatrixIndexusvARB(size, pIndices_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexubvARB(JNIEnv *env, jclass clazz, jint size, jobject pIndices, jint pIndices_position) { + GLubyte *pIndices_address = ((GLubyte *)(*env)->GetDirectBufferAddress(env, pIndices)) + pIndices_position; + glMatrixIndexubvARB(size, pIndices_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexPointerARB(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jobject pPointer, jint pPointer_position) { + GLvoid *pPointer_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pPointer)) + pPointer_position)); + glMatrixIndexPointerARB(size, type, stride, pPointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexPointerARBBO(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jint pPointer_buffer_offset) { + GLvoid *pPointer_address = ((GLvoid *)offsetToPointer(pPointer_buffer_offset)); + glMatrixIndexPointerARB(size, type, stride, pPointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_glCurrentPaletteMatrixARB(JNIEnv *env, jclass clazz, jint index) { glCurrentPaletteMatrixARB(index); - } -/* - * Class: org.lwjgl.opengl.ARBMatrixPalette - * Method: nglMatrixIndexPointerARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexPointerARB - (JNIEnv * env, jclass clazz, jint size, jint type, jint stride, jobject pPointer, jint pPointer_offset) -{ - GLvoid *pPointer_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pPointer) + pPointer_offset); - glMatrixIndexPointerARB(size, type, stride, pPointer_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBMatrixPalette - * Method: nglMatrixIndexPointerARBVBO - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexPointerARBVBO - (JNIEnv * env, jclass clazz, jint size, jint type, jint stride, jint buffer_offset) -{ - glMatrixIndexPointerARB(size, type, stride, (GLvoid *)buffer_offset); - -} - -/* - * Class: org.lwjgl.opengl.ARBMatrixPalette - * Method: nglMatrixIndexubvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexubvARB - (JNIEnv * env, jclass clazz, jint size, jobject pIndices, jint pIndices_offset) -{ - GLubyte *pIndices_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, pIndices) + pIndices_offset; - glMatrixIndexubvARB(size, pIndices_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBMatrixPalette - * Method: nglMatrixIndexuivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexuivARB - (JNIEnv * env, jclass clazz, jint size, jobject piIndices, jint piIndices_offset) -{ - GLuint *piIndices_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, piIndices) + piIndices_offset; - glMatrixIndexuivARB(size, piIndices_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBMatrixPalette - * Method: nglMatrixIndexusvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexusvARB - (JNIEnv * env, jclass clazz, jint size, jobject psIndices, jint psIndices_offset) -{ - GLushort *psIndices_ptr = (GLushort *)(*env)->GetDirectBufferAddress(env, psIndices) + psIndices_offset; - glMatrixIndexusvARB(size, psIndices_ptr); - -} - -#ifdef _cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBMatrixPalette_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glCurrentPaletteMatrixARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBMatrixPalette_glCurrentPaletteMatrixARB, "glCurrentPaletteMatrixARB", (void*)&glCurrentPaletteMatrixARB}, - {"nglMatrixIndexPointerARB", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexPointerARB, "glMatrixIndexPointerARB", (void*)&glMatrixIndexPointerARB}, - {"nglMatrixIndexPointerARBVBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexPointerARBVBO, NULL, NULL}, - {"nglMatrixIndexubvARB", "(ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexubvARB, "glMatrixIndexubvARB", (void*)&glMatrixIndexubvARB}, - {"nglMatrixIndexuivARB", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexuivARB, "glMatrixIndexuivARB", (void*)&glMatrixIndexuivARB}, - {"nglMatrixIndexusvARB", "(ILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexusvARB, "glMatrixIndexusvARB", (void*)&glMatrixIndexusvARB} + {"nglMatrixIndexuivARB", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexuivARB, "glMatrixIndexuivARB", (void *)&glMatrixIndexuivARB}, + {"nglMatrixIndexusvARB", "(ILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexusvARB, "glMatrixIndexusvARB", (void *)&glMatrixIndexusvARB}, + {"nglMatrixIndexubvARB", "(ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexubvARB, "glMatrixIndexubvARB", (void *)&glMatrixIndexubvARB}, + {"nglMatrixIndexPointerARB", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexPointerARB, "glMatrixIndexPointerARB", (void *)&glMatrixIndexPointerARB}, + {"nglMatrixIndexPointerARBBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_ARBMatrixPalette_nglMatrixIndexPointerARBBO, "glMatrixIndexPointerARB", (void *)&glMatrixIndexPointerARB}, + {"glCurrentPaletteMatrixARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBMatrixPalette_glCurrentPaletteMatrixARB, "glCurrentPaletteMatrixARB", (void *)&glCurrentPaletteMatrixARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBMultisample.c b/src/native/common/arb/org_lwjgl_opengl_ARBMultisample.c index 08e5c372..411c032e 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBMultisample.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBMultisample.c @@ -1,67 +1,20 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBMultisample -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glSampleCoverageARBPROC) (GLclampf value, GLboolean invert); +typedef void (APIENTRY *glSampleCoverageARBPROC) (GLclampf value, GLboolean invert); static glSampleCoverageARBPROC glSampleCoverageARB; -/* - * Class: org.lwjgl.opengl.ARBMultisample - * Method: glSampleCoverageARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultisample_glSampleCoverageARB - (JNIEnv * env, jclass clazz, jfloat value, jboolean invert) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBMultisample_glSampleCoverageARB(JNIEnv *env, jclass clazz, jfloat value, jboolean invert) { glSampleCoverageARB(value, invert); - } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBMultisample_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glSampleCoverageARB", "(FZ)V", (void*)&Java_org_lwjgl_opengl_ARBMultisample_glSampleCoverageARB, "glSampleCoverageARB", (void*)&glSampleCoverageARB} + {"glSampleCoverageARB", "(FZ)V", (void *)&Java_org_lwjgl_opengl_ARBMultisample_glSampleCoverageARB, "glSampleCoverageARB", (void *)&glSampleCoverageARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBMultitexture.c b/src/native/common/arb/org_lwjgl_opengl_ARBMultitexture.c index b3dcd3ef..bd4ebc55 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBMultitexture.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBMultitexture.c @@ -1,249 +1,111 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBMultitexture -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glActiveTextureARBPROC) (GLenum texture ); -typedef void (APIENTRY * glClientActiveTextureARBPROC) (GLenum texture ); -typedef void (APIENTRY * glMultiTexCoord1fARBPROC) (GLenum target, GLfloat s ); -typedef void (APIENTRY * glMultiTexCoord1iARBPROC) (GLenum target, GLint s ); -typedef void (APIENTRY * glMultiTexCoord1sARBPROC) (GLenum target, GLshort s ); -typedef void (APIENTRY * glMultiTexCoord2fARBPROC) (GLenum target, GLfloat s, GLfloat t ); -typedef void (APIENTRY * glMultiTexCoord2iARBPROC) (GLenum target, GLint s, GLint t ); -typedef void (APIENTRY * glMultiTexCoord2sARBPROC) (GLenum target, GLshort s, GLshort t ); -typedef void (APIENTRY * glMultiTexCoord3fARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r ); -typedef void (APIENTRY * glMultiTexCoord3iARBPROC) (GLenum target, GLint s, GLint t, GLint r ); -typedef void (APIENTRY * glMultiTexCoord3sARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r ); -typedef void (APIENTRY * glMultiTexCoord4fARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); -typedef void (APIENTRY * glMultiTexCoord4iARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q ); -typedef void (APIENTRY * glMultiTexCoord4sARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q ); +typedef void (APIENTRY *glMultiTexCoord4sARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); +typedef void (APIENTRY *glMultiTexCoord4iARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q); +typedef void (APIENTRY *glMultiTexCoord4fARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); +typedef void (APIENTRY *glMultiTexCoord3sARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r); +typedef void (APIENTRY *glMultiTexCoord3iARBPROC) (GLenum target, GLint s, GLint t, GLint r); +typedef void (APIENTRY *glMultiTexCoord3fARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); +typedef void (APIENTRY *glMultiTexCoord2sARBPROC) (GLenum target, GLshort s, GLshort t); +typedef void (APIENTRY *glMultiTexCoord2iARBPROC) (GLenum target, GLint s, GLint t); +typedef void (APIENTRY *glMultiTexCoord2fARBPROC) (GLenum target, GLfloat s, GLfloat t); +typedef void (APIENTRY *glMultiTexCoord1sARBPROC) (GLenum target, GLshort s); +typedef void (APIENTRY *glMultiTexCoord1iARBPROC) (GLenum target, GLint s); +typedef void (APIENTRY *glMultiTexCoord1fARBPROC) (GLenum target, GLfloat s); +typedef void (APIENTRY *glActiveTextureARBPROC) (GLenum texture); +typedef void (APIENTRY *glClientActiveTextureARBPROC) (GLenum texture); +static glMultiTexCoord4sARBPROC glMultiTexCoord4sARB; +static glMultiTexCoord4iARBPROC glMultiTexCoord4iARB; +static glMultiTexCoord4fARBPROC glMultiTexCoord4fARB; +static glMultiTexCoord3sARBPROC glMultiTexCoord3sARB; +static glMultiTexCoord3iARBPROC glMultiTexCoord3iARB; +static glMultiTexCoord3fARBPROC glMultiTexCoord3fARB; +static glMultiTexCoord2sARBPROC glMultiTexCoord2sARB; +static glMultiTexCoord2iARBPROC glMultiTexCoord2iARB; +static glMultiTexCoord2fARBPROC glMultiTexCoord2fARB; +static glMultiTexCoord1sARBPROC glMultiTexCoord1sARB; +static glMultiTexCoord1iARBPROC glMultiTexCoord1iARB; +static glMultiTexCoord1fARBPROC glMultiTexCoord1fARB; static glActiveTextureARBPROC glActiveTextureARB; static glClientActiveTextureARBPROC glClientActiveTextureARB; -static glMultiTexCoord1fARBPROC glMultiTexCoord1fARB; -static glMultiTexCoord1iARBPROC glMultiTexCoord1iARB; -static glMultiTexCoord1sARBPROC glMultiTexCoord1sARB; -static glMultiTexCoord2fARBPROC glMultiTexCoord2fARB; -static glMultiTexCoord2iARBPROC glMultiTexCoord2iARB; -static glMultiTexCoord2sARBPROC glMultiTexCoord2sARB; -static glMultiTexCoord3fARBPROC glMultiTexCoord3fARB; -static glMultiTexCoord3iARBPROC glMultiTexCoord3iARB; -static glMultiTexCoord3sARBPROC glMultiTexCoord3sARB; -static glMultiTexCoord4fARBPROC glMultiTexCoord4fARB; -static glMultiTexCoord4iARBPROC glMultiTexCoord4iARB; -static glMultiTexCoord4sARBPROC glMultiTexCoord4sARB; -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glClientActiveTextureARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glClientActiveTextureARB - (JNIEnv * env, jclass clazz, jint texture) -{ - glClientActiveTextureARB(texture); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glActiveTextureARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glActiveTextureARB - (JNIEnv * env, jclass clazz, jint texture) -{ - glActiveTextureARB(texture); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord1fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1fARB - (JNIEnv * env, jclass clazz, jint target, jfloat s) -{ - glMultiTexCoord1fARB(target, s); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord1iARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1iARB - (JNIEnv * env, jclass clazz, jint target, jint s) -{ - glMultiTexCoord1iARB(target, s); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord1sARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1sARB - (JNIEnv * env, jclass clazz, jint target, jshort s) -{ - glMultiTexCoord1sARB(target, s); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord2fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2fARB - (JNIEnv * env, jclass clazz, jint target, jfloat s, jfloat t) -{ - glMultiTexCoord2fARB(target, s, t); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord2iARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2iARB - (JNIEnv * env, jclass clazz, jint target, jint s, jint t) -{ - glMultiTexCoord2iARB(target, s, t); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord2sARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2sARB - (JNIEnv * env, jclass clazz, jint target, jshort s, jshort t) -{ - glMultiTexCoord2sARB(target, s, t); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord3fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3fARB - (JNIEnv * env, jclass clazz, jint target, jfloat s, jfloat t, jfloat r) -{ - glMultiTexCoord3fARB(target, s, t, r); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord3iARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3iARB - (JNIEnv * env, jclass clazz, jint target, jint s, jint t, jint r) -{ - glMultiTexCoord3iARB(target, s, t, r); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord3sARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3sARB - (JNIEnv * env, jclass clazz, jint target, jshort s, jshort t, jshort r) -{ - glMultiTexCoord3sARB(target, s, t, r); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord4fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4fARB - (JNIEnv * env, jclass clazz, jint target, jfloat s, jfloat t, jfloat r, jfloat q) -{ - glMultiTexCoord4fARB(target, s, t, r, q); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord4iARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4iARB - (JNIEnv * env, jclass clazz, jint target, jint s, jint t, jint r, jint q) -{ - glMultiTexCoord4iARB(target, s, t, r, q); - -} - -/* - * Class: org.lwjgl.opengl.ARBMultitexture - * Method: glMultiTexCoord4sARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4sARB - (JNIEnv * env, jclass clazz, jint target, jshort s, jshort t, jshort r, jshort q) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4sARB(JNIEnv *env, jclass clazz, jint target, jshort s, jshort t, jshort r, jshort q) { glMultiTexCoord4sARB(target, s, t, r, q); - } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4iARB(JNIEnv *env, jclass clazz, jint target, jint s, jint t, jint r, jint q) { + glMultiTexCoord4iARB(target, s, t, r, q); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4fARB(JNIEnv *env, jclass clazz, jint target, jfloat s, jfloat t, jfloat r, jfloat q) { + glMultiTexCoord4fARB(target, s, t, r, q); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3sARB(JNIEnv *env, jclass clazz, jint target, jshort s, jshort t, jshort r) { + glMultiTexCoord3sARB(target, s, t, r); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3iARB(JNIEnv *env, jclass clazz, jint target, jint s, jint t, jint r) { + glMultiTexCoord3iARB(target, s, t, r); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3fARB(JNIEnv *env, jclass clazz, jint target, jfloat s, jfloat t, jfloat r) { + glMultiTexCoord3fARB(target, s, t, r); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2sARB(JNIEnv *env, jclass clazz, jint target, jshort s, jshort t) { + glMultiTexCoord2sARB(target, s, t); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2iARB(JNIEnv *env, jclass clazz, jint target, jint s, jint t) { + glMultiTexCoord2iARB(target, s, t); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2fARB(JNIEnv *env, jclass clazz, jint target, jfloat s, jfloat t) { + glMultiTexCoord2fARB(target, s, t); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1sARB(JNIEnv *env, jclass clazz, jint target, jshort s) { + glMultiTexCoord1sARB(target, s); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1iARB(JNIEnv *env, jclass clazz, jint target, jint s) { + glMultiTexCoord1iARB(target, s); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1fARB(JNIEnv *env, jclass clazz, jint target, jfloat s) { + glMultiTexCoord1fARB(target, s); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glActiveTextureARB(JNIEnv *env, jclass clazz, jint texture) { + glActiveTextureARB(texture); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_glClientActiveTextureARB(JNIEnv *env, jclass clazz, jint texture) { + glClientActiveTextureARB(texture); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBMultitexture_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glClientActiveTextureARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glClientActiveTextureARB, "glClientActiveTextureARB", (void*)&glClientActiveTextureARB}, - {"glActiveTextureARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glActiveTextureARB, "glActiveTextureARB", (void*)&glActiveTextureARB}, - {"glMultiTexCoord1fARB", "(IF)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1fARB, "glMultiTexCoord1fARB", (void*)&glMultiTexCoord1fARB}, - {"glMultiTexCoord1iARB", "(II)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1iARB, "glMultiTexCoord1iARB", (void*)&glMultiTexCoord1iARB}, - {"glMultiTexCoord1sARB", "(IS)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1sARB, "glMultiTexCoord1sARB", (void*)&glMultiTexCoord1sARB}, - {"glMultiTexCoord2fARB", "(IFF)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2fARB, "glMultiTexCoord2fARB", (void*)&glMultiTexCoord2fARB}, - {"glMultiTexCoord2iARB", "(III)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2iARB, "glMultiTexCoord2iARB", (void*)&glMultiTexCoord2iARB}, - {"glMultiTexCoord2sARB", "(ISS)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2sARB, "glMultiTexCoord2sARB", (void*)&glMultiTexCoord2sARB}, - {"glMultiTexCoord3fARB", "(IFFF)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3fARB, "glMultiTexCoord3fARB", (void*)&glMultiTexCoord3fARB}, - {"glMultiTexCoord3iARB", "(IIII)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3iARB, "glMultiTexCoord3iARB", (void*)&glMultiTexCoord3iARB}, - {"glMultiTexCoord3sARB", "(ISSS)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3sARB, "glMultiTexCoord3sARB", (void*)&glMultiTexCoord3sARB}, - {"glMultiTexCoord4fARB", "(IFFFF)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4fARB, "glMultiTexCoord4fARB", (void*)&glMultiTexCoord4fARB}, - {"glMultiTexCoord4iARB", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4iARB, "glMultiTexCoord4iARB", (void*)&glMultiTexCoord4iARB}, - {"glMultiTexCoord4sARB", "(ISSSS)V", (void*)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4sARB, "glMultiTexCoord4sARB", (void*)&glMultiTexCoord4sARB} + {"glMultiTexCoord4sARB", "(ISSSS)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4sARB, "glMultiTexCoord4sARB", (void *)&glMultiTexCoord4sARB}, + {"glMultiTexCoord4iARB", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4iARB, "glMultiTexCoord4iARB", (void *)&glMultiTexCoord4iARB}, + {"glMultiTexCoord4fARB", "(IFFFF)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord4fARB, "glMultiTexCoord4fARB", (void *)&glMultiTexCoord4fARB}, + {"glMultiTexCoord3sARB", "(ISSS)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3sARB, "glMultiTexCoord3sARB", (void *)&glMultiTexCoord3sARB}, + {"glMultiTexCoord3iARB", "(IIII)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3iARB, "glMultiTexCoord3iARB", (void *)&glMultiTexCoord3iARB}, + {"glMultiTexCoord3fARB", "(IFFF)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord3fARB, "glMultiTexCoord3fARB", (void *)&glMultiTexCoord3fARB}, + {"glMultiTexCoord2sARB", "(ISS)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2sARB, "glMultiTexCoord2sARB", (void *)&glMultiTexCoord2sARB}, + {"glMultiTexCoord2iARB", "(III)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2iARB, "glMultiTexCoord2iARB", (void *)&glMultiTexCoord2iARB}, + {"glMultiTexCoord2fARB", "(IFF)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord2fARB, "glMultiTexCoord2fARB", (void *)&glMultiTexCoord2fARB}, + {"glMultiTexCoord1sARB", "(IS)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1sARB, "glMultiTexCoord1sARB", (void *)&glMultiTexCoord1sARB}, + {"glMultiTexCoord1iARB", "(II)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1iARB, "glMultiTexCoord1iARB", (void *)&glMultiTexCoord1iARB}, + {"glMultiTexCoord1fARB", "(IF)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glMultiTexCoord1fARB, "glMultiTexCoord1fARB", (void *)&glMultiTexCoord1fARB}, + {"glActiveTextureARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glActiveTextureARB, "glActiveTextureARB", (void *)&glActiveTextureARB}, + {"glClientActiveTextureARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBMultitexture_glClientActiveTextureARB, "glClientActiveTextureARB", (void *)&glClientActiveTextureARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBOcclusionQuery.c b/src/native/common/arb/org_lwjgl_opengl_ARBOcclusionQuery.c index 86a4e567..68643d87 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBOcclusionQuery.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBOcclusionQuery.c @@ -1,171 +1,75 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBOcclusionQuery -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glGenQueriesARBPROC) (GLsizei n, GLuint *ids); -typedef void (APIENTRY * glDeleteQueriesARBPROC) (GLsizei n, const GLuint *ids); -typedef GLboolean (APIENTRY * glIsQueryARBPROC) (GLuint id); -typedef void (APIENTRY * glBeginQueryARBPROC) (GLenum target, GLuint id); -typedef void (APIENTRY * glEndQueryARBPROC) (GLenum target); -typedef void (APIENTRY * glGetQueryivARBPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetQueryObjectivARBPROC) (GLuint id, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetQueryObjectuivARBPROC) (GLuint id, GLenum pname, GLuint *params); +typedef void (APIENTRY *glGetQueryObjectuivARBPROC) (GLuint id, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetQueryObjectivARBPROC) (GLuint id, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetQueryivARBPROC) (GLenum target, GLenum pname, GLint * params); +typedef void (APIENTRY *glEndQueryARBPROC) (GLenum target); +typedef void (APIENTRY *glBeginQueryARBPROC) (GLenum target, GLuint id); +typedef GLboolean (APIENTRY *glIsQueryARBPROC) (GLuint id); +typedef void (APIENTRY *glDeleteQueriesARBPROC) (GLsizei n, GLuint * ids); +typedef void (APIENTRY *glGenQueriesARBPROC) (GLsizei n, GLuint * ids); -static glGenQueriesARBPROC glGenQueriesARB; -static glDeleteQueriesARBPROC glDeleteQueriesARB; -static glIsQueryARBPROC glIsQueryARB; -static glBeginQueryARBPROC glBeginQueryARB; -static glEndQueryARBPROC glEndQueryARB; -static glGetQueryivARBPROC glGetQueryivARB; -static glGetQueryObjectivARBPROC glGetQueryObjectivARB; static glGetQueryObjectuivARBPROC glGetQueryObjectuivARB; +static glGetQueryObjectivARBPROC glGetQueryObjectivARB; +static glGetQueryivARBPROC glGetQueryivARB; +static glEndQueryARBPROC glEndQueryARB; +static glBeginQueryARBPROC glBeginQueryARB; +static glIsQueryARBPROC glIsQueryARB; +static glDeleteQueriesARBPROC glDeleteQueriesARB; +static glGenQueriesARBPROC glGenQueriesARB; -/* - * Class: org.lwjgl.opengl.ARBOcclusionQuery - * Method: nglGenQueriesARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGenQueriesARB - (JNIEnv * env, jclass clazz, jint n, jobject ids, jint idsOffset) -{ - GLuint *ids_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, ids) + idsOffset; - glGenQueriesARB(n, ids_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryObjectuivARB(JNIEnv *env, jclass clazz, jint id, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetQueryObjectuivARB(id, pname, params_address); } -/* - * Class: org.lwjgl.opengl.ARBOcclusionQuery - * Method: nglDeleteQueriesARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_nglDeleteQueriesARB - (JNIEnv * env, jclass clazz, jint n, jobject ids, jint idsOffset) -{ - GLuint *ids_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, ids) + idsOffset; - glDeleteQueriesARB(n, ids_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryObjectivARB(JNIEnv *env, jclass clazz, jint id, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetQueryObjectivARB(id, pname, params_address); } -/* - * Class: org.lwjgl.opengl.ARBOcclusionQuery - * Method: glIsQueryARB - */ -static jboolean JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_glIsQueryARB - (JNIEnv * env, jclass clazz, jint id) -{ - GLboolean result = glIsQueryARB(id); - - return result; +static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryivARB(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetQueryivARB(target, pname, params_address); } -/* - * Class: org.lwjgl.opengl.ARBOcclusionQuery - * Method: glBeginQueryARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_glBeginQueryARB - (JNIEnv * env, jclass clazz, jint target, jint id) -{ - glBeginQueryARB(target, id); - -} - -/* - * Class: org.lwjgl.opengl.ARBOcclusionQuery - * Method: glEndQueryARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_glEndQueryARB - (JNIEnv * env, jclass clazz, jint target) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_glEndQueryARB(JNIEnv *env, jclass clazz, jint target) { glEndQueryARB(target); - } -/* - * Class: org.lwjgl.opengl.ARBOcclusionQuery - * Method: nglGetQueryivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryivARB - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetQueryivARB(target, pname, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_glBeginQueryARB(JNIEnv *env, jclass clazz, jint target, jint id) { + glBeginQueryARB(target, id); } -/* - * Class: org.lwjgl.opengl.ARBOcclusionQuery - * Method: nglGetQueryObjectivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryObjectivARB - (JNIEnv * env, jclass clazz, jint id, jint pname, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetQueryObjectivARB(id, pname, params_ptr); - +static jboolean JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_glIsQueryARB(JNIEnv *env, jclass clazz, jint id) { + GLboolean __result = glIsQueryARB(id); + return __result; } -/* - * Class: org.lwjgl.opengl.ARBOcclusionQuery - * Method: nglGetQueryObjectuivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryObjectuivARB - (JNIEnv * env, jclass clazz, jint id, jint pname, jobject params, jint paramsOffset) -{ - GLuint *params_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetQueryObjectuivARB(id, pname, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_nglDeleteQueriesARB(JNIEnv *env, jclass clazz, jint n, jobject ids, jint ids_position) { + GLuint *ids_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, ids)) + ids_position; + glDeleteQueriesARB(n, ids_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGenQueriesARB(JNIEnv *env, jclass clazz, jint n, jobject ids, jint ids_position) { + GLuint *ids_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, ids)) + ids_position; + glGenQueriesARB(n, ids_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBOcclusionQuery_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglGenQueriesARB", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGenQueriesARB, "glGenQueriesARB", (void*)&glGenQueriesARB}, - {"nglDeleteQueriesARB", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBOcclusionQuery_nglDeleteQueriesARB, "glDeleteQueriesARB", (void*)&glDeleteQueriesARB}, - {"glIsQueryARB", "(I)Z", (void*)&Java_org_lwjgl_opengl_ARBOcclusionQuery_glIsQueryARB, "glIsQueryARB", (void*)&glIsQueryARB}, - {"glBeginQueryARB", "(II)V", (void*)&Java_org_lwjgl_opengl_ARBOcclusionQuery_glBeginQueryARB, "glBeginQueryARB", (void*)&glBeginQueryARB}, - {"glEndQueryARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBOcclusionQuery_glEndQueryARB, "glEndQueryARB", (void*)&glEndQueryARB}, - {"nglGetQueryivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryivARB, "glGetQueryivARB", (void*)&glGetQueryivARB}, - {"nglGetQueryObjectivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryObjectivARB, "glGetQueryObjectivARB", (void*)&glGetQueryObjectivARB}, - {"nglGetQueryObjectuivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryObjectuivARB, "glGetQueryObjectuivARB", (void*)&glGetQueryObjectuivARB} + {"nglGetQueryObjectuivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryObjectuivARB, "glGetQueryObjectuivARB", (void *)&glGetQueryObjectuivARB}, + {"nglGetQueryObjectivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryObjectivARB, "glGetQueryObjectivARB", (void *)&glGetQueryObjectivARB}, + {"nglGetQueryivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGetQueryivARB, "glGetQueryivARB", (void *)&glGetQueryivARB}, + {"glEndQueryARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBOcclusionQuery_glEndQueryARB, "glEndQueryARB", (void *)&glEndQueryARB}, + {"glBeginQueryARB", "(II)V", (void *)&Java_org_lwjgl_opengl_ARBOcclusionQuery_glBeginQueryARB, "glBeginQueryARB", (void *)&glBeginQueryARB}, + {"glIsQueryARB", "(I)Z", (void *)&Java_org_lwjgl_opengl_ARBOcclusionQuery_glIsQueryARB, "glIsQueryARB", (void *)&glIsQueryARB}, + {"nglDeleteQueriesARB", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBOcclusionQuery_nglDeleteQueriesARB, "glDeleteQueriesARB", (void *)&glDeleteQueriesARB}, + {"nglGenQueriesARB", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBOcclusionQuery_nglGenQueriesARB, "glGenQueriesARB", (void *)&glGenQueriesARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBPointParameters.c b/src/native/common/arb/org_lwjgl_opengl_ARBPointParameters.c index 3d996bc0..c4cc2c67 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBPointParameters.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBPointParameters.c @@ -1,82 +1,28 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBPointParameters -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glPointParameterfARBPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glPointParameterfvARBPROC) (GLenum pname, GLfloat *params); +typedef void (APIENTRY *glPointParameterfvARBPROC) (GLenum pname, GLfloat * pfParams); +typedef void (APIENTRY *glPointParameterfARBPROC) (GLenum pname, GLfloat param); -static glPointParameterfARBPROC glPointParameterfARB; static glPointParameterfvARBPROC glPointParameterfvARB; +static glPointParameterfARBPROC glPointParameterfARB; -/* - * Class: org.lwjgl.opengl.ARBPointParameters - * Method: glPointParameterfARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBPointParameters_glPointParameterfARB - (JNIEnv * env, jclass clazz, jint pname, jfloat param) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBPointParameters_nglPointParameterfvARB(JNIEnv *env, jclass clazz, jint pname, jobject pfParams, jint pfParams_position) { + GLfloat *pfParams_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams)) + pfParams_position; + glPointParameterfvARB(pname, pfParams_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBPointParameters_glPointParameterfARB(JNIEnv *env, jclass clazz, jint pname, jfloat param) { glPointParameterfARB(pname, param); - } -/* - * Class: org.lwjgl.opengl.ARBPointParameters - * Method: nglPointParameterfvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBPointParameters_nglPointParameterfvARB - (JNIEnv * env, jclass clazz, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glPointParameterfvARB(pname, pfParams_ptr); - -} - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBPointParameters_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glPointParameterfARB", "(IF)V", (void*)&Java_org_lwjgl_opengl_ARBPointParameters_glPointParameterfARB, "glPointParameterfARB", (void*)&glPointParameterfARB}, - {"nglPointParameterfvARB", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBPointParameters_nglPointParameterfvARB, "glPointParameterfvARB", (void*)&glPointParameterfvARB} + {"nglPointParameterfvARB", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBPointParameters_nglPointParameterfvARB, "glPointParameterfvARB", (void *)&glPointParameterfvARB}, + {"glPointParameterfARB", "(IF)V", (void *)&Java_org_lwjgl_opengl_ARBPointParameters_glPointParameterfARB, "glPointParameterfARB", (void *)&glPointParameterfARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBProgram.c b/src/native/common/arb/org_lwjgl_opengl_ARBProgram.c index 16a95b03..615a9a91 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBProgram.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBProgram.c @@ -1,246 +1,114 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBProgram -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glProgramStringARBPROC) (GLenum target, GLenum format, GLsizei len, const GLvoid *string); -typedef void (APIENTRY * glBindProgramARBPROC) (GLenum target, GLuint program); -typedef void (APIENTRY * glDeleteProgramsARBPROC) (GLsizei n, const GLuint *programs); -typedef void (APIENTRY * glGenProgramsARBPROC) (GLsizei n, GLuint *programs); -typedef void (APIENTRY * glProgramEnvParameter4fARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glProgramEnvParameter4fvARBPROC) (GLenum target, GLuint index, const GLfloat *params); -typedef void (APIENTRY * glProgramLocalParameter4fARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glProgramLocalParameter4fvARBPROC) (GLenum target, GLuint index, const GLfloat *params); -typedef void (APIENTRY * glGetProgramEnvParameterfvARBPROC) (GLenum target, GLuint index, GLfloat *params); -typedef void (APIENTRY * glGetProgramLocalParameterfvARBPROC) (GLenum target, GLuint index, GLfloat *params); -typedef void (APIENTRY * glGetProgramivARBPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetProgramStringARBPROC) (GLenum target, GLenum pname, GLvoid *string); -typedef GLboolean (APIENTRY * glIsProgramARBPROC) (GLuint program); +typedef GLboolean (APIENTRY *glIsProgramARBPROC) (GLuint program); +typedef void (APIENTRY *glGetProgramStringARBPROC) (GLenum target, GLenum parameterName, GLvoid * paramString); +typedef void (APIENTRY *glGetProgramivARBPROC) (GLenum target, GLenum parameterName, GLint * params); +typedef void (APIENTRY *glGetProgramLocalParameterfvARBPROC) (GLenum target, GLuint index, GLfloat * params); +typedef void (APIENTRY *glGetProgramEnvParameterfvARBPROC) (GLenum target, GLuint index, GLfloat * params); +typedef void (APIENTRY *glProgramLocalParameter4fvARBPROC) (GLenum target, GLuint index, const GLfloat * params); +typedef void (APIENTRY *glProgramLocalParameter4fARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY *glProgramEnvParameter4fvARBPROC) (GLenum target, GLuint index, const GLfloat * params); +typedef void (APIENTRY *glProgramEnvParameter4fARBPROC) (GLint target, GLint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY *glGenProgramsARBPROC) (GLsizei n, GLuint * programs); +typedef void (APIENTRY *glDeleteProgramsARBPROC) (GLsizei n, const GLuint * programs); +typedef void (APIENTRY *glBindProgramARBPROC) (GLenum target, GLuint program); +typedef void (APIENTRY *glProgramStringARBPROC) (GLenum target, GLenum format, GLsizei length, const GLvoid * string); -static glProgramStringARBPROC glProgramStringARB; -static glBindProgramARBPROC glBindProgramARB; -static glDeleteProgramsARBPROC glDeleteProgramsARB; -static glGenProgramsARBPROC glGenProgramsARB; - -static glProgramEnvParameter4fARBPROC glProgramEnvParameter4fARB; -static glProgramEnvParameter4fvARBPROC glProgramEnvParameter4fvARB; -static glProgramLocalParameter4fARBPROC glProgramLocalParameter4fARB; -static glProgramLocalParameter4fvARBPROC glProgramLocalParameter4fvARB; -static glGetProgramEnvParameterfvARBPROC glGetProgramEnvParameterfvARB; -static glGetProgramLocalParameterfvARBPROC glGetProgramLocalParameterfvARB; -static glGetProgramivARBPROC glGetProgramivARB; -static glGetProgramStringARBPROC glGetProgramStringARB; static glIsProgramARBPROC glIsProgramARB; +static glGetProgramStringARBPROC glGetProgramStringARB; +static glGetProgramivARBPROC glGetProgramivARB; +static glGetProgramLocalParameterfvARBPROC glGetProgramLocalParameterfvARB; +static glGetProgramEnvParameterfvARBPROC glGetProgramEnvParameterfvARB; +static glProgramLocalParameter4fvARBPROC glProgramLocalParameter4fvARB; +static glProgramLocalParameter4fARBPROC glProgramLocalParameter4fARB; +static glProgramEnvParameter4fvARBPROC glProgramEnvParameter4fvARB; +static glProgramEnvParameter4fARBPROC glProgramEnvParameter4fARB; +static glGenProgramsARBPROC glGenProgramsARB; +static glDeleteProgramsARBPROC glDeleteProgramsARB; +static glBindProgramARBPROC glBindProgramARB; +static glProgramStringARBPROC glProgramStringARB; -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: nglProgramStringARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglProgramStringARB - (JNIEnv * env, jclass clazz, jint target, jint format, jint length, jobject string, jint stringOffset) -{ - GLvoid *string_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, string) + stringOffset); - glProgramStringARB(target, format, length, string_ptr); - +static jboolean JNICALL Java_org_lwjgl_opengl_ARBProgram_glIsProgramARB(JNIEnv *env, jclass clazz, jint program) { + GLboolean __result = glIsProgramARB(program); + return __result; } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: glBindProgramARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_glBindProgramARB - (JNIEnv * env, jclass clazz, jint target, jint program) -{ - glBindProgramARB(target, program); - +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglGetProgramStringARB(JNIEnv *env, jclass clazz, jint target, jint parameterName, jobject paramString, jint paramString_position) { + GLvoid *paramString_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, paramString)) + paramString_position)); + glGetProgramStringARB(target, parameterName, paramString_address); } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: nglDeleteProgramsARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglDeleteProgramsARB - (JNIEnv * env, jclass clazz, jint n, jobject programs, jint programsOffset) -{ - GLuint *programs_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, programs) + programsOffset; - glDeleteProgramsARB(n, programs_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglGetProgramivARB(JNIEnv *env, jclass clazz, jint target, jint parameterName, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetProgramivARB(target, parameterName, params_address); } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: nglGenProgramsARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglGenProgramsARB - (JNIEnv * env, jclass clazz, jint n, jobject programs, jint programsOffset) -{ - GLuint *programs_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, programs) + programsOffset; - glGenProgramsARB(n, programs_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglGetProgramLocalParameterfvARB(JNIEnv *env, jclass clazz, jint target, jint index, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetProgramLocalParameterfvARB(target, index, params_address); } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: glProgramEnvParameter4fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_glProgramEnvParameter4fARB - (JNIEnv * env, jclass clazz, jint target, jint index, jfloat x, jfloat y, jfloat z, jfloat w) -{ - glProgramEnvParameter4fARB(target, index, x, y, z, w); - +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglGetProgramEnvParameterfvARB(JNIEnv *env, jclass clazz, jint target, jint index, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetProgramEnvParameterfvARB(target, index, params_address); } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: nglProgramEnvParameter4fvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglProgramEnvParameter4fvARB - (JNIEnv * env, jclass clazz, jint target, jint index, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glProgramEnvParameter4fvARB(target, index, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglProgramLocalParameter4fvARB(JNIEnv *env, jclass clazz, jint target, jint index, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glProgramLocalParameter4fvARB(target, index, params_address); } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: glProgramLocalParameter4fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_glProgramLocalParameter4fARB - (JNIEnv * env, jclass clazz, jint target, jint index, jfloat x, jfloat y, jfloat z, jfloat w) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_glProgramLocalParameter4fARB(JNIEnv *env, jclass clazz, jint target, jint index, jfloat x, jfloat y, jfloat z, jfloat w) { glProgramLocalParameter4fARB(target, index, x, y, z, w); - } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: nglProgramLocalParameter4fvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglProgramLocalParameter4fvARB - (JNIEnv * env, jclass clazz, jint target, jint index, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glProgramLocalParameter4fvARB(target, index, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglProgramEnvParameter4fvARB(JNIEnv *env, jclass clazz, jint target, jint index, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glProgramEnvParameter4fvARB(target, index, params_address); } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: nglGetProgramEnvParameterfvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglGetProgramEnvParameterfvARB - (JNIEnv * env, jclass clazz, jint target, jint index, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetProgramEnvParameterfvARB(target, index, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_glProgramEnvParameter4fARB(JNIEnv *env, jclass clazz, jint target, jint index, jfloat x, jfloat y, jfloat z, jfloat w) { + glProgramEnvParameter4fARB(target, index, x, y, z, w); } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: nglGetProgramLocalParameterfvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglGetProgramLocalParameterfvARB - (JNIEnv * env, jclass clazz, jint target, jint index, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetProgramLocalParameterfvARB(target, index, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglGenProgramsARB(JNIEnv *env, jclass clazz, jint n, jobject programs, jint programs_position) { + GLuint *programs_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, programs)) + programs_position; + glGenProgramsARB(n, programs_address); } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: nglGetProgramivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglGetProgramivARB - (JNIEnv * env, jclass clazz, jint target, jint parameterName, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetProgramivARB(target, parameterName, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglDeleteProgramsARB(JNIEnv *env, jclass clazz, jint n, jobject programs, jint programs_position) { + const GLuint *programs_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, programs)) + programs_position; + glDeleteProgramsARB(n, programs_address); } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: nglGetProgramStringARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglGetProgramStringARB - (JNIEnv * env, jclass clazz, jint target, jint parameterName, jobject paramString, jint paramStringOffset) -{ - GLvoid *paramString_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, paramString) + paramStringOffset); - glGetProgramStringARB(target, parameterName, paramString_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_glBindProgramARB(JNIEnv *env, jclass clazz, jint target, jint program) { + glBindProgramARB(target, program); } -/* - * Class: org.lwjgl.opengl.ARBProgram - * Method: glIsProgramARB - */ -static jboolean JNICALL Java_org_lwjgl_opengl_ARBProgram_glIsProgramARB - (JNIEnv * env, jclass clazz, jint program) -{ - GLboolean result = glIsProgramARB(program); - - return result; +static void JNICALL Java_org_lwjgl_opengl_ARBProgram_nglProgramStringARB(JNIEnv *env, jclass clazz, jint target, jint format, jint length, jobject string, jint string_position) { + const GLvoid *string_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, string)) + string_position)); + glProgramStringARB(target, format, length, string_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBProgram_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglProgramStringARB", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_nglProgramStringARB, "glProgramStringARB", (void*)&glProgramStringARB}, - {"glBindProgramARB", "(II)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_glBindProgramARB, "glBindProgramARB", (void*)&glBindProgramARB}, - {"nglDeleteProgramsARB", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_nglDeleteProgramsARB, "glDeleteProgramsARB", (void*)&glDeleteProgramsARB}, - {"nglGenProgramsARB", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_nglGenProgramsARB, "glGenProgramsARB", (void*)&glGenProgramsARB}, - {"glProgramEnvParameter4fARB", "(IIFFFF)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_glProgramEnvParameter4fARB, "glProgramEnvParameter4fARB", (void*)&glProgramEnvParameter4fARB}, - {"nglProgramEnvParameter4fvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_nglProgramEnvParameter4fvARB, "glProgramEnvParameter4fvARB", (void*)&glProgramEnvParameter4fvARB}, - {"glProgramLocalParameter4fARB", "(IIFFFF)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_glProgramLocalParameter4fARB, "glProgramLocalParameter4fARB", (void*)&glProgramLocalParameter4fARB}, - {"nglProgramLocalParameter4fvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_nglProgramLocalParameter4fvARB, "glProgramLocalParameter4fvARB", (void*)&glProgramLocalParameter4fvARB}, - {"nglGetProgramEnvParameterfvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_nglGetProgramEnvParameterfvARB, "glGetProgramEnvParameterfvARB", (void*)&glGetProgramEnvParameterfvARB}, - {"nglGetProgramLocalParameterfvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_nglGetProgramLocalParameterfvARB, "glGetProgramLocalParameterfvARB", (void*)&glGetProgramLocalParameterfvARB}, - {"nglGetProgramivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_nglGetProgramivARB, "glGetProgramivARB", (void*)&glGetProgramivARB}, - {"nglGetProgramStringARB", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBProgram_nglGetProgramStringARB, "glGetProgramStringARB", (void*)&glGetProgramStringARB}, - {"glIsProgramARB", "(I)Z", (void*)&Java_org_lwjgl_opengl_ARBProgram_glIsProgramARB, "glIsProgramARB", (void*)&glIsProgramARB} + {"glIsProgramARB", "(I)Z", (void *)&Java_org_lwjgl_opengl_ARBProgram_glIsProgramARB, "glIsProgramARB", (void *)&glIsProgramARB}, + {"nglGetProgramStringARB", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_nglGetProgramStringARB, "glGetProgramStringARB", (void *)&glGetProgramStringARB}, + {"nglGetProgramivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_nglGetProgramivARB, "glGetProgramivARB", (void *)&glGetProgramivARB}, + {"nglGetProgramLocalParameterfvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_nglGetProgramLocalParameterfvARB, "glGetProgramLocalParameterfvARB", (void *)&glGetProgramLocalParameterfvARB}, + {"nglGetProgramEnvParameterfvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_nglGetProgramEnvParameterfvARB, "glGetProgramEnvParameterfvARB", (void *)&glGetProgramEnvParameterfvARB}, + {"nglProgramLocalParameter4fvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_nglProgramLocalParameter4fvARB, "glProgramLocalParameter4fvARB", (void *)&glProgramLocalParameter4fvARB}, + {"glProgramLocalParameter4fARB", "(IIFFFF)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_glProgramLocalParameter4fARB, "glProgramLocalParameter4fARB", (void *)&glProgramLocalParameter4fARB}, + {"nglProgramEnvParameter4fvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_nglProgramEnvParameter4fvARB, "glProgramEnvParameter4fvARB", (void *)&glProgramEnvParameter4fvARB}, + {"glProgramEnvParameter4fARB", "(IIFFFF)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_glProgramEnvParameter4fARB, "glProgramEnvParameter4fARB", (void *)&glProgramEnvParameter4fARB}, + {"nglGenProgramsARB", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_nglGenProgramsARB, "glGenProgramsARB", (void *)&glGenProgramsARB}, + {"nglDeleteProgramsARB", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_nglDeleteProgramsARB, "glDeleteProgramsARB", (void *)&glDeleteProgramsARB}, + {"glBindProgramARB", "(II)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_glBindProgramARB, "glBindProgramARB", (void *)&glBindProgramARB}, + {"nglProgramStringARB", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBProgram_nglProgramStringARB, "glProgramStringARB", (void *)&glProgramStringARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef _cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBShaderObjects.c b/src/native/common/arb/org_lwjgl_opengl_ARBShaderObjects.c index addef7af..4ed2a1ce 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBShaderObjects.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBShaderObjects.c @@ -1,687 +1,317 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBShaderObjects -// ---------------------------------- - -#include +#include #include "extgl.h" -typedef void (APIENTRY * glDeleteObjectARBPROC) (GLhandleARB obj); -typedef GLhandleARB (APIENTRY * glGetHandleARBPROC) (GLenum pname); -typedef void (APIENTRY * glDetachObjectARBPROC) (GLhandleARB containerObj, GLhandleARB attachedObj); -typedef GLhandleARB (APIENTRY * glCreateShaderObjectARBPROC) (GLenum shaderType); -typedef void (APIENTRY * glShaderSourceARBPROC) (GLhandleARB shaderObj, GLsizei count, const GLcharARB **string, const GLint *length); -typedef void (APIENTRY * glCompileShaderARBPROC) (GLhandleARB shaderObj); -typedef GLhandleARB (APIENTRY * glCreateProgramObjectARBPROC) (GLvoid); -typedef void (APIENTRY * glAttachObjectARBPROC) (GLhandleARB containerObj, GLhandleARB obj); -typedef void (APIENTRY * glLinkProgramARBPROC) (GLhandleARB programObj); -typedef void (APIENTRY * glUseProgramObjectARBPROC) (GLhandleARB programObj); -typedef void (APIENTRY * glValidateProgramARBPROC) (GLhandleARB programObj); -typedef void (APIENTRY * glUniform1fARBPROC) (GLint location, GLfloat v0); -typedef void (APIENTRY * glUniform2fARBPROC) (GLint location, GLfloat v0, GLfloat v1); -typedef void (APIENTRY * glUniform3fARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2); -typedef void (APIENTRY * glUniform4fARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); -typedef void (APIENTRY * glUniform1iARBPROC) (GLint location, GLint v0); -typedef void (APIENTRY * glUniform2iARBPROC) (GLint location, GLint v0, GLint v1); -typedef void (APIENTRY * glUniform3iARBPROC) (GLint location, GLint v0, GLint v1, GLint v2); -typedef void (APIENTRY * glUniform4iARBPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3); -typedef void (APIENTRY * glUniform1fvARBPROC) (GLint location, GLsizei count, GLfloat *value); -typedef void (APIENTRY * glUniform2fvARBPROC) (GLint location, GLsizei count, GLfloat *value); -typedef void (APIENTRY * glUniform3fvARBPROC) (GLint location, GLsizei count, GLfloat *value); -typedef void (APIENTRY * glUniform4fvARBPROC) (GLint location, GLsizei count, GLfloat *value); -typedef void (APIENTRY * glUniform1ivARBPROC) (GLint location, GLsizei count, GLint *value); -typedef void (APIENTRY * glUniform2ivARBPROC) (GLint location, GLsizei count, GLint *value); -typedef void (APIENTRY * glUniform3ivARBPROC) (GLint location, GLsizei count, GLint *value); -typedef void (APIENTRY * glUniform4ivARBPROC) (GLint location, GLsizei count, GLint *value); -typedef void (APIENTRY * glUniformMatrix2fvARBPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat *value); -typedef void (APIENTRY * glUniformMatrix3fvARBPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat *value); -typedef void (APIENTRY * glUniformMatrix4fvARBPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat *value); -typedef void (APIENTRY * glGetObjectParameterfvARBPROC) (GLhandleARB obj, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetObjectParameterivARBPROC) (GLhandleARB obj, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetInfoLogARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog); -typedef void (APIENTRY * glGetAttachedObjectsARBPROC) (GLhandleARB containerObj, GLsizei maxCount, GLsizei *count, GLhandleARB *obj); -typedef GLint (APIENTRY * glGetUniformLocationARBPROC) (GLhandleARB programObj, const GLcharARB *name); -typedef void (APIENTRY * glGetActiveUniformARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name); -typedef void (APIENTRY * glGetUniformfvARBPROC) (GLhandleARB programObj, GLint location, GLfloat *params); -typedef void (APIENTRY * glGetUniformivARBPROC) (GLhandleARB programObj, GLint location, GLint *params); -typedef void (APIENTRY * glGetShaderSourceARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *source); +typedef void (APIENTRY *glGetShaderSourceARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei * length, GLcharARB * source); +typedef void (APIENTRY *glGetUniformivARBPROC) (GLhandleARB programObj, GLint location, GLint * params); +typedef void (APIENTRY *glGetUniformfvARBPROC) (GLhandleARB programObj, GLint location, GLfloat * params); +typedef void (APIENTRY *glGetActiveUniformARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name); +typedef GLint (APIENTRY *glGetUniformLocationARBPROC) (GLhandleARB programObj, const GLcharARB * name); +typedef void (APIENTRY *glGetAttachedObjectsARBPROC) (GLhandleARB containerObj, GLsizei maxCount, GLsizei * count, GLhandleARB * obj); +typedef void (APIENTRY *glGetInfoLogARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei * length, GLcharARB * infoLog); +typedef void (APIENTRY *glGetObjectParameterivARBPROC) (GLhandleARB obj, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetObjectParameterfvARBPROC) (GLhandleARB obj, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glUniformMatrix4fvARBPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat * matrices); +typedef void (APIENTRY *glUniformMatrix3fvARBPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat * matrices); +typedef void (APIENTRY *glUniformMatrix2fvARBPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat * matrices); +typedef void (APIENTRY *glUniform4ivARBPROC) (GLint location, GLsizei count, GLint * values); +typedef void (APIENTRY *glUniform3ivARBPROC) (GLint location, GLsizei count, GLint * values); +typedef void (APIENTRY *glUniform2ivARBPROC) (GLint location, GLsizei count, GLint * values); +typedef void (APIENTRY *glUniform1ivARBPROC) (GLint location, GLsizei count, GLint * values); +typedef void (APIENTRY *glUniform4fvARBPROC) (GLint location, GLsizei count, GLfloat * values); +typedef void (APIENTRY *glUniform3fvARBPROC) (GLint location, GLsizei count, GLfloat * values); +typedef void (APIENTRY *glUniform2fvARBPROC) (GLint location, GLsizei count, GLfloat * values); +typedef void (APIENTRY *glUniform1fvARBPROC) (GLint location, GLsizei count, GLfloat * values); +typedef void (APIENTRY *glUniform4iARBPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3); +typedef void (APIENTRY *glUniform3iARBPROC) (GLint location, GLint v0, GLint v1, GLint v2); +typedef void (APIENTRY *glUniform2iARBPROC) (GLint location, GLint v0, GLint v1); +typedef void (APIENTRY *glUniform1iARBPROC) (GLint location, GLint v0); +typedef void (APIENTRY *glUniform4fARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); +typedef void (APIENTRY *glUniform3fARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2); +typedef void (APIENTRY *glUniform2fARBPROC) (GLint location, GLfloat v0, GLfloat v1); +typedef void (APIENTRY *glUniform1fARBPROC) (GLint location, GLfloat v0); +typedef void (APIENTRY *glValidateProgramARBPROC) (GLhandleARB programObj); +typedef void (APIENTRY *glUseProgramObjectARBPROC) (GLhandleARB programObj); +typedef void (APIENTRY *glLinkProgramARBPROC) (GLhandleARB programObj); +typedef void (APIENTRY *glAttachObjectARBPROC) (GLhandleARB containerObj, GLhandleARB obj); +typedef GLhandleARB (APIENTRY *glCreateProgramObjectARBPROC) (); +typedef void (APIENTRY *glCompileShaderARBPROC) (GLhandleARB shaderObj); +typedef void (APIENTRY *glShaderSourceARBPROC) (GLhandleARB shader, GLsizei count, const GLcharARB ** string, const GLint* length); +typedef GLhandleARB (APIENTRY *glCreateShaderObjectARBPROC) (GLenum shaderType); +typedef void (APIENTRY *glDetachObjectARBPROC) (GLhandleARB containerObj, GLhandleARB attachedObj); +typedef GLhandleARB (APIENTRY *glGetHandleARBPROC) (GLenum pname); +typedef void (APIENTRY *glDeleteObjectARBPROC) (GLhandleARB obj); -static glDeleteObjectARBPROC glDeleteObjectARB; -static glGetHandleARBPROC glGetHandleARB; -static glDetachObjectARBPROC glDetachObjectARB; -static glCreateShaderObjectARBPROC glCreateShaderObjectARB; -static glShaderSourceARBPROC glShaderSourceARB; -static glCompileShaderARBPROC glCompileShaderARB; -static glCreateProgramObjectARBPROC glCreateProgramObjectARB; -static glAttachObjectARBPROC glAttachObjectARB; -static glLinkProgramARBPROC glLinkProgramARB; -static glUseProgramObjectARBPROC glUseProgramObjectARB; -static glValidateProgramARBPROC glValidateProgramARB; -static glUniform1fARBPROC glUniform1fARB; -static glUniform2fARBPROC glUniform2fARB; -static glUniform3fARBPROC glUniform3fARB; -static glUniform4fARBPROC glUniform4fARB; -static glUniform1iARBPROC glUniform1iARB; -static glUniform2iARBPROC glUniform2iARB; -static glUniform3iARBPROC glUniform3iARB; -static glUniform4iARBPROC glUniform4iARB; -static glUniform1fvARBPROC glUniform1fvARB; -static glUniform2fvARBPROC glUniform2fvARB; -static glUniform3fvARBPROC glUniform3fvARB; -static glUniform4fvARBPROC glUniform4fvARB; -static glUniform1ivARBPROC glUniform1ivARB; -static glUniform2ivARBPROC glUniform2ivARB; -static glUniform3ivARBPROC glUniform3ivARB; -static glUniform4ivARBPROC glUniform4ivARB; -static glUniformMatrix2fvARBPROC glUniformMatrix2fvARB; -static glUniformMatrix3fvARBPROC glUniformMatrix3fvARB; -static glUniformMatrix4fvARBPROC glUniformMatrix4fvARB; -static glGetObjectParameterfvARBPROC glGetObjectParameterfvARB; -static glGetObjectParameterivARBPROC glGetObjectParameterivARB; -static glGetInfoLogARBPROC glGetInfoLogARB; -static glGetAttachedObjectsARBPROC glGetAttachedObjectsARB; -static glGetUniformLocationARBPROC glGetUniformLocationARB; -static glGetActiveUniformARBPROC glGetActiveUniformARB; -static glGetUniformfvARBPROC glGetUniformfvARB; -static glGetUniformivARBPROC glGetUniformivARB; static glGetShaderSourceARBPROC glGetShaderSourceARB; +static glGetUniformivARBPROC glGetUniformivARB; +static glGetUniformfvARBPROC glGetUniformfvARB; +static glGetActiveUniformARBPROC glGetActiveUniformARB; +static glGetUniformLocationARBPROC glGetUniformLocationARB; +static glGetAttachedObjectsARBPROC glGetAttachedObjectsARB; +static glGetInfoLogARBPROC glGetInfoLogARB; +static glGetObjectParameterivARBPROC glGetObjectParameterivARB; +static glGetObjectParameterfvARBPROC glGetObjectParameterfvARB; +static glUniformMatrix4fvARBPROC glUniformMatrix4fvARB; +static glUniformMatrix3fvARBPROC glUniformMatrix3fvARB; +static glUniformMatrix2fvARBPROC glUniformMatrix2fvARB; +static glUniform4ivARBPROC glUniform4ivARB; +static glUniform3ivARBPROC glUniform3ivARB; +static glUniform2ivARBPROC glUniform2ivARB; +static glUniform1ivARBPROC glUniform1ivARB; +static glUniform4fvARBPROC glUniform4fvARB; +static glUniform3fvARBPROC glUniform3fvARB; +static glUniform2fvARBPROC glUniform2fvARB; +static glUniform1fvARBPROC glUniform1fvARB; +static glUniform4iARBPROC glUniform4iARB; +static glUniform3iARBPROC glUniform3iARB; +static glUniform2iARBPROC glUniform2iARB; +static glUniform1iARBPROC glUniform1iARB; +static glUniform4fARBPROC glUniform4fARB; +static glUniform3fARBPROC glUniform3fARB; +static glUniform2fARBPROC glUniform2fARB; +static glUniform1fARBPROC glUniform1fARB; +static glValidateProgramARBPROC glValidateProgramARB; +static glUseProgramObjectARBPROC glUseProgramObjectARB; +static glLinkProgramARBPROC glLinkProgramARB; +static glAttachObjectARBPROC glAttachObjectARB; +static glCreateProgramObjectARBPROC glCreateProgramObjectARB; +static glCompileShaderARBPROC glCompileShaderARB; +static glShaderSourceARBPROC glShaderSourceARB; +static glCreateShaderObjectARBPROC glCreateShaderObjectARB; +static glDetachObjectARBPROC glDetachObjectARB; +static glGetHandleARBPROC glGetHandleARB; +static glDeleteObjectARBPROC glDeleteObjectARB; -static int sourceCount; -static GLcharARB** sources = NULL; -static GLint* sourcesLengths = NULL; - -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glDeleteObjectARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glDeleteObjectARB - (JNIEnv * env, jclass clazz, jint obj) -{ - glDeleteObjectARB(obj); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetShaderSourceARB(JNIEnv *env, jclass clazz, jint obj, jint maxLength, jobject length, jint length_position, jobject source, jint source_position) { + GLsizei *length_address = ((GLsizei *)safeGetBufferAddress(env, length)) + length_position; + GLcharARB *source_address = ((GLcharARB *)(*env)->GetDirectBufferAddress(env, source)) + source_position; + glGetShaderSourceARB(obj, maxLength, length_address, source_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glGetHandleARB - */ -static jint JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glGetHandleARB - (JNIEnv * env, jclass clazz, jint pname) -{ - GLhandleARB result = glGetHandleARB(pname); - - return result; +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformivARB(JNIEnv *env, jclass clazz, jint programObj, jint location, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetUniformivARB(programObj, location, params_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glDetachObjectARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glDetachObjectARB - (JNIEnv * env, jclass clazz, jint containerObj, jint attachedObj) -{ - glDetachObjectARB(containerObj, attachedObj); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformfvARB(JNIEnv *env, jclass clazz, jint programObj, jint location, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetUniformfvARB(programObj, location, params_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glCreateShaderObjectARB - */ -static jint JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glCreateShaderObjectARB - (JNIEnv * env, jclass clazz, jint shaderType) -{ - GLhandleARB result = glCreateShaderObjectARB(shaderType); - - return result; +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetActiveUniformARB(JNIEnv *env, jclass clazz, jint programObj, jint index, jint maxLength, jobject length, jint length_position, jobject size, jint size_position, jobject type, jint type_position, jobject name, jint name_position) { + GLsizei *length_address = ((GLsizei *)safeGetBufferAddress(env, length)) + length_position; + GLint *size_address = ((GLint *)(*env)->GetDirectBufferAddress(env, size)) + size_position; + GLenum *type_address = ((GLenum *)(*env)->GetDirectBufferAddress(env, type)) + type_position; + GLcharARB *name_address = ((GLcharARB *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + glGetActiveUniformARB(programObj, index, maxLength, length_address, size_address, type_address, name_address); } -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_initShaderSource - (JNIEnv * env, jclass clazz, jint count) -{ - sourceCount = count; - - sources = (GLcharARB**)malloc(sizeof(GLcharARB*) * sourceCount); - sourcesLengths = (GLint*)malloc(sizeof(GLint) * sourceCount); +static jint JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformLocationARB(JNIEnv *env, jclass clazz, jint programObj, jobject name, jint name_position) { + const GLcharARB *name_address = ((const GLcharARB *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + GLint __result = glGetUniformLocationARB(programObj, name_address); + return __result; } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: setShaderString - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_setShaderString - (JNIEnv * env, jclass clazz, jint index, jobject string, jint stringOffset, jint stringLength) -{ - GLcharARB *string_ptr = (GLcharARB *)((GLubyte *)(*env)->GetDirectBufferAddress(env, string) + stringOffset); - - sources[index] = string_ptr; - sourcesLengths[index] = stringLength; +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetAttachedObjectsARB(JNIEnv *env, jclass clazz, jint containerObj, jint maxCount, jobject count, jint count_position, jobject obj, jint obj_position) { + GLsizei *count_address = ((GLsizei *)safeGetBufferAddress(env, count)) + count_position; + GLhandleARB *obj_address = ((GLhandleARB *)(*env)->GetDirectBufferAddress(env, obj)) + obj_position; + glGetAttachedObjectsARB(containerObj, maxCount, count_address, obj_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglShaderSourceARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglShaderSourceARB - (JNIEnv * env, jclass clazz, jint shaderObj) -{ - glShaderSourceARB(shaderObj, sourceCount, (const GLcharARB **)sources, (const GLint *)sourcesLengths); - - free(sources); - free(sourcesLengths); +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetInfoLogARB(JNIEnv *env, jclass clazz, jint obj, jint maxLength, jobject length, jint length_position, jobject infoLog, jint infoLog_position) { + GLsizei *length_address = ((GLsizei *)safeGetBufferAddress(env, length)) + length_position; + GLcharARB *infoLog_address = ((GLcharARB *)(*env)->GetDirectBufferAddress(env, infoLog)) + infoLog_position; + glGetInfoLogARB(obj, maxLength, length_address, infoLog_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glCompileShaderARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glCompileShaderARB - (JNIEnv * env, jclass clazz, jint shaderObj) -{ - glCompileShaderARB(shaderObj); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetObjectParameterivARB(JNIEnv *env, jclass clazz, jint obj, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetObjectParameterivARB(obj, pname, params_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glCreateProgramObjectARB - */ -static jint JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glCreateProgramObjectARB - (JNIEnv * env, jclass clazz) -{ - GLuint result = glCreateProgramObjectARB(); - - return result; +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetObjectParameterfvARB(JNIEnv *env, jclass clazz, jint obj, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetObjectParameterfvARB(obj, pname, params_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glAttachObjectARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glAttachObjectARB - (JNIEnv * env, jclass clazz, jint containerObj, jint obj) -{ - glAttachObjectARB(containerObj, obj); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix4fvARB(JNIEnv *env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matrices_position) { + GLfloat *matrices_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, matrices)) + matrices_position; + glUniformMatrix4fvARB(location, count, transpose, matrices_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glLinkProgramARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glLinkProgramARB - (JNIEnv * env, jclass clazz, jint programObj) -{ - glLinkProgramARB(programObj); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix3fvARB(JNIEnv *env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matrices_position) { + GLfloat *matrices_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, matrices)) + matrices_position; + glUniformMatrix3fvARB(location, count, transpose, matrices_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glUseProgramObjectARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUseProgramObjectARB - (JNIEnv * env, jclass clazz, jint programObj) -{ - glUseProgramObjectARB(programObj); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix2fvARB(JNIEnv *env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matrices_position) { + GLfloat *matrices_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, matrices)) + matrices_position; + glUniformMatrix2fvARB(location, count, transpose, matrices_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glValidateProgramARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glValidateProgramARB - (JNIEnv * env, jclass clazz, jint programObj) -{ - glValidateProgramARB(programObj); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform4ivARB(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLint *values_address = ((GLint *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform4ivARB(location, count, values_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glUniform1fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform1fARB - (JNIEnv * env, jclass clazz, jint location, jfloat v0) -{ - glUniform1fARB(location, v0); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform3ivARB(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLint *values_address = ((GLint *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform3ivARB(location, count, values_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glUniform2fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform2fARB - (JNIEnv * env, jclass clazz, jint location, jfloat v0, jfloat v1) -{ - glUniform2fARB(location, v0, v1); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform2ivARB(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLint *values_address = ((GLint *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform2ivARB(location, count, values_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glUniform3fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform3fARB - (JNIEnv * env, jclass clazz, jint location, jfloat v0, jfloat v1, jfloat v2) -{ - glUniform3fARB(location, v0, v1, v2); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform1ivARB(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLint *values_address = ((GLint *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform1ivARB(location, count, values_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glUniform4fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform4fARB - (JNIEnv * env, jclass clazz, jint location, jfloat v0, jfloat v1, jfloat v2, jfloat v3) -{ - glUniform4fARB(location, v0, v1, v2, v3); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform4fvARB(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLfloat *values_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform4fvARB(location, count, values_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glUniform1iARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform1iARB - (JNIEnv * env, jclass clazz, jint location, jint v0) -{ - glUniform1iARB(location, v0); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform3fvARB(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLfloat *values_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform3fvARB(location, count, values_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glUniform2iARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform2iARB - (JNIEnv * env, jclass clazz, jint location, jint v0, jint v1) -{ - glUniform2iARB(location, v0, v1); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform2fvARB(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLfloat *values_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform2fvARB(location, count, values_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glUniform3iARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform3iARB - (JNIEnv * env, jclass clazz, jint location, jint v0, jint v1, jint v2) -{ - glUniform3iARB(location, v0, v1, v2); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform1fvARB(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLfloat *values_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform1fvARB(location, count, values_address); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: glUniform4iARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform4iARB - (JNIEnv * env, jclass clazz, jint location, jint v0, jint v1, jint v2, jint v3) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform4iARB(JNIEnv *env, jclass clazz, jint location, jint v0, jint v1, jint v2, jint v3) { glUniform4iARB(location, v0, v1, v2, v3); - } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniform1fvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform1fvARB - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLfloat *values_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform1fvARB(location, count, values_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform3iARB(JNIEnv *env, jclass clazz, jint location, jint v0, jint v1, jint v2) { + glUniform3iARB(location, v0, v1, v2); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniform2fvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform2fvARB - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLfloat *values_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform2fvARB(location, count, values_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform2iARB(JNIEnv *env, jclass clazz, jint location, jint v0, jint v1) { + glUniform2iARB(location, v0, v1); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniform3fvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform3fvARB - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLfloat *values_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform3fvARB(location, count, values_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform1iARB(JNIEnv *env, jclass clazz, jint location, jint v0) { + glUniform1iARB(location, v0); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniform4fvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform4fvARB - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLfloat *values_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform4fvARB(location, count, values_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform4fARB(JNIEnv *env, jclass clazz, jint location, jfloat v0, jfloat v1, jfloat v2, jfloat v3) { + glUniform4fARB(location, v0, v1, v2, v3); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniform1ivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform1ivARB - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLint *values_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform1ivARB(location, count, values_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform3fARB(JNIEnv *env, jclass clazz, jint location, jfloat v0, jfloat v1, jfloat v2) { + glUniform3fARB(location, v0, v1, v2); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniform2ivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform2ivARB - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLint *values_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform2ivARB(location, count, values_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform2fARB(JNIEnv *env, jclass clazz, jint location, jfloat v0, jfloat v1) { + glUniform2fARB(location, v0, v1); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniform3ivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform3ivARB - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLint *values_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform3ivARB(location, count, values_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUniform1fARB(JNIEnv *env, jclass clazz, jint location, jfloat v0) { + glUniform1fARB(location, v0); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniform4ivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform4ivARB - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLint *values_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform4ivARB(location, count, values_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glValidateProgramARB(JNIEnv *env, jclass clazz, jint programObj) { + glValidateProgramARB(programObj); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniformMatrix2fvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix2fvARB - (JNIEnv * env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matricesOffset) -{ - GLfloat *matrices_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, matrices) + matricesOffset; - glUniformMatrix2fvARB(location, count, transpose, matrices_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glUseProgramObjectARB(JNIEnv *env, jclass clazz, jint programObj) { + glUseProgramObjectARB(programObj); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniformMatrix3fvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix3fvARB - (JNIEnv * env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matricesOffset) -{ - GLfloat *matrices_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, matrices) + matricesOffset; - glUniformMatrix3fvARB(location, count, transpose, matrices_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glLinkProgramARB(JNIEnv *env, jclass clazz, jint programObj) { + glLinkProgramARB(programObj); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglUniformMatrix4fvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix4fvARB - (JNIEnv * env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matricesOffset) -{ - GLfloat *matrices_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, matrices) + matricesOffset; - glUniformMatrix4fvARB(location, count, transpose, matrices_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glAttachObjectARB(JNIEnv *env, jclass clazz, jint containerObj, jint obj) { + glAttachObjectARB(containerObj, obj); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglGetObjectParameterfvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetObjectParameterfvARB - (JNIEnv * env, jclass clazz, jint obj, jint pname, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetObjectParameterfvARB(obj, pname, params_ptr); - +static jint JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glCreateProgramObjectARB(JNIEnv *env, jclass clazz) { + GLhandleARB __result = glCreateProgramObjectARB(); + return __result; } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglGetObjectParameterivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetObjectParameterivARB - (JNIEnv * env, jclass clazz, jint obj, jint pname, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetObjectParameterivARB(obj, pname, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glCompileShaderARB(JNIEnv *env, jclass clazz, jint shaderObj) { + glCompileShaderARB(shaderObj); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglGetInfoLogARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetInfoLogARB - (JNIEnv * env, jclass clazz, jint obj, jint maxLength, jobject length, jint lengthOffset, jobject infoLog, jint infoLogOffset) -{ - - GLubyte *infoLog_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, infoLog) + infoLogOffset; - - if ( length == NULL ) { - glGetInfoLogARB(obj, maxLength, NULL, infoLog_ptr); - } else { - GLsizei *length_ptr = (GLsizei *)(*env)->GetDirectBufferAddress(env, length) + lengthOffset; - glGetInfoLogARB(obj, maxLength, length_ptr, infoLog_ptr); - } - - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglShaderSourceARB(JNIEnv *env, jclass clazz, jint shader, jint count, jobject string, jint string_position, jint length) { + const GLcharARB *string_address = ((const GLcharARB *)(*env)->GetDirectBufferAddress(env, string)) + string_position; + glShaderSourceARB(shader, count, &string_address, &length); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglGetAttachedObjectsARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetAttachedObjectsARB - (JNIEnv * env, jclass clazz, jint containerObj, jint maxCount, jobject count, jint countOffset, jobject obj, jint objOffset) -{ - - GLuint *obj_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, obj) + objOffset; - - if ( count == NULL ) { - glGetAttachedObjectsARB(containerObj, maxCount, NULL, obj_ptr); - } else { - GLsizei *count_ptr = (GLsizei *)(*env)->GetDirectBufferAddress(env, count) + countOffset; - glGetAttachedObjectsARB(containerObj, maxCount, count_ptr, obj_ptr); - } - - +static jint JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glCreateShaderObjectARB(JNIEnv *env, jclass clazz, jint shaderType) { + GLhandleARB __result = glCreateShaderObjectARB(shaderType); + return __result; } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglGetUniformLocationARB - */ -static jint JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformLocationARB - (JNIEnv * env, jclass clazz, jint programObj, jobject name, jint nameOffset) -{ - GLubyte *name_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - GLuint result = glGetUniformLocationARB(programObj, name_ptr); - - return result; +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glDetachObjectARB(JNIEnv *env, jclass clazz, jint containerObj, jint attachedObj) { + glDetachObjectARB(containerObj, attachedObj); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglGetActiveUniformARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetActiveUniformARB - (JNIEnv * env, jclass clazz, jint programObj, jint index, jint maxLength, jobject length, jint lengthOffset, jobject size, jint sizeOffset, jobject type, jint typeOffset, jobject name, jint nameOffset) -{ - - GLint *size_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, size) + sizeOffset; - GLenum *type_ptr = (GLenum *)(*env)->GetDirectBufferAddress(env, type) + typeOffset; - GLcharARB *name_ptr = (GLcharARB *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - - if ( length == NULL ) { - glGetActiveUniformARB(programObj, index, maxLength, (GLsizei *)NULL, size_ptr, type_ptr, name_ptr); - } else { - GLsizei *length_ptr = (GLsizei *)(*env)->GetDirectBufferAddress(env, length) + lengthOffset; - glGetActiveUniformARB(programObj, index, maxLength, length_ptr, size_ptr, type_ptr, name_ptr); - } - - +static jint JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glGetHandleARB(JNIEnv *env, jclass clazz, jint pname) { + GLhandleARB __result = glGetHandleARB(pname); + return __result; } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglGetUniformfvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformfvARB - (JNIEnv * env, jclass clazz, jint programObj, jint location, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetUniformfvARB(programObj, location, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_glDeleteObjectARB(JNIEnv *env, jclass clazz, jint obj) { + glDeleteObjectARB(obj); } -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglGetUniformivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformivARB - (JNIEnv * env, jclass clazz, jint programObj, jint location, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetUniformivARB(programObj, location, params_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBShaderObjects - * Method: nglGetShaderSourceARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_nglGetShaderSourceARB - (JNIEnv * env, jclass clazz, jint obj, jint maxLength, jobject length, jint lengthOffset, jobject source, jint sourceOffset) -{ - GLubyte *source_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, source) + sourceOffset; - - if ( length == NULL ) { - glGetShaderSourceARB(obj, maxLength, NULL, source_ptr); - } else { - GLint *length_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, length) + lengthOffset; - glGetShaderSourceARB(obj, maxLength, length_ptr, source_ptr); - } - - -} - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBShaderObjects_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glDeleteObjectARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glDeleteObjectARB, "glDeleteObjectARB", (void*)&glDeleteObjectARB}, - {"glGetHandleARB", "(I)I", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glGetHandleARB, "glGetHandleARB", (void*)&glGetHandleARB}, - {"glDetachObjectARB", "(II)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glDetachObjectARB, "glDetachObjectARB", (void*)&glDetachObjectARB}, - {"glCreateShaderObjectARB", "(I)I", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glCreateShaderObjectARB, "glCreateShaderObjectARB", (void*)&glCreateShaderObjectARB}, - {"initShaderSource", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_initShaderSource, NULL, NULL}, - {"setShaderString", "(ILjava/nio/ByteBuffer;II)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_setShaderString, NULL, NULL}, - {"nglShaderSourceARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglShaderSourceARB, "glShaderSourceARB", (void*)&glShaderSourceARB}, - {"glCompileShaderARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glCompileShaderARB, "glCompileShaderARB", (void*)&glCompileShaderARB}, - {"glCreateProgramObjectARB", "()I", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glCreateProgramObjectARB, "glCreateProgramObjectARB", (void*)&glCreateProgramObjectARB}, - {"glAttachObjectARB", "(II)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glAttachObjectARB, "glAttachObjectARB", (void*)&glAttachObjectARB}, - {"glLinkProgramARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glLinkProgramARB, "glLinkProgramARB", (void*)&glLinkProgramARB}, - {"glUseProgramObjectARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glUseProgramObjectARB, "glUseProgramObjectARB", (void*)&glUseProgramObjectARB}, - {"glValidateProgramARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glValidateProgramARB, "glValidateProgramARB", (void*)&glValidateProgramARB}, - {"glUniform1fARB", "(IF)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform1fARB, "glUniform1fARB", (void*)&glUniform1fARB}, - {"glUniform2fARB", "(IFF)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform2fARB, "glUniform2fARB", (void*)&glUniform2fARB}, - {"glUniform3fARB", "(IFFF)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform3fARB, "glUniform3fARB", (void*)&glUniform3fARB}, - {"glUniform4fARB", "(IFFFF)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform4fARB, "glUniform4fARB", (void*)&glUniform4fARB}, - {"glUniform1iARB", "(II)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform1iARB, "glUniform1iARB", (void*)&glUniform1iARB}, - {"glUniform2iARB", "(III)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform2iARB, "glUniform2iARB", (void*)&glUniform2iARB}, - {"glUniform3iARB", "(IIII)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform3iARB, "glUniform3iARB", (void*)&glUniform3iARB}, - {"glUniform4iARB", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform4iARB, "glUniform4iARB", (void*)&glUniform4iARB}, - {"nglUniform1fvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform1fvARB, "glUniform1fvARB", (void*)&glUniform1fvARB}, - {"nglUniform2fvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform2fvARB, "glUniform2fvARB", (void*)&glUniform2fvARB}, - {"nglUniform3fvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform3fvARB, "glUniform3fvARB", (void*)&glUniform3fvARB}, - {"nglUniform4fvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform4fvARB, "glUniform4fvARB", (void*)&glUniform4fvARB}, - {"nglUniform1ivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform1ivARB, "glUniform1ivARB", (void*)&glUniform1ivARB}, - {"nglUniform2ivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform2ivARB, "glUniform2ivARB", (void*)&glUniform2ivARB}, - {"nglUniform3ivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform3ivARB, "glUniform3ivARB", (void*)&glUniform3ivARB}, - {"nglUniform4ivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform4ivARB, "glUniform4ivARB", (void*)&glUniform4ivARB}, - {"nglUniformMatrix2fvARB", "(IIZLjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix2fvARB, "glUniformMatrix2fvARB", (void*)&glUniformMatrix2fvARB}, - {"nglUniformMatrix3fvARB", "(IIZLjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix3fvARB, "glUniformMatrix3fvARB", (void*)&glUniformMatrix3fvARB}, - {"nglUniformMatrix4fvARB", "(IIZLjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix4fvARB, "glUniformMatrix4fvARB", (void*)&glUniformMatrix4fvARB}, - {"nglGetObjectParameterfvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetObjectParameterfvARB, "glGetObjectParameterfvARB", (void*)&glGetObjectParameterfvARB}, - {"nglGetObjectParameterivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetObjectParameterivARB, "glGetObjectParameterivARB", (void*)&glGetObjectParameterivARB}, - {"nglGetInfoLogARB", "(IILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetInfoLogARB, "glGetInfoLogARB", (void*)&glGetInfoLogARB}, - {"nglGetAttachedObjectsARB", "(IILjava/nio/IntBuffer;ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetAttachedObjectsARB, "glGetAttachedObjectsARB", (void*)&glGetAttachedObjectsARB}, - {"nglGetUniformLocationARB", "(ILjava/nio/ByteBuffer;I)I", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformLocationARB, "glGetUniformLocationARB", (void*)&glGetUniformLocationARB}, - {"nglGetActiveUniformARB", "(IIILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetActiveUniformARB, "glGetActiveUniformARB", (void*)&glGetActiveUniformARB}, - {"nglGetUniformfvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformfvARB, "glGetUniformfvARB", (void*)&glGetUniformfvARB}, - {"nglGetUniformivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformivARB, "glGetUniformivARB", (void*)&glGetUniformivARB}, - {"nglGetShaderSourceARB", "(IILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetShaderSourceARB, "glGetShaderSourceARB", (void*)&glGetShaderSourceARB} + {"nglGetShaderSourceARB", "(IILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetShaderSourceARB, "glGetShaderSourceARB", (void *)&glGetShaderSourceARB}, + {"nglGetUniformivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformivARB, "glGetUniformivARB", (void *)&glGetUniformivARB}, + {"nglGetUniformfvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformfvARB, "glGetUniformfvARB", (void *)&glGetUniformfvARB}, + {"nglGetActiveUniformARB", "(IIILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetActiveUniformARB, "glGetActiveUniformARB", (void *)&glGetActiveUniformARB}, + {"nglGetUniformLocationARB", "(ILjava/nio/ByteBuffer;I)I", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetUniformLocationARB, "glGetUniformLocationARB", (void *)&glGetUniformLocationARB}, + {"nglGetAttachedObjectsARB", "(IILjava/nio/IntBuffer;ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetAttachedObjectsARB, "glGetAttachedObjectsARB", (void *)&glGetAttachedObjectsARB}, + {"nglGetInfoLogARB", "(IILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetInfoLogARB, "glGetInfoLogARB", (void *)&glGetInfoLogARB}, + {"nglGetObjectParameterivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetObjectParameterivARB, "glGetObjectParameterivARB", (void *)&glGetObjectParameterivARB}, + {"nglGetObjectParameterfvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglGetObjectParameterfvARB, "glGetObjectParameterfvARB", (void *)&glGetObjectParameterfvARB}, + {"nglUniformMatrix4fvARB", "(IIZLjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix4fvARB, "glUniformMatrix4fvARB", (void *)&glUniformMatrix4fvARB}, + {"nglUniformMatrix3fvARB", "(IIZLjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix3fvARB, "glUniformMatrix3fvARB", (void *)&glUniformMatrix3fvARB}, + {"nglUniformMatrix2fvARB", "(IIZLjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniformMatrix2fvARB, "glUniformMatrix2fvARB", (void *)&glUniformMatrix2fvARB}, + {"nglUniform4ivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform4ivARB, "glUniform4ivARB", (void *)&glUniform4ivARB}, + {"nglUniform3ivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform3ivARB, "glUniform3ivARB", (void *)&glUniform3ivARB}, + {"nglUniform2ivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform2ivARB, "glUniform2ivARB", (void *)&glUniform2ivARB}, + {"nglUniform1ivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform1ivARB, "glUniform1ivARB", (void *)&glUniform1ivARB}, + {"nglUniform4fvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform4fvARB, "glUniform4fvARB", (void *)&glUniform4fvARB}, + {"nglUniform3fvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform3fvARB, "glUniform3fvARB", (void *)&glUniform3fvARB}, + {"nglUniform2fvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform2fvARB, "glUniform2fvARB", (void *)&glUniform2fvARB}, + {"nglUniform1fvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglUniform1fvARB, "glUniform1fvARB", (void *)&glUniform1fvARB}, + {"glUniform4iARB", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform4iARB, "glUniform4iARB", (void *)&glUniform4iARB}, + {"glUniform3iARB", "(IIII)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform3iARB, "glUniform3iARB", (void *)&glUniform3iARB}, + {"glUniform2iARB", "(III)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform2iARB, "glUniform2iARB", (void *)&glUniform2iARB}, + {"glUniform1iARB", "(II)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform1iARB, "glUniform1iARB", (void *)&glUniform1iARB}, + {"glUniform4fARB", "(IFFFF)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform4fARB, "glUniform4fARB", (void *)&glUniform4fARB}, + {"glUniform3fARB", "(IFFF)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform3fARB, "glUniform3fARB", (void *)&glUniform3fARB}, + {"glUniform2fARB", "(IFF)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform2fARB, "glUniform2fARB", (void *)&glUniform2fARB}, + {"glUniform1fARB", "(IF)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glUniform1fARB, "glUniform1fARB", (void *)&glUniform1fARB}, + {"glValidateProgramARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glValidateProgramARB, "glValidateProgramARB", (void *)&glValidateProgramARB}, + {"glUseProgramObjectARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glUseProgramObjectARB, "glUseProgramObjectARB", (void *)&glUseProgramObjectARB}, + {"glLinkProgramARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glLinkProgramARB, "glLinkProgramARB", (void *)&glLinkProgramARB}, + {"glAttachObjectARB", "(II)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glAttachObjectARB, "glAttachObjectARB", (void *)&glAttachObjectARB}, + {"glCreateProgramObjectARB", "()I", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glCreateProgramObjectARB, "glCreateProgramObjectARB", (void *)&glCreateProgramObjectARB}, + {"glCompileShaderARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glCompileShaderARB, "glCompileShaderARB", (void *)&glCompileShaderARB}, + {"nglShaderSourceARB", "(IILjava/nio/ByteBuffer;II)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_nglShaderSourceARB, "glShaderSourceARB", (void *)&glShaderSourceARB}, + {"glCreateShaderObjectARB", "(I)I", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glCreateShaderObjectARB, "glCreateShaderObjectARB", (void *)&glCreateShaderObjectARB}, + {"glDetachObjectARB", "(II)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glDetachObjectARB, "glDetachObjectARB", (void *)&glDetachObjectARB}, + {"glGetHandleARB", "(I)I", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glGetHandleARB, "glGetHandleARB", (void *)&glGetHandleARB}, + {"glDeleteObjectARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBShaderObjects_glDeleteObjectARB, "glDeleteObjectARB", (void *)&glDeleteObjectARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBTextureCompression.c b/src/native/common/arb/org_lwjgl_opengl_ARBTextureCompression.c index eead76d5..d4a9ffb9 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBTextureCompression.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBTextureCompression.c @@ -1,227 +1,111 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBTextureCompression -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glCompressedTexImage1DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexImage2DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexImage3DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage1DARBPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage2DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage3DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glGetCompressedTexImageARBPROC) (GLenum target, GLint lod, GLvoid *img ); +typedef void (APIENTRY *glGetCompressedTexImageARBPROC) (GLenum target, GLint lod, GLvoid * pImg); +typedef void (APIENTRY *glCompressedTexSubImage3DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid * pData); +typedef void (APIENTRY *glCompressedTexSubImage2DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * pData); +typedef void (APIENTRY *glCompressedTexSubImage1DARBPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid * pData); +typedef void (APIENTRY *glCompressedTexImage3DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * pData); +typedef void (APIENTRY *glCompressedTexImage2DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * pData); +typedef void (APIENTRY *glCompressedTexImage1DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid * pData); -static glCompressedTexImage3DARBPROC glCompressedTexImage3DARB; -static glCompressedTexImage2DARBPROC glCompressedTexImage2DARB; -static glCompressedTexImage1DARBPROC glCompressedTexImage1DARB; +static glGetCompressedTexImageARBPROC glGetCompressedTexImageARB; static glCompressedTexSubImage3DARBPROC glCompressedTexSubImage3DARB; static glCompressedTexSubImage2DARBPROC glCompressedTexSubImage2DARB; static glCompressedTexSubImage1DARBPROC glCompressedTexSubImage1DARB; -static glGetCompressedTexImageARBPROC glGetCompressedTexImageARB; +static glCompressedTexImage3DARBPROC glCompressedTexImage3DARB; +static glCompressedTexImage2DARBPROC glCompressedTexImage2DARB; +static glCompressedTexImage1DARBPROC glCompressedTexImage1DARB; -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexImage1DARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage1DARB - (JNIEnv * env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint border, jint imageSize, jobject pData, jint pData_offset) -{ - GLvoid *pData_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pData) + pData_offset); - glCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData_ptr); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglGetCompressedTexImageARB(JNIEnv *env, jclass clazz, jint target, jint lod, jobject pImg, jint pImg_position) { + GLvoid *pImg_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pImg)) + pImg_position)); + glGetCompressedTexImageARB(target, lod, pImg_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexImage1DARBBO - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage1DARBBO - (JNIEnv * env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint border, jint imageSize, jint buffer_offset) -{ - glCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglGetCompressedTexImageARBBO(JNIEnv *env, jclass clazz, jint target, jint lod, jint pImg_buffer_offset) { + GLvoid *pImg_address = ((GLvoid *)offsetToPointer(pImg_buffer_offset)); + glGetCompressedTexImageARB(target, lod, pImg_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexImage2DARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage2DARB - (JNIEnv * env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint imageSize, jobject pData, jint pData_offset) -{ - GLvoid *pData_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pData) + pData_offset); - glCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData_ptr); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage3DARB(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint imageSize, jobject pData, jint pData_position) { + const GLvoid *pData_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pData)) + pData_position)); + glCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexImage2DARBBO - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage2DARBBO - (JNIEnv * env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint imageSize, jint buffer_offset) -{ - glCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage3DARBBO(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint imageSize, jint pData_buffer_offset) { + const GLvoid *pData_address = ((const GLvoid *)offsetToPointer(pData_buffer_offset)); + glCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexImage3DARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage3DARB - (JNIEnv * env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint imageSize, jobject pData, jint pData_offset) -{ - GLvoid *pData_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pData) + pData_offset); - glCompressedTexImage3DARB(target, level, internalformat, width, height, depth, border, imageSize, pData_ptr); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage2DARB(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint imageSize, jobject pData, jint pData_position) { + const GLvoid *pData_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pData)) + pData_position)); + glCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, format, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexImage3DARBBO - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage3DARBBO - (JNIEnv * env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint imageSize, jint buffer_offset) -{ - glCompressedTexImage3DARB(target, level, internalformat, width, height, depth, border, imageSize, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage2DARBBO(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint imageSize, jint pData_buffer_offset) { + const GLvoid *pData_address = ((const GLvoid *)offsetToPointer(pData_buffer_offset)); + glCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, format, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexSubImage1DARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage1DARB - (JNIEnv * env, jclass clazz, jint target, jint level, jint xoffset, jint width, jint border, jint imageSize, jobject pData, jint pData_offset) -{ - GLvoid *pData_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pData) + pData_offset); - glCompressedTexSubImage1DARB(target, level, xoffset, width, border, imageSize, pData_ptr); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage1DARB(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint width, jint format, jint imageSize, jobject pData, jint pData_position) { + const GLvoid *pData_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pData)) + pData_position)); + glCompressedTexSubImage1DARB(target, level, xoffset, width, format, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexSubImage1DARBBO - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage1DARBBO - (JNIEnv * env, jclass clazz, jint target, jint level, jint xoffset, jint width, jint border, jint imageSize, jint buffer_offset) -{ - glCompressedTexSubImage1DARB(target, level, xoffset, width, border, imageSize, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage1DARBBO(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint width, jint format, jint imageSize, jint pData_buffer_offset) { + const GLvoid *pData_address = ((const GLvoid *)offsetToPointer(pData_buffer_offset)); + glCompressedTexSubImage1DARB(target, level, xoffset, width, format, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexSubImage2DARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage2DARB - (JNIEnv * env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint border, jint imageSize, jobject pData, jint pData_offset) -{ - GLvoid *pData_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pData) + pData_offset); - glCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, border, imageSize, pData_ptr); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage3DARB(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint imageSize, jobject pData, jint pData_position) { + const GLvoid *pData_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pData)) + pData_position)); + glCompressedTexImage3DARB(target, level, internalformat, width, height, depth, border, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexSubImage2DARBBO - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage2DARBBO - (JNIEnv * env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint border, jint imageSize, jint buffer_offset) -{ - glCompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, border, imageSize, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage3DARBBO(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint imageSize, jint pData_buffer_offset) { + const GLvoid *pData_address = ((const GLvoid *)offsetToPointer(pData_buffer_offset)); + glCompressedTexImage3DARB(target, level, internalformat, width, height, depth, border, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexSubImage3DARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage3DARB - (JNIEnv * env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint border, jint imageSize, jobject pData, jint pData_offset) -{ - GLvoid *pData_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pData) + pData_offset); - glCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, border, imageSize, pData_ptr); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage2DARB(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint imageSize, jobject pData, jint pData_position) { + const GLvoid *pData_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pData)) + pData_position)); + glCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglCompressedTexSubImage3DARBBO - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage3DARBBO - (JNIEnv * env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint border, jint imageSize, jint buffer_offset) -{ - glCompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, border, imageSize, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage2DARBBO(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint imageSize, jint pData_buffer_offset) { + const GLvoid *pData_address = ((const GLvoid *)offsetToPointer(pData_buffer_offset)); + glCompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglGetCompressedTexImageARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglGetCompressedTexImageARB - (JNIEnv * env, jclass clazz, jint target, jint lod, jobject pImg, jint pImg_offset) -{ - GLvoid *pImg_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pImg) + pImg_offset); - glGetCompressedTexImageARB(target, lod, pImg_ptr); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage1DARB(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint border, jint imageSize, jobject pData, jint pData_position) { + const GLvoid *pData_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pData)) + pData_position)); + glCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData_address); } -/* - * Class: org.lwjgl.opengl.ARBTextureCompression - * Method: nglGetCompressedTexImageARBBO - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglGetCompressedTexImageARBBO - (JNIEnv * env, jclass clazz, jint target, jint lod, jint buffer_offset) -{ - glGetCompressedTexImageARB(target, lod, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage1DARBBO(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint border, jint imageSize, jint pData_buffer_offset) { + const GLvoid *pData_address = ((const GLvoid *)offsetToPointer(pData_buffer_offset)); + glCompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, pData_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBTextureCompression_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglCompressedTexImage1DARB", "(IIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage1DARB, "glCompressedTexImage1DARB", (void*)&glCompressedTexImage1DARB}, - {"nglCompressedTexImage1DARBBO", "(IIIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage1DARBBO, NULL, NULL}, - {"nglCompressedTexImage2DARB", "(IIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage2DARB, "glCompressedTexImage2DARB", (void*)&glCompressedTexImage2DARB}, - {"nglCompressedTexImage2DARBBO", "(IIIIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage2DARBBO, NULL, NULL}, - {"nglCompressedTexImage3DARB", "(IIIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage3DARB, "glCompressedTexImage3DARB", (void*)&glCompressedTexImage3DARB}, - {"nglCompressedTexImage3DARBBO", "(IIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage3DARBBO, NULL, NULL}, - {"nglCompressedTexSubImage1DARB", "(IIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage1DARB, "glCompressedTexSubImage1DARB", (void*)&glCompressedTexSubImage1DARB}, - {"nglCompressedTexSubImage1DARBBO", "(IIIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage1DARBBO, NULL, NULL}, - {"nglCompressedTexSubImage2DARB", "(IIIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage2DARB, "glCompressedTexSubImage2DARB", (void*)&glCompressedTexSubImage2DARB}, - {"nglCompressedTexSubImage2DARBBO", "(IIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage2DARBBO, NULL, NULL}, - {"nglCompressedTexSubImage3DARB", "(IIIIIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage3DARB, "glCompressedTexSubImage3DARB", (void*)&glCompressedTexSubImage3DARB}, - {"nglCompressedTexSubImage3DARBBO", "(IIIIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage3DARBBO, NULL, NULL}, - {"nglGetCompressedTexImageARB", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglGetCompressedTexImageARB, "glGetCompressedTexImageARB", (void*)&glGetCompressedTexImageARB}, - {"nglGetCompressedTexImageARBBO", "(III)V", (void*)&Java_org_lwjgl_opengl_ARBTextureCompression_nglGetCompressedTexImageARBBO, NULL, NULL} + {"nglGetCompressedTexImageARB", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglGetCompressedTexImageARB, "glGetCompressedTexImageARB", (void *)&glGetCompressedTexImageARB}, + {"nglGetCompressedTexImageARBBO", "(III)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglGetCompressedTexImageARBBO, "glGetCompressedTexImageARB", (void *)&glGetCompressedTexImageARB}, + {"nglCompressedTexSubImage3DARB", "(IIIIIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage3DARB, "glCompressedTexSubImage3DARB", (void *)&glCompressedTexSubImage3DARB}, + {"nglCompressedTexSubImage3DARBBO", "(IIIIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage3DARBBO, "glCompressedTexSubImage3DARB", (void *)&glCompressedTexSubImage3DARB}, + {"nglCompressedTexSubImage2DARB", "(IIIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage2DARB, "glCompressedTexSubImage2DARB", (void *)&glCompressedTexSubImage2DARB}, + {"nglCompressedTexSubImage2DARBBO", "(IIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage2DARBBO, "glCompressedTexSubImage2DARB", (void *)&glCompressedTexSubImage2DARB}, + {"nglCompressedTexSubImage1DARB", "(IIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage1DARB, "glCompressedTexSubImage1DARB", (void *)&glCompressedTexSubImage1DARB}, + {"nglCompressedTexSubImage1DARBBO", "(IIIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexSubImage1DARBBO, "glCompressedTexSubImage1DARB", (void *)&glCompressedTexSubImage1DARB}, + {"nglCompressedTexImage3DARB", "(IIIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage3DARB, "glCompressedTexImage3DARB", (void *)&glCompressedTexImage3DARB}, + {"nglCompressedTexImage3DARBBO", "(IIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage3DARBBO, "glCompressedTexImage3DARB", (void *)&glCompressedTexImage3DARB}, + {"nglCompressedTexImage2DARB", "(IIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage2DARB, "glCompressedTexImage2DARB", (void *)&glCompressedTexImage2DARB}, + {"nglCompressedTexImage2DARBBO", "(IIIIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage2DARBBO, "glCompressedTexImage2DARB", (void *)&glCompressedTexImage2DARB}, + {"nglCompressedTexImage1DARB", "(IIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage1DARB, "glCompressedTexImage1DARB", (void *)&glCompressedTexImage1DARB}, + {"nglCompressedTexImage1DARBBO", "(IIIIIII)V", (void *)&Java_org_lwjgl_opengl_ARBTextureCompression_nglCompressedTexImage1DARBBO, "glCompressedTexImage1DARB", (void *)&glCompressedTexImage1DARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif \ No newline at end of file diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBTransposeMatrix.c b/src/native/common/arb/org_lwjgl_opengl_ARBTransposeMatrix.c index 917177ba..494f3f91 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBTransposeMatrix.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBTransposeMatrix.c @@ -1,81 +1,29 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBTransposeMatrix -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glLoadTransposeMatrixfARBPROC) (const GLfloat m[16] ); -typedef void (APIENTRY * glMultTransposeMatrixfARBPROC) (const GLfloat m[16] ); +typedef void (APIENTRY *glMultTransposeMatrixfARBPROC) (GLfloat * pfMtx); +typedef void (APIENTRY *glLoadTransposeMatrixfARBPROC) (GLfloat * pfMtx); -static glLoadTransposeMatrixfARBPROC glLoadTransposeMatrixfARB; static glMultTransposeMatrixfARBPROC glMultTransposeMatrixfARB; +static glLoadTransposeMatrixfARBPROC glLoadTransposeMatrixfARB; -/* - * Class: org.lwjgl.opengl.ARBTransposeMatrix - * Method: nglLoadTransposeMatrixfARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTransposeMatrix_nglLoadTransposeMatrixfARB - (JNIEnv * env, jclass clazz, jobject pfMtx, jint pfMtx_offset) -{ - GLfloat *pfMtx_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfMtx) + pfMtx_offset; - glLoadTransposeMatrixfARB(pfMtx_ptr); +static void JNICALL Java_org_lwjgl_opengl_ARBTransposeMatrix_nglMultTransposeMatrixfARB(JNIEnv *env, jclass clazz, jobject pfMtx, jint pfMtx_position) { + GLfloat *pfMtx_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, pfMtx)) + pfMtx_position; + glMultTransposeMatrixfARB(pfMtx_address); } -/* - * Class: org.lwjgl.opengl.ARBTransposeMatrix - * Method: nglMultTransposeMatrixfARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBTransposeMatrix_nglMultTransposeMatrixfARB - (JNIEnv * env, jclass clazz, jobject pfMtx, jint pfMtx_offset) -{ - GLfloat *pfMtx_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfMtx) + pfMtx_offset; - glMultTransposeMatrixfARB(pfMtx_ptr); +static void JNICALL Java_org_lwjgl_opengl_ARBTransposeMatrix_nglLoadTransposeMatrixfARB(JNIEnv *env, jclass clazz, jobject pfMtx, jint pfMtx_position) { + GLfloat *pfMtx_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, pfMtx)) + pfMtx_position; + glLoadTransposeMatrixfARB(pfMtx_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBTransposeMatrix_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglLoadTransposeMatrixfARB", "(Ljava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBTransposeMatrix_nglLoadTransposeMatrixfARB, "glLoadTransposeMatrixfARB", (void*)&glLoadTransposeMatrixfARB}, - {"nglMultTransposeMatrixfARB", "(Ljava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBTransposeMatrix_nglMultTransposeMatrixfARB, "glMultTransposeMatrixfARB", (void*)&glMultTransposeMatrixfARB} + {"nglMultTransposeMatrixfARB", "(Ljava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBTransposeMatrix_nglMultTransposeMatrixfARB, "glMultTransposeMatrixfARB", (void *)&glMultTransposeMatrixfARB}, + {"nglLoadTransposeMatrixfARB", "(Ljava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBTransposeMatrix_nglLoadTransposeMatrixfARB, "glLoadTransposeMatrixfARB", (void *)&glLoadTransposeMatrixfARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBVertexBlend.c b/src/native/common/arb/org_lwjgl_opengl_ARBVertexBlend.c index 1d3b4310..51b169cd 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBVertexBlend.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBVertexBlend.c @@ -1,199 +1,90 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBVertexBlend -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glWeightbvARBPROC) (GLint size, GLbyte *weights); -typedef void (APIENTRY * glWeightsvARBPROC) (GLint size, GLshort *weights); -typedef void (APIENTRY * glWeightivARBPROC) (GLint size, GLint *weights); -typedef void (APIENTRY * glWeightfvARBPROC) (GLint size, GLfloat *weights); -typedef void (APIENTRY * glWeightubvARBPROC) (GLint size, GLubyte *weights); -typedef void (APIENTRY * glWeightusvARBPROC) (GLint size, GLushort *weights); -typedef void (APIENTRY * glWeightuivARBPROC) (GLint size, GLuint *weights); -typedef void (APIENTRY * glWeightPointerARBPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glVertexBlendARBPROC) (GLint count); +typedef void (APIENTRY *glVertexBlendARBPROC) (GLint count); +typedef void (APIENTRY *glWeightPointerARBPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid * pPointer); +typedef void (APIENTRY *glWeightuivARBPROC) (GLint size, GLuint * pWeights); +typedef void (APIENTRY *glWeightusvARBPROC) (GLint size, GLushort * pWeights); +typedef void (APIENTRY *glWeightubvARBPROC) (GLint size, GLubyte * pWeights); +typedef void (APIENTRY *glWeightfvARBPROC) (GLint size, GLfloat * pWeights); +typedef void (APIENTRY *glWeightivARBPROC) (GLint size, GLint * pWeights); +typedef void (APIENTRY *glWeightsvARBPROC) (GLint size, GLshort * pWeights); +typedef void (APIENTRY *glWeightbvARBPROC) (GLint size, GLbyte * pWeights); -static glWeightbvARBPROC glWeightbvARB; -static glWeightsvARBPROC glWeightsvARB; -static glWeightivARBPROC glWeightivARB; -static glWeightfvARBPROC glWeightfvARB; -static glWeightubvARBPROC glWeightubvARB; -static glWeightusvARBPROC glWeightusvARB; -static glWeightuivARBPROC glWeightuivARB; -static glWeightPointerARBPROC glWeightPointerARB; static glVertexBlendARBPROC glVertexBlendARB; +static glWeightPointerARBPROC glWeightPointerARB; +static glWeightuivARBPROC glWeightuivARB; +static glWeightusvARBPROC glWeightusvARB; +static glWeightubvARBPROC glWeightubvARB; +static glWeightfvARBPROC glWeightfvARB; +static glWeightivARBPROC glWeightivARB; +static glWeightsvARBPROC glWeightsvARB; +static glWeightbvARBPROC glWeightbvARB; -/* - * Class: org.lwjgl.opengl.ARBVertexBlend - * Method: nglWeightbvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightbvARB - (JNIEnv * env, jclass clazz, jint size, jobject pWeights, jint pWeights_offset) -{ - GLbyte *pWeights_ptr = (GLbyte *)(*env)->GetDirectBufferAddress(env, pWeights) + pWeights_offset; - glWeightbvARB(size, pWeights_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexBlend - * Method: nglWeightfvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightfvARB - (JNIEnv * env, jclass clazz, jint size, jobject pfWeights, jint pfWeights_offset) -{ - GLfloat *pfWeights_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfWeights) + pfWeights_offset; - glWeightfvARB(size, pfWeights_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexBlend - * Method: nglWeightivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightivARB - (JNIEnv * env, jclass clazz, jint size, jobject piWeights, jint piWeights_offset) -{ - GLint *piWeights_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piWeights) + piWeights_offset; - glWeightivARB(size, piWeights_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexBlend - * Method: nglWeightsvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightsvARB - (JNIEnv * env, jclass clazz, jint size, jobject psWeights, jint psWeights_offset) -{ - GLshort *psWeights_ptr = (GLshort *)(*env)->GetDirectBufferAddress(env, psWeights) + psWeights_offset; - glWeightsvARB(size, psWeights_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexBlend - * Method: nglWeightubvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightubvARB - (JNIEnv * env, jclass clazz, jint size, jobject pWeights, jint pWeights_offset) -{ - GLubyte *pWeights_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, pWeights) + pWeights_offset; - glWeightubvARB(size, pWeights_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexBlend - * Method: nglWeightuivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightuivARB - (JNIEnv * env, jclass clazz, jint size, jobject piWeights, jint piWeights_offset) -{ - GLuint *piWeights_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, piWeights) + piWeights_offset; - glWeightuivARB(size, piWeights_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexBlend - * Method: nglWeightusvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightusvARB - (JNIEnv * env, jclass clazz, jint size, jobject psWeights, jint psWeights_offset) -{ - GLushort *psWeights_ptr = (GLushort *)(*env)->GetDirectBufferAddress(env, psWeights) + psWeights_offset; - glWeightusvARB(size, psWeights_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexBlend - * Method: nglWeightPointerARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightPointerARB - (JNIEnv * env, jclass clazz, jint size, jint type, jint stride, jobject pPointer, jint pPointer_offset) -{ - GLvoid *pPointer_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pPointer) + pPointer_offset); - glWeightPointerARB(size, type, stride, pPointer_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexBlend - * Method: nglWeightPointerARBVBO - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightPointerARBVBO - (JNIEnv * env, jclass clazz, jint size, jint type, jint stride, jint buffer_offset) -{ - glWeightPointerARB(size, type, stride, (GLvoid *)buffer_offset); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexBlend - * Method: glVertexBlendARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_glVertexBlendARB - (JNIEnv * env, jclass clazz, jint count) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_glVertexBlendARB(JNIEnv *env, jclass clazz, jint count) { glVertexBlendARB(count); - } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightPointerARB(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jobject pPointer, jint pPointer_position) { + const GLvoid *pPointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pPointer)) + pPointer_position)); + glWeightPointerARB(size, type, stride, pPointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightPointerARBBO(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jint pPointer_buffer_offset) { + const GLvoid *pPointer_address = ((const GLvoid *)offsetToPointer(pPointer_buffer_offset)); + glWeightPointerARB(size, type, stride, pPointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightuivARB(JNIEnv *env, jclass clazz, jint size, jobject pWeights, jint pWeights_position) { + GLuint *pWeights_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, pWeights)) + pWeights_position; + glWeightuivARB(size, pWeights_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightusvARB(JNIEnv *env, jclass clazz, jint size, jobject pWeights, jint pWeights_position) { + GLushort *pWeights_address = ((GLushort *)(*env)->GetDirectBufferAddress(env, pWeights)) + pWeights_position; + glWeightusvARB(size, pWeights_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightubvARB(JNIEnv *env, jclass clazz, jint size, jobject pWeights, jint pWeights_position) { + GLubyte *pWeights_address = ((GLubyte *)(*env)->GetDirectBufferAddress(env, pWeights)) + pWeights_position; + glWeightubvARB(size, pWeights_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightfvARB(JNIEnv *env, jclass clazz, jint size, jobject pWeights, jint pWeights_position) { + GLfloat *pWeights_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, pWeights)) + pWeights_position; + glWeightfvARB(size, pWeights_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightivARB(JNIEnv *env, jclass clazz, jint size, jobject pWeights, jint pWeights_position) { + GLint *pWeights_address = ((GLint *)(*env)->GetDirectBufferAddress(env, pWeights)) + pWeights_position; + glWeightivARB(size, pWeights_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightsvARB(JNIEnv *env, jclass clazz, jint size, jobject pWeights, jint pWeights_position) { + GLshort *pWeights_address = ((GLshort *)(*env)->GetDirectBufferAddress(env, pWeights)) + pWeights_position; + glWeightsvARB(size, pWeights_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightbvARB(JNIEnv *env, jclass clazz, jint size, jobject pWeights, jint pWeights_position) { + GLbyte *pWeights_address = ((GLbyte *)(*env)->GetDirectBufferAddress(env, pWeights)) + pWeights_position; + glWeightbvARB(size, pWeights_address); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBVertexBlend_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglWeightbvARB", "(ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightbvARB, "glWeightbvARB", (void*)&glWeightbvARB}, - {"nglWeightfvARB", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightfvARB, "glWeightfvARB", (void*)&glWeightfvARB}, - {"nglWeightivARB", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightivARB, "glWeightivARB", (void*)&glWeightivARB}, - {"nglWeightsvARB", "(ILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightsvARB, "glWeightsvARB", (void*)&glWeightsvARB}, - {"nglWeightubvARB", "(ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightubvARB, "glWeightubvARB", (void*)&glWeightubvARB}, - {"nglWeightuivARB", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightuivARB, "glWeightuivARB", (void*)&glWeightuivARB}, - {"nglWeightusvARB", "(ILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightusvARB, "glWeightusvARB", (void*)&glWeightusvARB}, - {"nglWeightPointerARB", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightPointerARB, "glWeightPointerARB", (void*)&glWeightPointerARB}, - {"nglWeightPointerARBVBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightPointerARBVBO, NULL, NULL}, - {"glVertexBlendARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexBlend_glVertexBlendARB, "glVertexBlendARB", (void*)&glVertexBlendARB} + {"glVertexBlendARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexBlend_glVertexBlendARB, "glVertexBlendARB", (void *)&glVertexBlendARB}, + {"nglWeightPointerARB", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightPointerARB, "glWeightPointerARB", (void *)&glWeightPointerARB}, + {"nglWeightPointerARBBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightPointerARBBO, "glWeightPointerARB", (void *)&glWeightPointerARB}, + {"nglWeightuivARB", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightuivARB, "glWeightuivARB", (void *)&glWeightuivARB}, + {"nglWeightusvARB", "(ILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightusvARB, "glWeightusvARB", (void *)&glWeightusvARB}, + {"nglWeightubvARB", "(ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightubvARB, "glWeightubvARB", (void *)&glWeightubvARB}, + {"nglWeightfvARB", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightfvARB, "glWeightfvARB", (void *)&glWeightfvARB}, + {"nglWeightivARB", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightivARB, "glWeightivARB", (void *)&glWeightivARB}, + {"nglWeightsvARB", "(ILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightsvARB, "glWeightsvARB", (void *)&glWeightsvARB}, + {"nglWeightbvARB", "(ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexBlend_nglWeightbvARB, "glWeightbvARB", (void *)&glWeightbvARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBVertexProgram.c b/src/native/common/arb/org_lwjgl_opengl_ARBVertexProgram.c index d5ea833c..c5334f6e 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBVertexProgram.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBVertexProgram.c @@ -1,304 +1,129 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBVertexProgram -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef void (APIENTRY * glVertexAttrib1sARBPROC) (GLuint index, GLshort x); -typedef void (APIENTRY * glVertexAttrib1fARBPROC) (GLuint index, GLfloat x); -typedef void (APIENTRY * glVertexAttrib2sARBPROC) (GLuint index, GLshort x, GLshort y); -typedef void (APIENTRY * glVertexAttrib2fARBPROC) (GLuint index, GLfloat x, GLfloat y); -typedef void (APIENTRY * glVertexAttrib3sARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glVertexAttrib3fARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glVertexAttrib4sARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (APIENTRY * glVertexAttrib4fARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glVertexAttrib4NubARBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); -typedef void (APIENTRY * glVertexAttrib1svARBPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib1fvARBPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib2svARBPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib2fvARBPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib2dvARBPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib3svARBPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib3fvARBPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib3dvARBPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib4bvARBPROC) (GLuint index, const GLbyte *v); -typedef void (APIENTRY * glVertexAttrib4svARBPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib4ivARBPROC) (GLuint index, const GLint *v); -typedef void (APIENTRY * glVertexAttrib4ubvARBPROC) (GLuint index, const GLubyte *v); -typedef void (APIENTRY * glVertexAttrib4usvARBPROC) (GLuint index, const GLushort *v); -typedef void (APIENTRY * glVertexAttrib4uivARBPROC) (GLuint index, const GLuint *v); -typedef void (APIENTRY * glVertexAttrib4fvARBPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib4dvARBPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib4NbvARBPROC) (GLuint index, const GLbyte *v); -typedef void (APIENTRY * glVertexAttrib4NsvARBPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib4NivARBPROC) (GLuint index, const GLint *v); -typedef void (APIENTRY * glVertexAttrib4NubvARBPROC) (GLuint index, const GLubyte *v); -typedef void (APIENTRY * glVertexAttrib4NusvARBPROC) (GLuint index, const GLushort *v); -typedef void (APIENTRY * glVertexAttrib4NuivARBPROC) (GLuint index, const GLuint *v); -typedef void (APIENTRY * glVertexAttribPointerARBPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glEnableVertexAttribArrayARBPROC) (GLuint index); -typedef void (APIENTRY * glDisableVertexAttribArrayARBPROC) (GLuint index); -typedef void (APIENTRY * glGetVertexAttribdvARBPROC) (GLuint index, GLenum pname, GLdouble *params); -typedef void (APIENTRY * glGetVertexAttribfvARBPROC) (GLuint index, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetVertexAttribivARBPROC) (GLuint index, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetVertexAttribPointervARBPROC) (GLuint index, GLenum pname, GLvoid **pointer); +typedef void (APIENTRY *glGetVertexAttribPointervARBPROC) (GLuint index, GLenum pname, GLvoid ** result); +typedef void (APIENTRY *glGetVertexAttribivARBPROC) (GLuint index, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetVertexAttribfvARBPROC) (GLuint index, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glDisableVertexAttribArrayARBPROC) (GLuint index); +typedef void (APIENTRY *glEnableVertexAttribArrayARBPROC) (GLuint index); +typedef void (APIENTRY *glVertexAttribPointerARBPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid * buffer); +typedef void (APIENTRY *glVertexAttrib4NubARBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); +typedef void (APIENTRY *glVertexAttrib4fARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY *glVertexAttrib4sARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (APIENTRY *glVertexAttrib3fARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glVertexAttrib3sARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY *glVertexAttrib2fARBPROC) (GLuint index, GLfloat x, GLfloat y); +typedef void (APIENTRY *glVertexAttrib2sARBPROC) (GLuint index, GLshort x, GLshort y); +typedef void (APIENTRY *glVertexAttrib1fARBPROC) (GLuint index, GLfloat x); +typedef void (APIENTRY *glVertexAttrib1sARBPROC) (GLuint index, GLshort x); -static glVertexAttrib1sARBPROC glVertexAttrib1sARB; -static glVertexAttrib1fARBPROC glVertexAttrib1fARB; -static glVertexAttrib2sARBPROC glVertexAttrib2sARB; -static glVertexAttrib2fARBPROC glVertexAttrib2fARB; -static glVertexAttrib3sARBPROC glVertexAttrib3sARB; -static glVertexAttrib3fARBPROC glVertexAttrib3fARB; -static glVertexAttrib4sARBPROC glVertexAttrib4sARB; -static glVertexAttrib4fARBPROC glVertexAttrib4fARB; -static glVertexAttrib4NubARBPROC glVertexAttrib4NubARB; -static glVertexAttribPointerARBPROC glVertexAttribPointerARB; -static glEnableVertexAttribArrayARBPROC glEnableVertexAttribArrayARB; -static glDisableVertexAttribArrayARBPROC glDisableVertexAttribArrayARB; -static glGetVertexAttribfvARBPROC glGetVertexAttribfvARB; -static glGetVertexAttribivARBPROC glGetVertexAttribivARB; static glGetVertexAttribPointervARBPROC glGetVertexAttribPointervARB; +static glGetVertexAttribivARBPROC glGetVertexAttribivARB; +static glGetVertexAttribfvARBPROC glGetVertexAttribfvARB; +static glDisableVertexAttribArrayARBPROC glDisableVertexAttribArrayARB; +static glEnableVertexAttribArrayARBPROC glEnableVertexAttribArrayARB; +static glVertexAttribPointerARBPROC glVertexAttribPointerARB; +static glVertexAttrib4NubARBPROC glVertexAttrib4NubARB; +static glVertexAttrib4fARBPROC glVertexAttrib4fARB; +static glVertexAttrib4sARBPROC glVertexAttrib4sARB; +static glVertexAttrib3fARBPROC glVertexAttrib3fARB; +static glVertexAttrib3sARBPROC glVertexAttrib3sARB; +static glVertexAttrib2fARBPROC glVertexAttrib2fARB; +static glVertexAttrib2sARBPROC glVertexAttrib2sARB; +static glVertexAttrib1fARBPROC glVertexAttrib1fARB; +static glVertexAttrib1sARBPROC glVertexAttrib1sARB; -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glVertexAttrib1sARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib1sARB - (JNIEnv * env, jclass clazz, jint index, jshort x) -{ - glVertexAttrib1sARB(index, x); - +static jobject JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_nglGetVertexAttribPointervARB(JNIEnv *env, jclass clazz, jint index, jint pname, jint result_size) { + GLvoid * __result; + glGetVertexAttribPointervARB(index, pname, &__result); + return safeNewBuffer(env, __result, result_size); } -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glVertexAttrib1fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib1fARB - (JNIEnv * env, jclass clazz, jint index, jfloat x) -{ - glVertexAttrib1fARB(index, x); - +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_nglGetVertexAttribivARB(JNIEnv *env, jclass clazz, jint index, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetVertexAttribivARB(index, pname, params_address); } -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glVertexAttrib2sARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib2sARB - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y) -{ - glVertexAttrib2sARB(index, x, y); - +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_nglGetVertexAttribfvARB(JNIEnv *env, jclass clazz, jint index, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetVertexAttribfvARB(index, pname, params_address); } -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glVertexAttrib2fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib2fARB - (JNIEnv * env, jclass clazz, jint index, jfloat x, jfloat y) -{ - glVertexAttrib2fARB(index, x, y); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glVertexAttrib3sARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib3sARB - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y, jshort z) -{ - glVertexAttrib3sARB(index, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glVertexAttrib3fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib3fARB - (JNIEnv * env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z) -{ - glVertexAttrib3fARB(index, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glVertexAttrib4sARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4sARB - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y, jshort z, jshort w) -{ - glVertexAttrib4sARB(index, x, y, z, w); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glVertexAttrib4fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4fARB - (JNIEnv * env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z, jfloat w) -{ - glVertexAttrib4fARB(index, x, y, z, w); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glVertexAttrib4NubARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4NubARB - (JNIEnv * env, jclass clazz, jint index, jbyte x, jbyte y, jbyte z, jbyte w) -{ - glVertexAttrib4NubARB(index, x, y, z, w); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: nglVertexAttribPointerARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_nglVertexAttribPointerARB - (JNIEnv * env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jobject buffer, jint bufferOffset) -{ - GLvoid *buffer_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, buffer) + bufferOffset); - glVertexAttribPointerARB(index, size, type, normalized, stride, buffer_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: nglVertexAttribPointerARBVBO - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_nglVertexAttribPointerARBVBO - (JNIEnv * env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jint bufferOffset) -{ - glVertexAttribPointerARB(index, size, type, normalized, stride, (GLvoid *)bufferOffset); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glEnableVertexAttribArrayARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glEnableVertexAttribArrayARB - (JNIEnv * env, jclass clazz, jint index) -{ - glEnableVertexAttribArrayARB(index); - -} - -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glDisableVertexAttribArrayARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glDisableVertexAttribArrayARB - (JNIEnv * env, jclass clazz, jint index) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glDisableVertexAttribArrayARB(JNIEnv *env, jclass clazz, jint index) { glDisableVertexAttribArrayARB(index); - } -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: nglGetVertexAttribfvARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_nglGetVertexAttribfvARB - (JNIEnv * env, jclass clazz, jint index, jint pname, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetVertexAttribfvARB(index, pname, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glEnableVertexAttribArrayARB(JNIEnv *env, jclass clazz, jint index) { + glEnableVertexAttribArrayARB(index); } -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: nglGetVertexAttribivARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_nglGetVertexAttribivARB - (JNIEnv * env, jclass clazz, jint index, jint pname, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetVertexAttribivARB(index, pname, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_nglVertexAttribPointerARB(JNIEnv *env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jobject buffer, jint buffer_position) { + const GLvoid *buffer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, buffer)) + buffer_position)); + glVertexAttribPointerARB(index, size, type, normalized, stride, buffer_address); } -/* - * Class: org.lwjgl.opengl.ARBVertexProgram - * Method: glGetVertexAttribPointerARB - */ -static jobject JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glGetVertexAttribPointerARB - (JNIEnv * env, jclass clazz, jint index, jint pname, jint size) -{ - void *address; - glGetVertexAttribPointervARB((GLuint)index, (GLuint)pname, &address); - - return safeNewBuffer(env, address, size); +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_nglVertexAttribPointerARBBO(JNIEnv *env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jint buffer_buffer_offset) { + const GLvoid *buffer_address = ((const GLvoid *)offsetToPointer(buffer_buffer_offset)); + glVertexAttribPointerARB(index, size, type, normalized, stride, buffer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4NubARB(JNIEnv *env, jclass clazz, jint index, jbyte x, jbyte y, jbyte z, jbyte w) { + glVertexAttrib4NubARB(index, x, y, z, w); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4fARB(JNIEnv *env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z, jfloat w) { + glVertexAttrib4fARB(index, x, y, z, w); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4sARB(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y, jshort z, jshort w) { + glVertexAttrib4sARB(index, x, y, z, w); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib3fARB(JNIEnv *env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z) { + glVertexAttrib3fARB(index, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib3sARB(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y, jshort z) { + glVertexAttrib3sARB(index, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib2fARB(JNIEnv *env, jclass clazz, jint index, jfloat x, jfloat y) { + glVertexAttrib2fARB(index, x, y); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib2sARB(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y) { + glVertexAttrib2sARB(index, x, y); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib1fARB(JNIEnv *env, jclass clazz, jint index, jfloat x) { + glVertexAttrib1fARB(index, x); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib1sARB(JNIEnv *env, jclass clazz, jint index, jshort x) { + glVertexAttrib1sARB(index, x); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBVertexProgram_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glVertexAttrib1sARB", "(IS)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib1sARB, "glVertexAttrib1sARB", (void*)&glVertexAttrib1sARB}, - {"glVertexAttrib1fARB", "(IF)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib1fARB, "glVertexAttrib1fARB", (void*)&glVertexAttrib1fARB}, - {"glVertexAttrib2sARB", "(ISS)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib2sARB, "glVertexAttrib2sARB", (void*)&glVertexAttrib2sARB}, - {"glVertexAttrib2fARB", "(IFF)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib2fARB, "glVertexAttrib2fARB", (void*)&glVertexAttrib2fARB}, - {"glVertexAttrib3sARB", "(ISSS)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib3sARB, "glVertexAttrib3sARB", (void*)&glVertexAttrib3sARB}, - {"glVertexAttrib3fARB", "(IFFF)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib3fARB, "glVertexAttrib3fARB", (void*)&glVertexAttrib3fARB}, - {"glVertexAttrib4sARB", "(ISSSS)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4sARB, "glVertexAttrib4sARB", (void*)&glVertexAttrib4sARB}, - {"glVertexAttrib4fARB", "(IFFFF)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4fARB, "glVertexAttrib4fARB", (void*)&glVertexAttrib4fARB}, - {"glVertexAttrib4NubARB", "(IBBBB)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4NubARB, "glVertexAttrib4NubARB", (void*)&glVertexAttrib4NubARB}, - {"nglVertexAttribPointerARB", "(IIIZILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_nglVertexAttribPointerARB, "glVertexAttribPointerARB", (void*)&glVertexAttribPointerARB}, - {"nglVertexAttribPointerARBVBO", "(IIIZII)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_nglVertexAttribPointerARBVBO, NULL, NULL}, - {"glEnableVertexAttribArrayARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glEnableVertexAttribArrayARB, "glEnableVertexAttribArrayARB", (void*)&glEnableVertexAttribArrayARB}, - {"glDisableVertexAttribArrayARB", "(I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glDisableVertexAttribArrayARB, "glDisableVertexAttribArrayARB", (void*)&glDisableVertexAttribArrayARB}, - {"nglGetVertexAttribfvARB", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_nglGetVertexAttribfvARB, "glGetVertexAttribfvARB", (void*)&glGetVertexAttribfvARB}, - {"nglGetVertexAttribivARB", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_nglGetVertexAttribivARB, "glGetVertexAttribivARB", (void*)&glGetVertexAttribivARB}, - {"glGetVertexAttribPointerARB", "(III)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_ARBVertexProgram_glGetVertexAttribPointerARB, "glGetVertexAttribPointervARB", (void*)&glGetVertexAttribPointervARB} + {"nglGetVertexAttribPointervARB", "(III)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_nglGetVertexAttribPointervARB, "glGetVertexAttribPointervARB", (void *)&glGetVertexAttribPointervARB}, + {"nglGetVertexAttribivARB", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_nglGetVertexAttribivARB, "glGetVertexAttribivARB", (void *)&glGetVertexAttribivARB}, + {"nglGetVertexAttribfvARB", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_nglGetVertexAttribfvARB, "glGetVertexAttribfvARB", (void *)&glGetVertexAttribfvARB}, + {"glDisableVertexAttribArrayARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glDisableVertexAttribArrayARB, "glDisableVertexAttribArrayARB", (void *)&glDisableVertexAttribArrayARB}, + {"glEnableVertexAttribArrayARB", "(I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glEnableVertexAttribArrayARB, "glEnableVertexAttribArrayARB", (void *)&glEnableVertexAttribArrayARB}, + {"nglVertexAttribPointerARB", "(IIIZILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_nglVertexAttribPointerARB, "glVertexAttribPointerARB", (void *)&glVertexAttribPointerARB}, + {"nglVertexAttribPointerARBBO", "(IIIZII)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_nglVertexAttribPointerARBBO, "glVertexAttribPointerARB", (void *)&glVertexAttribPointerARB}, + {"glVertexAttrib4NubARB", "(IBBBB)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4NubARB, "glVertexAttrib4NubARB", (void *)&glVertexAttrib4NubARB}, + {"glVertexAttrib4fARB", "(IFFFF)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4fARB, "glVertexAttrib4fARB", (void *)&glVertexAttrib4fARB}, + {"glVertexAttrib4sARB", "(ISSSS)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib4sARB, "glVertexAttrib4sARB", (void *)&glVertexAttrib4sARB}, + {"glVertexAttrib3fARB", "(IFFF)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib3fARB, "glVertexAttrib3fARB", (void *)&glVertexAttrib3fARB}, + {"glVertexAttrib3sARB", "(ISSS)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib3sARB, "glVertexAttrib3sARB", (void *)&glVertexAttrib3sARB}, + {"glVertexAttrib2fARB", "(IFF)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib2fARB, "glVertexAttrib2fARB", (void *)&glVertexAttrib2fARB}, + {"glVertexAttrib2sARB", "(ISS)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib2sARB, "glVertexAttrib2sARB", (void *)&glVertexAttrib2sARB}, + {"glVertexAttrib1fARB", "(IF)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib1fARB, "glVertexAttrib1fARB", (void *)&glVertexAttrib1fARB}, + {"glVertexAttrib1sARB", "(IS)V", (void *)&Java_org_lwjgl_opengl_ARBVertexProgram_glVertexAttrib1sARB, "glVertexAttrib1sARB", (void *)&glVertexAttrib1sARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBVertexShader.c b/src/native/common/arb/org_lwjgl_opengl_ARBVertexShader.c index d71dd8be..06fdfef4 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBVertexShader.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBVertexShader.c @@ -1,110 +1,41 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBVertexShader -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef unsigned char GLcharARB; -typedef unsigned int GLhandleARB; +typedef GLint (APIENTRY *glGetAttribLocationARBPROC) (GLhandleARB programObj, const GLcharARB * name); +typedef void (APIENTRY *glGetActiveAttribARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name); +typedef void (APIENTRY *glBindAttribLocationARBPROC) (GLhandleARB programObj, GLuint index, const GLcharARB * name); -typedef void (APIENTRY * glBindAttribLocationARBPROC) (GLhandleARB programObj, GLuint index, const GLcharARB *name); -typedef void (APIENTRY * glGetActiveAttribARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name); -typedef GLint (APIENTRY * glGetAttribLocationARBPROC) (GLhandleARB programObj, const GLcharARB *name); - -static glBindAttribLocationARBPROC glBindAttribLocationARB; -static glGetActiveAttribARBPROC glGetActiveAttribARB; static glGetAttribLocationARBPROC glGetAttribLocationARB; +static glGetActiveAttribARBPROC glGetActiveAttribARB; +static glBindAttribLocationARBPROC glBindAttribLocationARB; -/* - * Class: org.lwjgl.opengl.ARBVertexShader - * Method: nglBindAttribLocationARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexShader_nglBindAttribLocationARB - (JNIEnv * env, jclass clazz, jint programObj, jint index, jobject name, jint nameOffset) -{ - GLubyte *name_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - glBindAttribLocationARB(programObj, index, name_ptr); - +static jint JNICALL Java_org_lwjgl_opengl_ARBVertexShader_nglGetAttribLocationARB(JNIEnv *env, jclass clazz, jint programObj, jobject name, jint name_position) { + const GLcharARB *name_address = ((const GLcharARB *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + GLint __result = glGetAttribLocationARB(programObj, name_address); + return __result; } -/* - * Class: org.lwjgl.opengl.ARBVertexShader - * Method: nglGetActiveAttribARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBVertexShader_nglGetActiveAttribARB - (JNIEnv * env, jclass clazz, jint programObj, jint index, jint maxLength, jobject length, jint lengthOffset, jobject size, jint sizeOffset, jobject type, jint typeOffset, jobject name, jint nameOffset) -{ - - GLint *size_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, size) + sizeOffset; - GLenum *type_ptr = (GLenum *)(*env)->GetDirectBufferAddress(env, type) + typeOffset; - GLcharARB *name_ptr = (GLcharARB *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - - if ( length == NULL ) { - glGetActiveAttribARB(programObj, index, maxLength, NULL, size_ptr, type_ptr, name_ptr); - } else { - GLsizei *length_ptr = (GLsizei *)(*env)->GetDirectBufferAddress(env, length) + lengthOffset; - glGetActiveAttribARB(programObj, index, maxLength, length_ptr, size_ptr, type_ptr, name_ptr); - } +static void JNICALL Java_org_lwjgl_opengl_ARBVertexShader_nglGetActiveAttribARB(JNIEnv *env, jclass clazz, jint programObj, jint index, jint maxLength, jobject length, jint length_position, jobject size, jint size_position, jobject type, jint type_position, jobject name, jint name_position) { + GLsizei *length_address = ((GLsizei *)safeGetBufferAddress(env, length)) + length_position; + GLint *size_address = ((GLint *)(*env)->GetDirectBufferAddress(env, size)) + size_position; + GLenum *type_address = ((GLenum *)(*env)->GetDirectBufferAddress(env, type)) + type_position; + GLcharARB *name_address = ((GLcharARB *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + glGetActiveAttribARB(programObj, index, maxLength, length_address, size_address, type_address, name_address); } -/* - * Class: org.lwjgl.opengl.ARBVertexShader - * Method: nglGetAttribLocationARB - */ -static jint JNICALL Java_org_lwjgl_opengl_ARBVertexShader_nglGetAttribLocationARB - (JNIEnv * env, jclass clazz, jint programObj, jobject name, jint nameOffset) -{ - GLubyte *name_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - GLuint result = glGetAttribLocationARB(programObj, name_ptr); - - return result; +static void JNICALL Java_org_lwjgl_opengl_ARBVertexShader_nglBindAttribLocationARB(JNIEnv *env, jclass clazz, jint programObj, jint index, jobject name, jint name_position) { + const GLcharARB *name_address = ((const GLcharARB *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + glBindAttribLocationARB(programObj, index, name_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBVertexShader_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglBindAttribLocationARB", "(IILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexShader_nglBindAttribLocationARB, "glBindAttribLocationARB", (void*)&glBindAttribLocationARB}, - {"nglGetActiveAttribARB", "(IIILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ARBVertexShader_nglGetActiveAttribARB, "glGetActiveAttribARB", (void*)&glGetActiveAttribARB}, - {"nglGetAttribLocationARB", "(ILjava/nio/ByteBuffer;I)I", (void*)&Java_org_lwjgl_opengl_ARBVertexShader_nglGetAttribLocationARB, "glGetAttribLocationARB", (void*)&glGetAttribLocationARB} + {"nglGetAttribLocationARB", "(ILjava/nio/ByteBuffer;I)I", (void *)&Java_org_lwjgl_opengl_ARBVertexShader_nglGetAttribLocationARB, "glGetAttribLocationARB", (void *)&glGetAttribLocationARB}, + {"nglGetActiveAttribARB", "(IIILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexShader_nglGetActiveAttribARB, "glGetActiveAttribARB", (void *)&glGetActiveAttribARB}, + {"nglBindAttribLocationARB", "(IILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ARBVertexShader_nglBindAttribLocationARB, "glBindAttribLocationARB", (void *)&glBindAttribLocationARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/arb/org_lwjgl_opengl_ARBWindowPos.c b/src/native/common/arb/org_lwjgl_opengl_ARBWindowPos.c index f1d58f76..b25b03ff 100644 --- a/src/native/common/arb/org_lwjgl_opengl_ARBWindowPos.c +++ b/src/native/common/arb/org_lwjgl_opengl_ARBWindowPos.c @@ -1,137 +1,55 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ARBWindowPos -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glWindowPos2fARBPROC) (GLfloat x, GLfloat y); -typedef void (APIENTRY * glWindowPos2iARBPROC) (GLint x, GLint y); -typedef void (APIENTRY * glWindowPos2sARBPROC) (GLshort x, GLshort y); -typedef void (APIENTRY * glWindowPos3fARBPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glWindowPos3iARBPROC) (GLint x, GLint y, GLint z); -typedef void (APIENTRY * glWindowPos3sARBPROC) (GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY *glWindowPos3sARBPROC) (GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY *glWindowPos3iARBPROC) (GLint x, GLint y, GLint z); +typedef void (APIENTRY *glWindowPos3fARBPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glWindowPos2sARBPROC) (GLshort x, GLshort y); +typedef void (APIENTRY *glWindowPos2iARBPROC) (GLint x, GLint y); +typedef void (APIENTRY *glWindowPos2fARBPROC) (GLfloat x, GLfloat y); -static glWindowPos2fARBPROC glWindowPos2fARB; -static glWindowPos2iARBPROC glWindowPos2iARB; -static glWindowPos2sARBPROC glWindowPos2sARB; -static glWindowPos3fARBPROC glWindowPos3fARB; -static glWindowPos3iARBPROC glWindowPos3iARB; static glWindowPos3sARBPROC glWindowPos3sARB; +static glWindowPos3iARBPROC glWindowPos3iARB; +static glWindowPos3fARBPROC glWindowPos3fARB; +static glWindowPos2sARBPROC glWindowPos2sARB; +static glWindowPos2iARBPROC glWindowPos2iARB; +static glWindowPos2fARBPROC glWindowPos2fARB; -/* - * Class: org.lwjgl.opengl.ARBWindowPos - * Method: glWindowPos2fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2fARB - (JNIEnv * env, jclass clazz, jfloat x, jfloat y) -{ - glWindowPos2fARB(x, y); - -} - -/* - * Class: org.lwjgl.opengl.ARBWindowPos - * Method: glWindowPos2iARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2iARB - (JNIEnv * env, jclass clazz, jint x, jint y) -{ - glWindowPos2iARB(x, y); - -} - -/* - * Class: org.lwjgl.opengl.ARBWindowPos - * Method: glWindowPos2sARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2sARB - (JNIEnv * env, jclass clazz, jshort x, jshort y) -{ - glWindowPos2sARB(x, y); - -} - -/* - * Class: org.lwjgl.opengl.ARBWindowPos - * Method: glWindowPos3fARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3fARB - (JNIEnv * env, jclass clazz, jfloat x, jfloat y, jfloat z) -{ - glWindowPos3fARB(x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ARBWindowPos - * Method: glWindowPos3iARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3iARB - (JNIEnv * env, jclass clazz, jint x, jint y, jint z) -{ - glWindowPos3iARB(x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ARBWindowPos - * Method: glWindowPos3sARB - */ -static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3sARB - (JNIEnv * env, jclass clazz, jshort x, jshort y, jshort z) -{ +static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3sARB(JNIEnv *env, jclass clazz, jshort x, jshort y, jshort z) { glWindowPos3sARB(x, y, z); - } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3iARB(JNIEnv *env, jclass clazz, jint x, jint y, jint z) { + glWindowPos3iARB(x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3fARB(JNIEnv *env, jclass clazz, jfloat x, jfloat y, jfloat z) { + glWindowPos3fARB(x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2sARB(JNIEnv *env, jclass clazz, jshort x, jshort y) { + glWindowPos2sARB(x, y); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2iARB(JNIEnv *env, jclass clazz, jint x, jint y) { + glWindowPos2iARB(x, y); +} + +static void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2fARB(JNIEnv *env, jclass clazz, jfloat x, jfloat y) { + glWindowPos2fARB(x, y); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ARBWindowPos_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glWindowPos2fARB", "(FF)V", (void*)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2fARB, "glWindowPos2fARB", (void*)&glWindowPos2fARB}, - {"glWindowPos2iARB", "(II)V", (void*)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2iARB, "glWindowPos2iARB", (void*)&glWindowPos2iARB}, - {"glWindowPos2sARB", "(SS)V", (void*)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2sARB, "glWindowPos2sARB", (void*)&glWindowPos2sARB}, - {"glWindowPos3fARB", "(FFF)V", (void*)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3fARB, "glWindowPos3fARB", (void*)&glWindowPos3fARB}, - {"glWindowPos3iARB", "(III)V", (void*)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3iARB, "glWindowPos3iARB", (void*)&glWindowPos3iARB}, - {"glWindowPos3sARB", "(SSS)V", (void*)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3sARB, "glWindowPos3sARB", (void*)&glWindowPos3sARB} + {"glWindowPos3sARB", "(SSS)V", (void *)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3sARB, "glWindowPos3sARB", (void *)&glWindowPos3sARB}, + {"glWindowPos3iARB", "(III)V", (void *)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3iARB, "glWindowPos3iARB", (void *)&glWindowPos3iARB}, + {"glWindowPos3fARB", "(FFF)V", (void *)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos3fARB, "glWindowPos3fARB", (void *)&glWindowPos3fARB}, + {"glWindowPos2sARB", "(SS)V", (void *)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2sARB, "glWindowPos2sARB", (void *)&glWindowPos2sARB}, + {"glWindowPos2iARB", "(II)V", (void *)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2iARB, "glWindowPos2iARB", (void *)&glWindowPos2iARB}, + {"glWindowPos2fARB", "(FF)V", (void *)&Java_org_lwjgl_opengl_ARBWindowPos_glWindowPos2fARB, "glWindowPos2fARB", (void *)&glWindowPos2fARB} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ati/org_lwjgl_opengl_ATIDrawBuffers.c b/src/native/common/ati/org_lwjgl_opengl_ATIDrawBuffers.c index 44f6fa3d..092bb995 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ATIDrawBuffers.c +++ b/src/native/common/ati/org_lwjgl_opengl_ATIDrawBuffers.c @@ -1,68 +1,21 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ATIDrawBuffers -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glDrawBuffersATIPROC) (GLsizei n, const GLenum *bufs); +typedef void (APIENTRY *glDrawBuffersATIPROC) (GLsizei size, const GLenum * buffers); static glDrawBuffersATIPROC glDrawBuffersATI; -/* - * Class: org.lwjgl.opengl.ATIDrawBuffers - * Method: nglDrawBuffersATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIDrawBuffers_nglDrawBuffersATI - (JNIEnv * env, jclass clazz, jint size, jobject buffers, jint buffersOffset) -{ - GLuint *buffers_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, buffers) + buffersOffset; - glDrawBuffersATI(size, buffers_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ATIDrawBuffers_nglDrawBuffersATI(JNIEnv *env, jclass clazz, jint size, jobject buffers, jint buffers_position) { + const GLenum *buffers_address = ((const GLenum *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + glDrawBuffersATI(size, buffers_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ATIDrawBuffers_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglDrawBuffersATI", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIDrawBuffers_nglDrawBuffersATI, "glDrawBuffersATI", (void*)&glDrawBuffersATI} + {"nglDrawBuffersATI", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIDrawBuffers_nglDrawBuffersATI, "glDrawBuffersATI", (void *)&glDrawBuffersATI} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ati/org_lwjgl_opengl_ATIElementArray.c b/src/native/common/ati/org_lwjgl_opengl_ATIElementArray.c index 9c077b14..7d3ff862 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ATIElementArray.c +++ b/src/native/common/ati/org_lwjgl_opengl_ATIElementArray.c @@ -1,108 +1,41 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ATIElementArray -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glElementPointerATIPROC) (GLenum type, const GLvoid *pointer); -typedef void (APIENTRY * glDrawElementArrayATIPROC) (GLenum mode, GLsizei count); -typedef void (APIENTRY * glDrawRangeElementArrayATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count); +typedef void (APIENTRY *glDrawRangeElementArrayATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count); +typedef void (APIENTRY *glDrawElementArrayATIPROC) (GLenum mode, GLsizei count); +typedef void (APIENTRY *glElementPointerATIPROC) (GLenum type, const GLvoid * pPointer); -static glElementPointerATIPROC glElementPointerATI; -static glDrawElementArrayATIPROC glDrawElementArrayATI; static glDrawRangeElementArrayATIPROC glDrawRangeElementArrayATI; +static glDrawElementArrayATIPROC glDrawElementArrayATI; +static glElementPointerATIPROC glElementPointerATI; -/* - * Class: org.lwjgl.opengl.ATIElementArray - * Method: nglElementPointerATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIElementArray_nglElementPointerATI - (JNIEnv * env, jclass clazz, jint type, jobject pPointer, jint pPointer_offset) -{ - GLvoid *pPointer_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pPointer) + pPointer_offset); - glElementPointerATI(type, pPointer_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ATIElementArray - * Method: nglElementPointerATIVBO - */ -static void JNICALL Java_org_lwjgl_opengl_ATIElementArray_nglElementPointerATIVBO - (JNIEnv * env, jclass clazz, jint type, jint buffer_offset) -{ - glElementPointerATI(type, (GLvoid *)buffer_offset); - -} - -/* - * Class: org.lwjgl.opengl.ATIElementArray - * Method: glDrawElementArrayATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIElementArray_glDrawElementArrayATI - (JNIEnv * env, jclass clazz, jint mode, jint count) -{ - glDrawElementArrayATI(mode, count); - -} - -/* - * Class: org.lwjgl.opengl.ATIElementArray - * Method: glDrawRangeElementArrayATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIElementArray_glDrawRangeElementArrayATI - (JNIEnv * env, jclass clazz, jint mode, jint start, jint end, jint count) -{ +static void JNICALL Java_org_lwjgl_opengl_ATIElementArray_glDrawRangeElementArrayATI(JNIEnv *env, jclass clazz, jint mode, jint start, jint end, jint count) { glDrawRangeElementArrayATI(mode, start, end, count); - } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_ATIElementArray_glDrawElementArrayATI(JNIEnv *env, jclass clazz, jint mode, jint count) { + glDrawElementArrayATI(mode, count); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIElementArray_nglElementPointerATI(JNIEnv *env, jclass clazz, jint type, jobject pPointer, jint pPointer_position) { + const GLvoid *pPointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pPointer)) + pPointer_position)); + glElementPointerATI(type, pPointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIElementArray_nglElementPointerATIBO(JNIEnv *env, jclass clazz, jint type, jint pPointer_buffer_offset) { + const GLvoid *pPointer_address = ((const GLvoid *)offsetToPointer(pPointer_buffer_offset)); + glElementPointerATI(type, pPointer_address); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ATIElementArray_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglElementPointerATI", "(ILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIElementArray_nglElementPointerATI, "glElementPointerATI", (void*)&glElementPointerATI}, - {"nglElementPointerATIVBO", "(II)V", (void*)&Java_org_lwjgl_opengl_ATIElementArray_nglElementPointerATIVBO, NULL, NULL}, - {"glDrawElementArrayATI", "(II)V", (void*)&Java_org_lwjgl_opengl_ATIElementArray_glDrawElementArrayATI, "glDrawElementArrayATI", (void*)&glDrawElementArrayATI}, - {"glDrawRangeElementArrayATI", "(IIII)V", (void*)&Java_org_lwjgl_opengl_ATIElementArray_glDrawRangeElementArrayATI, "glDrawRangeElementArrayATI", (void*)&glDrawRangeElementArrayATI} + {"glDrawRangeElementArrayATI", "(IIII)V", (void *)&Java_org_lwjgl_opengl_ATIElementArray_glDrawRangeElementArrayATI, "glDrawRangeElementArrayATI", (void *)&glDrawRangeElementArrayATI}, + {"glDrawElementArrayATI", "(II)V", (void *)&Java_org_lwjgl_opengl_ATIElementArray_glDrawElementArrayATI, "glDrawElementArrayATI", (void *)&glDrawElementArrayATI}, + {"nglElementPointerATI", "(ILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIElementArray_nglElementPointerATI, "glElementPointerATI", (void *)&glElementPointerATI}, + {"nglElementPointerATIBO", "(II)V", (void *)&Java_org_lwjgl_opengl_ATIElementArray_nglElementPointerATIBO, "glElementPointerATI", (void *)&glElementPointerATI} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ati/org_lwjgl_opengl_ATIEnvmapBumpmap.c b/src/native/common/ati/org_lwjgl_opengl_ATIEnvmapBumpmap.c index a2e045b2..150ab31c 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ATIEnvmapBumpmap.c +++ b/src/native/common/ati/org_lwjgl_opengl_ATIEnvmapBumpmap.c @@ -1,109 +1,45 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ATIEnvmapBumpmap -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glTexBumpParameterivATIPROC) (GLenum pname, GLint *param); -typedef void (APIENTRY * glTexBumpParameterfvATIPROC) (GLenum pname, GLfloat *param); -typedef void (APIENTRY * glGetTexBumpParameterivATIPROC) (GLenum pname, GLint *param); -typedef void (APIENTRY * glGetTexBumpParameterfvATIPROC) (GLenum pname, GLfloat *param); +typedef void (APIENTRY *glGetTexBumpParameterivATIPROC) (GLenum pname, GLint * param); +typedef void (APIENTRY *glGetTexBumpParameterfvATIPROC) (GLenum pname, GLfloat * param); +typedef void (APIENTRY *glTexBumpParameterivATIPROC) (GLenum pname, GLint * param); +typedef void (APIENTRY *glTexBumpParameterfvATIPROC) (GLenum pname, GLfloat * param); -static glTexBumpParameterivATIPROC glTexBumpParameterivATI; -static glTexBumpParameterfvATIPROC glTexBumpParameterfvATI; static glGetTexBumpParameterivATIPROC glGetTexBumpParameterivATI; static glGetTexBumpParameterfvATIPROC glGetTexBumpParameterfvATI; +static glTexBumpParameterivATIPROC glTexBumpParameterivATI; +static glTexBumpParameterfvATIPROC glTexBumpParameterfvATI; -/* - * Class: org.lwjgl.opengl.ATIEnvmapBumpmap - * Method: nglTexBumpParameterfvATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglTexBumpParameterfvATI - (JNIEnv * env, jclass clazz, jint pname, jobject pfParam, jint pfParam_offset) -{ - GLfloat *pfParam_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParam) + pfParam_offset; - glTexBumpParameterfvATI(pname, pfParam_ptr); +static void JNICALL Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglGetTexBumpParameterivATI(JNIEnv *env, jclass clazz, jint pname, jobject param, jint param_position) { + GLint *param_address = ((GLint *)(*env)->GetDirectBufferAddress(env, param)) + param_position; + glGetTexBumpParameterivATI(pname, param_address); } -/* - * Class: org.lwjgl.opengl.ATIEnvmapBumpmap - * Method: nglTexBumpParameterivATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglTexBumpParameterivATI - (JNIEnv * env, jclass clazz, jint pname, jobject piParam, jint piParam_offset) -{ - GLint *piParam_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParam) + piParam_offset; - glTexBumpParameterivATI(pname, piParam_ptr); +static void JNICALL Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglGetTexBumpParameterfvATI(JNIEnv *env, jclass clazz, jint pname, jobject param, jint param_position) { + GLfloat *param_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, param)) + param_position; + glGetTexBumpParameterfvATI(pname, param_address); } -/* - * Class: org.lwjgl.opengl.ATIEnvmapBumpmap - * Method: nglGetTexBumpParameterfvATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglGetTexBumpParameterfvATI - (JNIEnv * env, jclass clazz, jint pname, jobject pfParam, jint pfParam_offset) -{ - GLfloat *pfParam_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParam) + pfParam_offset; - glGetTexBumpParameterfvATI(pname, pfParam_ptr); +static void JNICALL Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglTexBumpParameterivATI(JNIEnv *env, jclass clazz, jint pname, jobject param, jint param_position) { + GLint *param_address = ((GLint *)(*env)->GetDirectBufferAddress(env, param)) + param_position; + glTexBumpParameterivATI(pname, param_address); } -/* - * Class: org.lwjgl.opengl.ATIEnvmapBumpmap - * Method: nglGetTexBumpParameterivATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglGetTexBumpParameterivATI - (JNIEnv * env, jclass clazz, jint pname, jobject piParam, jint piParam_offset) -{ - GLint *piParam_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParam) + piParam_offset; - glGetTexBumpParameterivATI(pname, piParam_ptr); +static void JNICALL Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglTexBumpParameterfvATI(JNIEnv *env, jclass clazz, jint pname, jobject param, jint param_position) { + GLfloat *param_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, param)) + param_position; + glTexBumpParameterfvATI(pname, param_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ATIEnvmapBumpmap_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglTexBumpParameterfvATI", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglTexBumpParameterfvATI, "glTexBumpParameterfvATI", (void*)&glTexBumpParameterfvATI}, - {"nglTexBumpParameterivATI", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglTexBumpParameterivATI, "glTexBumpParameterivATI", (void*)&glTexBumpParameterivATI}, - {"nglGetTexBumpParameterfvATI", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglGetTexBumpParameterfvATI, "glGetTexBumpParameterfvATI", (void*)&glGetTexBumpParameterfvATI}, - {"nglGetTexBumpParameterivATI", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglGetTexBumpParameterivATI, "glGetTexBumpParameterivATI", (void*)&glGetTexBumpParameterivATI} + {"nglGetTexBumpParameterivATI", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglGetTexBumpParameterivATI, "glGetTexBumpParameterivATI", (void *)&glGetTexBumpParameterivATI}, + {"nglGetTexBumpParameterfvATI", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglGetTexBumpParameterfvATI, "glGetTexBumpParameterfvATI", (void *)&glGetTexBumpParameterfvATI}, + {"nglTexBumpParameterivATI", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglTexBumpParameterivATI, "glTexBumpParameterivATI", (void *)&glTexBumpParameterivATI}, + {"nglTexBumpParameterfvATI", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIEnvmapBumpmap_nglTexBumpParameterfvATI, "glTexBumpParameterfvATI", (void *)&glTexBumpParameterfvATI} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ati/org_lwjgl_opengl_ATIFragmentShader.c b/src/native/common/ati/org_lwjgl_opengl_ATIFragmentShader.c index 8de8f97e..230bf574 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ATIFragmentShader.c +++ b/src/native/common/ati/org_lwjgl_opengl_ATIFragmentShader.c @@ -1,251 +1,113 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ATIFragmentShader -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef GLuint (APIENTRY * glGenFragmentShadersATIPROC) (GLuint range); -typedef void (APIENTRY * glBindFragmentShaderATIPROC) (GLuint id); -typedef void (APIENTRY * glDeleteFragmentShaderATIPROC) (GLuint id); -typedef void (APIENTRY * glBeginFragmentShaderATIPROC) (GLvoid); -typedef void (APIENTRY * glEndFragmentShaderATIPROC) (GLvoid); -typedef void (APIENTRY * glPassTexCoordATIPROC) (GLuint dst, GLuint coord, GLenum swizzle); -typedef void (APIENTRY * glSampleMapATIPROC) (GLuint dst, GLuint interp, GLenum swizzle); -typedef void (APIENTRY * glColorFragmentOp1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); -typedef void (APIENTRY * glColorFragmentOp2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); -typedef void (APIENTRY * glColorFragmentOp3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); -typedef void (APIENTRY * glAlphaFragmentOp1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); -typedef void (APIENTRY * glAlphaFragmentOp2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); -typedef void (APIENTRY * glAlphaFragmentOp3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); -typedef void (APIENTRY * glSetFragmentShaderConstantATIPROC) (GLuint dst, const GLfloat *value); +typedef void (APIENTRY *glSetFragmentShaderConstantATIPROC) (GLuint dst, const GLfloat * pfValue); +typedef void (APIENTRY *glAlphaFragmentOp3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); +typedef void (APIENTRY *glAlphaFragmentOp2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); +typedef void (APIENTRY *glAlphaFragmentOp1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); +typedef void (APIENTRY *glColorFragmentOp3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod); +typedef void (APIENTRY *glColorFragmentOp2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); +typedef void (APIENTRY *glColorFragmentOp1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); +typedef void (APIENTRY *glSampleMapATIPROC) (GLuint dst, GLuint interp, GLenum swizzle); +typedef void (APIENTRY *glPassTexCoordATIPROC) (GLuint dst, GLuint coord, GLenum swizzle); +typedef void (APIENTRY *glEndFragmentShaderATIPROC) (); +typedef void (APIENTRY *glBeginFragmentShaderATIPROC) (); +typedef void (APIENTRY *glDeleteFragmentShaderATIPROC) (GLuint id); +typedef void (APIENTRY *glBindFragmentShaderATIPROC) (GLuint id); +typedef GLuint (APIENTRY *glGenFragmentShadersATIPROC) (GLuint range); -static glGenFragmentShadersATIPROC glGenFragmentShadersATI; -static glBindFragmentShaderATIPROC glBindFragmentShaderATI; -static glDeleteFragmentShaderATIPROC glDeleteFragmentShaderATI; -static glBeginFragmentShaderATIPROC glBeginFragmentShaderATI; -static glEndFragmentShaderATIPROC glEndFragmentShaderATI; -static glPassTexCoordATIPROC glPassTexCoordATI; -static glSampleMapATIPROC glSampleMapATI; -static glColorFragmentOp1ATIPROC glColorFragmentOp1ATI; -static glColorFragmentOp2ATIPROC glColorFragmentOp2ATI; -static glColorFragmentOp3ATIPROC glColorFragmentOp3ATI; -static glAlphaFragmentOp1ATIPROC glAlphaFragmentOp1ATI; -static glAlphaFragmentOp2ATIPROC glAlphaFragmentOp2ATI; -static glAlphaFragmentOp3ATIPROC glAlphaFragmentOp3ATI; static glSetFragmentShaderConstantATIPROC glSetFragmentShaderConstantATI; +static glAlphaFragmentOp3ATIPROC glAlphaFragmentOp3ATI; +static glAlphaFragmentOp2ATIPROC glAlphaFragmentOp2ATI; +static glAlphaFragmentOp1ATIPROC glAlphaFragmentOp1ATI; +static glColorFragmentOp3ATIPROC glColorFragmentOp3ATI; +static glColorFragmentOp2ATIPROC glColorFragmentOp2ATI; +static glColorFragmentOp1ATIPROC glColorFragmentOp1ATI; +static glSampleMapATIPROC glSampleMapATI; +static glPassTexCoordATIPROC glPassTexCoordATI; +static glEndFragmentShaderATIPROC glEndFragmentShaderATI; +static glBeginFragmentShaderATIPROC glBeginFragmentShaderATI; +static glDeleteFragmentShaderATIPROC glDeleteFragmentShaderATI; +static glBindFragmentShaderATIPROC glBindFragmentShaderATI; +static glGenFragmentShadersATIPROC glGenFragmentShadersATI; -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glGenFragmentShadersATI - */ -static jint JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glGenFragmentShadersATI - (JNIEnv * env, jclass clazz, jint range) -{ - GLuint result = glGenFragmentShadersATI(range); - - return result; +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_nglSetFragmentShaderConstantATI(JNIEnv *env, jclass clazz, jint dst, jobject pfValue, jint pfValue_position) { + const GLfloat *pfValue_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, pfValue)) + pfValue_position; + glSetFragmentShaderConstantATI(dst, pfValue_address); } -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glBindFragmentShaderATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glBindFragmentShaderATI - (JNIEnv * env, jclass clazz, jint id) -{ - glBindFragmentShaderATI(id); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glDeleteFragmentShaderATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glDeleteFragmentShaderATI - (JNIEnv * env, jclass clazz, jint id) -{ - glDeleteFragmentShaderATI(id); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glBeginFragmentShaderATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glBeginFragmentShaderATI - (JNIEnv * env, jclass clazz) -{ - glBeginFragmentShaderATI(); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glEndFragmentShaderATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glEndFragmentShaderATI - (JNIEnv * env, jclass clazz) -{ - glEndFragmentShaderATI(); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glPassTexCoordATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glPassTexCoordATI - (JNIEnv * env, jclass clazz, jint dst, jint coord, jint swizzle) -{ - glPassTexCoordATI(dst, coord, swizzle); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glSampleMapATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glSampleMapATI - (JNIEnv * env, jclass clazz, jint dst, jint interp, jint swizzle) -{ - glSampleMapATI(dst, interp, swizzle); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glColorFragmentOp1ATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp1ATI - (JNIEnv * env, jclass clazz, jint op, jint dst, jint dstMask, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod) -{ - glColorFragmentOp1ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glColorFragmentOp2ATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp2ATI - (JNIEnv * env, jclass clazz, jint op, jint dst, jint dstMask, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod, jint arg2, jint arg2Rep, jint arg2Mod) -{ - glColorFragmentOp2ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glColorFragmentOp3ATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp3ATI - (JNIEnv * env, jclass clazz, jint op, jint dst, jint dstMask, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod, jint arg2, jint arg2Rep, jint arg2Mod, jint arg3, jint arg3Rep, jint arg3Mod) -{ - glColorFragmentOp3ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glAlphaFragmentOp1ATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp1ATI - (JNIEnv * env, jclass clazz, jint op, jint dst, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod) -{ - glAlphaFragmentOp1ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glAlphaFragmentOp2ATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp2ATI - (JNIEnv * env, jclass clazz, jint op, jint dst, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod, jint arg2, jint arg2Rep, jint arg2Mod) -{ - glAlphaFragmentOp2ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); - -} - -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: glAlphaFragmentOp3ATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp3ATI - (JNIEnv * env, jclass clazz, jint op, jint dst, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod, jint arg2, jint arg2Rep, jint arg2Mod, jint arg3, jint arg3Rep, jint arg3Mod) -{ +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp3ATI(JNIEnv *env, jclass clazz, jint op, jint dst, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod, jint arg2, jint arg2Rep, jint arg2Mod, jint arg3, jint arg3Rep, jint arg3Mod) { glAlphaFragmentOp3ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); - } -/* - * Class: org.lwjgl.opengl.ATIFragmentShader - * Method: nglSetFragmentShaderConstantATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_nglSetFragmentShaderConstantATI - (JNIEnv * env, jclass clazz, jint dst, jobject pfValue, jint pfValue_offset) -{ - GLfloat *pfValue_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfValue) + pfValue_offset; - glSetFragmentShaderConstantATI(dst, pfValue_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp2ATI(JNIEnv *env, jclass clazz, jint op, jint dst, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod, jint arg2, jint arg2Rep, jint arg2Mod) { + glAlphaFragmentOp2ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp1ATI(JNIEnv *env, jclass clazz, jint op, jint dst, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod) { + glAlphaFragmentOp1ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp3ATI(JNIEnv *env, jclass clazz, jint op, jint dst, jint dstMask, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod, jint arg2, jint arg2Rep, jint arg2Mod, jint arg3, jint arg3Rep, jint arg3Mod) { + glColorFragmentOp3ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp2ATI(JNIEnv *env, jclass clazz, jint op, jint dst, jint dstMask, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod, jint arg2, jint arg2Rep, jint arg2Mod) { + glColorFragmentOp2ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp1ATI(JNIEnv *env, jclass clazz, jint op, jint dst, jint dstMask, jint dstMod, jint arg1, jint arg1Rep, jint arg1Mod) { + glColorFragmentOp1ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glSampleMapATI(JNIEnv *env, jclass clazz, jint dst, jint interp, jint swizzle) { + glSampleMapATI(dst, interp, swizzle); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glPassTexCoordATI(JNIEnv *env, jclass clazz, jint dst, jint coord, jint swizzle) { + glPassTexCoordATI(dst, coord, swizzle); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glEndFragmentShaderATI(JNIEnv *env, jclass clazz) { + glEndFragmentShaderATI(); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glBeginFragmentShaderATI(JNIEnv *env, jclass clazz) { + glBeginFragmentShaderATI(); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glDeleteFragmentShaderATI(JNIEnv *env, jclass clazz, jint id) { + glDeleteFragmentShaderATI(id); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glBindFragmentShaderATI(JNIEnv *env, jclass clazz, jint id) { + glBindFragmentShaderATI(id); +} + +static jint JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_glGenFragmentShadersATI(JNIEnv *env, jclass clazz, jint range) { + GLuint __result = glGenFragmentShadersATI(range); + return __result; } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ATIFragmentShader_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glGenFragmentShadersATI", "(I)I", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glGenFragmentShadersATI, "glGenFragmentShadersATI", (void*)&glGenFragmentShadersATI}, - {"glBindFragmentShaderATI", "(I)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glBindFragmentShaderATI, "glBindFragmentShaderATI", (void*)&glBindFragmentShaderATI}, - {"glDeleteFragmentShaderATI", "(I)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glDeleteFragmentShaderATI, "glDeleteFragmentShaderATI", (void*)&glDeleteFragmentShaderATI}, - {"glBeginFragmentShaderATI", "()V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glBeginFragmentShaderATI, "glBeginFragmentShaderATI", (void*)&glBeginFragmentShaderATI}, - {"glEndFragmentShaderATI", "()V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glEndFragmentShaderATI, "glEndFragmentShaderATI", (void*)&glEndFragmentShaderATI}, - {"glPassTexCoordATI", "(III)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glPassTexCoordATI, "glPassTexCoordATI", (void*)&glPassTexCoordATI}, - {"glSampleMapATI", "(III)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glSampleMapATI, "glSampleMapATI", (void*)&glSampleMapATI}, - {"glColorFragmentOp1ATI", "(IIIIIII)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp1ATI, "glColorFragmentOp1ATI", (void*)&glColorFragmentOp1ATI}, - {"glColorFragmentOp2ATI", "(IIIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp2ATI, "glColorFragmentOp2ATI", (void*)&glColorFragmentOp2ATI}, - {"glColorFragmentOp3ATI", "(IIIIIIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp3ATI, "glColorFragmentOp3ATI", (void*)&glColorFragmentOp3ATI}, - {"glAlphaFragmentOp1ATI", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp1ATI, "glAlphaFragmentOp1ATI", (void*)&glAlphaFragmentOp1ATI}, - {"glAlphaFragmentOp2ATI", "(IIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp2ATI, "glAlphaFragmentOp2ATI", (void*)&glAlphaFragmentOp2ATI}, - {"glAlphaFragmentOp3ATI", "(IIIIIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp3ATI, "glAlphaFragmentOp3ATI", (void*)&glAlphaFragmentOp3ATI}, - {"nglSetFragmentShaderConstantATI", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIFragmentShader_nglSetFragmentShaderConstantATI, "glSetFragmentShaderConstantATI", (void*)&glSetFragmentShaderConstantATI} + {"nglSetFragmentShaderConstantATI", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_nglSetFragmentShaderConstantATI, "glSetFragmentShaderConstantATI", (void *)&glSetFragmentShaderConstantATI}, + {"glAlphaFragmentOp3ATI", "(IIIIIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp3ATI, "glAlphaFragmentOp3ATI", (void *)&glAlphaFragmentOp3ATI}, + {"glAlphaFragmentOp2ATI", "(IIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp2ATI, "glAlphaFragmentOp2ATI", (void *)&glAlphaFragmentOp2ATI}, + {"glAlphaFragmentOp1ATI", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glAlphaFragmentOp1ATI, "glAlphaFragmentOp1ATI", (void *)&glAlphaFragmentOp1ATI}, + {"glColorFragmentOp3ATI", "(IIIIIIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp3ATI, "glColorFragmentOp3ATI", (void *)&glColorFragmentOp3ATI}, + {"glColorFragmentOp2ATI", "(IIIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp2ATI, "glColorFragmentOp2ATI", (void *)&glColorFragmentOp2ATI}, + {"glColorFragmentOp1ATI", "(IIIIIII)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glColorFragmentOp1ATI, "glColorFragmentOp1ATI", (void *)&glColorFragmentOp1ATI}, + {"glSampleMapATI", "(III)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glSampleMapATI, "glSampleMapATI", (void *)&glSampleMapATI}, + {"glPassTexCoordATI", "(III)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glPassTexCoordATI, "glPassTexCoordATI", (void *)&glPassTexCoordATI}, + {"glEndFragmentShaderATI", "()V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glEndFragmentShaderATI, "glEndFragmentShaderATI", (void *)&glEndFragmentShaderATI}, + {"glBeginFragmentShaderATI", "()V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glBeginFragmentShaderATI, "glBeginFragmentShaderATI", (void *)&glBeginFragmentShaderATI}, + {"glDeleteFragmentShaderATI", "(I)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glDeleteFragmentShaderATI, "glDeleteFragmentShaderATI", (void *)&glDeleteFragmentShaderATI}, + {"glBindFragmentShaderATI", "(I)V", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glBindFragmentShaderATI, "glBindFragmentShaderATI", (void *)&glBindFragmentShaderATI}, + {"glGenFragmentShadersATI", "(I)I", (void *)&Java_org_lwjgl_opengl_ATIFragmentShader_glGenFragmentShadersATI, "glGenFragmentShadersATI", (void *)&glGenFragmentShadersATI} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ati/org_lwjgl_opengl_ATIMapObjectBuffer.c b/src/native/common/ati/org_lwjgl_opengl_ATIMapObjectBuffer.c index f9f53906..0a909979 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ATIMapObjectBuffer.c +++ b/src/native/common/ati/org_lwjgl_opengl_ATIMapObjectBuffer.c @@ -1,88 +1,28 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ATIMapObjectBuffer -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef void * (APIENTRY * glMapObjectBufferATIPROC) (GLuint buffer); -typedef void (APIENTRY * glUnmapObjectBufferATIPROC) (GLuint buffer); +typedef void (APIENTRY *glUnmapObjectBufferATIPROC) (GLuint buffer); +typedef GLvoid * (APIENTRY *glMapObjectBufferATIPROC) (GLuint buffer); -static glMapObjectBufferATIPROC glMapObjectBufferATI; static glUnmapObjectBufferATIPROC glUnmapObjectBufferATI; +static glMapObjectBufferATIPROC glMapObjectBufferATI; -/* - * Class: org.lwjgl.opengl.ATIMapObjectBuffer - * Method: glMapObjectBufferATI - */ -static jobject JNICALL Java_org_lwjgl_opengl_ATIMapObjectBuffer_glMapObjectBufferATI - (JNIEnv * env, jclass clazz, jint buffer, jint size, jobject oldBuffer) -{ - void *buffer_address = glMapObjectBufferATI((GLenum)buffer); - - if (oldBuffer != NULL) { - void *old_buffer_address = (*env)->GetDirectBufferAddress(env, oldBuffer); - if (old_buffer_address == buffer_address) - return oldBuffer; - } - - return safeNewBuffer(env, buffer_address, size); -} - -/* - * Class: org.lwjgl.opengl.ATIMapObjectBuffer - * Method: glUnmapObjectBufferATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIMapObjectBuffer_glUnmapObjectBufferATI - (JNIEnv * env, jclass clazz, jint buffer) -{ +static void JNICALL Java_org_lwjgl_opengl_ATIMapObjectBuffer_glUnmapObjectBufferATI(JNIEnv *env, jclass clazz, jint buffer) { glUnmapObjectBufferATI(buffer); - } -#ifdef __cplusplus -extern "C" { -#endif +static jobject JNICALL Java_org_lwjgl_opengl_ATIMapObjectBuffer_nglMapObjectBufferATI(JNIEnv *env, jclass clazz, jint buffer, jint result_size, jobject old_buffer) { + GLvoid * __result = glMapObjectBufferATI(buffer); + return safeNewBufferCached(env, __result, result_size, old_buffer); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ATIMapObjectBuffer_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glMapObjectBufferATI", "(IILjava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_ATIMapObjectBuffer_glMapObjectBufferATI, "glMapObjectBufferATI", (void*)&glMapObjectBufferATI}, - {"glUnmapObjectBufferATI", "(I)V", (void*)&Java_org_lwjgl_opengl_ATIMapObjectBuffer_glUnmapObjectBufferATI, "glUnmapObjectBufferATI", (void*)&glUnmapObjectBufferATI} + {"glUnmapObjectBufferATI", "(I)V", (void *)&Java_org_lwjgl_opengl_ATIMapObjectBuffer_glUnmapObjectBufferATI, "glUnmapObjectBufferATI", (void *)&glUnmapObjectBufferATI}, + {"nglMapObjectBufferATI", "(IILjava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_ATIMapObjectBuffer_nglMapObjectBufferATI, "glMapObjectBufferATI", (void *)&glMapObjectBufferATI} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif diff --git a/src/native/common/ati/org_lwjgl_opengl_ATIPnTriangles.c b/src/native/common/ati/org_lwjgl_opengl_ATIPnTriangles.c index b158842c..37d514c7 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ATIPnTriangles.c +++ b/src/native/common/ati/org_lwjgl_opengl_ATIPnTriangles.c @@ -1,79 +1,27 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ATIPnTriangles -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glPNTrianglesiATIPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glPNTrianglesfATIPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY *glPNTrianglesiATIPROC) (GLenum pname, GLint param); +typedef void (APIENTRY *glPNTrianglesfATIPROC) (GLenum pname, GLfloat param); static glPNTrianglesiATIPROC glPNTrianglesiATI; static glPNTrianglesfATIPROC glPNTrianglesfATI; -/* - * Class: org.lwjgl.opengl.ATIPnTriangles - * Method: glPNTrianglesfATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIPnTriangles_glPNTrianglesfATI - (JNIEnv * env, jclass clazz, jint pname, jfloat param) -{ - glPNTrianglesfATI(pname, param); -} - -/* - * Class: org.lwjgl.opengl.ATIPnTriangles - * Method: glPNTrianglesiATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIPnTriangles_glPNTrianglesiATI - (JNIEnv * env, jclass clazz, jint pname, jint param) -{ +static void JNICALL Java_org_lwjgl_opengl_ATIPnTriangles_glPNTrianglesiATI(JNIEnv *env, jclass clazz, jint pname, jint param) { glPNTrianglesiATI(pname, param); } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_ATIPnTriangles_glPNTrianglesfATI(JNIEnv *env, jclass clazz, jint pname, jfloat param) { + glPNTrianglesfATI(pname, param); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ATIPnTriangles_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glPNTrianglesfATI", "(IF)V", (void*)&Java_org_lwjgl_opengl_ATIPnTriangles_glPNTrianglesfATI, "glPNTrianglesfATI", (void*)&glPNTrianglesfATI}, - {"glPNTrianglesiATI", "(II)V", (void*)&Java_org_lwjgl_opengl_ATIPnTriangles_glPNTrianglesiATI, "glPNTrianglesiATI", (void*)&glPNTrianglesiATI} + {"glPNTrianglesiATI", "(II)V", (void *)&Java_org_lwjgl_opengl_ATIPnTriangles_glPNTrianglesiATI, "glPNTrianglesiATI", (void *)&glPNTrianglesiATI}, + {"glPNTrianglesfATI", "(IF)V", (void *)&Java_org_lwjgl_opengl_ATIPnTriangles_glPNTrianglesfATI, "glPNTrianglesfATI", (void *)&glPNTrianglesfATI} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ati/org_lwjgl_opengl_ATISeparateStencil.c b/src/native/common/ati/org_lwjgl_opengl_ATISeparateStencil.c index 96cca307..6a49fe54 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ATISeparateStencil.c +++ b/src/native/common/ati/org_lwjgl_opengl_ATISeparateStencil.c @@ -1,79 +1,27 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ATISeparateStencil -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glStencilOpSeparateATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); -typedef void (APIENTRY * glStencilFuncSeparateATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +typedef void (APIENTRY *glStencilFuncSeparateATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); +typedef void (APIENTRY *glStencilOpSeparateATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); -static glStencilOpSeparateATIPROC glStencilOpSeparateATI; static glStencilFuncSeparateATIPROC glStencilFuncSeparateATI; +static glStencilOpSeparateATIPROC glStencilOpSeparateATI; -/* - * Class: org.lwjgl.opengl.ATISeparateStencil - * Method: glStencilOpSeparateATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATISeparateStencil_glStencilOpSeparateATI - (JNIEnv * env, jclass clazz, jint face, jint sfail, jint dpfail, jint dppass) -{ - glStencilOpSeparateATI(face, sfail, dpfail, dppass); -} - -/* - * Class: org.lwjgl.opengl.ATISeparateStencil - * Method: glStencilFuncSeparateATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATISeparateStencil_glStencilFuncSeparateATI - (JNIEnv * env, jclass clazz, jint frontfunc, jint backfunc, jint ref, jint mask) -{ +static void JNICALL Java_org_lwjgl_opengl_ATISeparateStencil_glStencilFuncSeparateATI(JNIEnv *env, jclass clazz, jint frontfunc, jint backfunc, jint ref, jint mask) { glStencilFuncSeparateATI(frontfunc, backfunc, ref, mask); } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_ATISeparateStencil_glStencilOpSeparateATI(JNIEnv *env, jclass clazz, jint face, jint sfail, jint dpfail, jint dppass) { + glStencilOpSeparateATI(face, sfail, dpfail, dppass); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ATISeparateStencil_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glStencilOpSeparateATI", "(IIII)V", (void*)&Java_org_lwjgl_opengl_ATISeparateStencil_glStencilOpSeparateATI, "glStencilOpSeparateATI", (void*)&glStencilOpSeparateATI}, - {"glStencilFuncSeparateATI", "(IIII)V", (void*)&Java_org_lwjgl_opengl_ATISeparateStencil_glStencilFuncSeparateATI, "glStencilFuncSeparateATI", (void*)&glStencilFuncSeparateATI} + {"glStencilFuncSeparateATI", "(IIII)V", (void *)&Java_org_lwjgl_opengl_ATISeparateStencil_glStencilFuncSeparateATI, "glStencilFuncSeparateATI", (void *)&glStencilFuncSeparateATI}, + {"glStencilOpSeparateATI", "(IIII)V", (void *)&Java_org_lwjgl_opengl_ATISeparateStencil_glStencilOpSeparateATI, "glStencilOpSeparateATI", (void *)&glStencilOpSeparateATI} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ati/org_lwjgl_opengl_ATIVertexArrayObject.c b/src/native/common/ati/org_lwjgl_opengl_ATIVertexArrayObject.c index b09dcc6b..44c3ed75 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ATIVertexArrayObject.c +++ b/src/native/common/ati/org_lwjgl_opengl_ATIVertexArrayObject.c @@ -1,232 +1,107 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ATIVertexArrayObject -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef GLuint (APIENTRY * glNewObjectBufferATIPROC) (GLsizei size, const GLvoid *pointer, GLenum usage); -typedef GLboolean (APIENTRY * glIsObjectBufferATIPROC) (GLuint buffer); -typedef void (APIENTRY * glUpdateObjectBufferATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const GLvoid *pointer, GLenum preserve); -typedef void (APIENTRY * glGetObjectBufferfvATIPROC) (GLuint buffer, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetObjectBufferivATIPROC) (GLuint buffer, GLenum pname, GLint *params); -typedef void (APIENTRY * glFreeObjectBufferATIPROC) (GLuint buffer); -typedef void (APIENTRY * glArrayObjectATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); -typedef void (APIENTRY * glGetArrayObjectfvATIPROC) (GLenum array, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetArrayObjectivATIPROC) (GLenum array, GLenum pname, GLint *params); -typedef void (APIENTRY * glVariantArrayObjectATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); -typedef void (APIENTRY * glGetVariantArrayObjectfvATIPROC) (GLuint id, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetVariantArrayObjectivATIPROC) (GLuint id, GLenum pname, GLint *params); +typedef void (APIENTRY *glGetVariantArrayObjectivATIPROC) (GLuint id, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetVariantArrayObjectfvATIPROC) (GLuint id, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glVariantArrayObjectATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); +typedef void (APIENTRY *glGetArrayObjectivATIPROC) (GLenum array, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetArrayObjectfvATIPROC) (GLenum array, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glArrayObjectATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset); +typedef void (APIENTRY *glFreeObjectBufferATIPROC) (GLuint buffer); +typedef void (APIENTRY *glGetObjectBufferivATIPROC) (GLuint buffer, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetObjectBufferfvATIPROC) (GLuint buffer, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glUpdateObjectBufferATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const GLvoid * pPointer, GLenum preserve); +typedef GLboolean (APIENTRY *glIsObjectBufferATIPROC) (GLuint buffer); +typedef GLuint (APIENTRY *glNewObjectBufferATIPROC) (GLsizei size, const GLvoid * pPointer, GLenum usage); -static glNewObjectBufferATIPROC glNewObjectBufferATI; -static glIsObjectBufferATIPROC glIsObjectBufferATI; -static glUpdateObjectBufferATIPROC glUpdateObjectBufferATI; -static glGetObjectBufferfvATIPROC glGetObjectBufferfvATI; -static glGetObjectBufferivATIPROC glGetObjectBufferivATI; -static glFreeObjectBufferATIPROC glFreeObjectBufferATI; -static glArrayObjectATIPROC glArrayObjectATI; -static glGetArrayObjectfvATIPROC glGetArrayObjectfvATI; -static glGetArrayObjectivATIPROC glGetArrayObjectivATI; -static glVariantArrayObjectATIPROC glVariantArrayObjectATI; -static glGetVariantArrayObjectfvATIPROC glGetVariantArrayObjectfvATI; static glGetVariantArrayObjectivATIPROC glGetVariantArrayObjectivATI; +static glGetVariantArrayObjectfvATIPROC glGetVariantArrayObjectfvATI; +static glVariantArrayObjectATIPROC glVariantArrayObjectATI; +static glGetArrayObjectivATIPROC glGetArrayObjectivATI; +static glGetArrayObjectfvATIPROC glGetArrayObjectfvATI; +static glArrayObjectATIPROC glArrayObjectATI; +static glFreeObjectBufferATIPROC glFreeObjectBufferATI; +static glGetObjectBufferivATIPROC glGetObjectBufferivATI; +static glGetObjectBufferfvATIPROC glGetObjectBufferfvATI; +static glUpdateObjectBufferATIPROC glUpdateObjectBufferATI; +static glIsObjectBufferATIPROC glIsObjectBufferATI; +static glNewObjectBufferATIPROC glNewObjectBufferATI; -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: nglNewObjectBufferATI - */ -static jint JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglNewObjectBufferATI - (JNIEnv * env, jclass clazz, jint size, jobject pPointer, jint pPointer_offset, jint usage) -{ - GLvoid *pPointer_ptr = (GLvoid *)((char *)safeGetBufferAddress(env, pPointer) + pPointer_offset); - GLuint result = glNewObjectBufferATI(size, pPointer_ptr, usage); - - return result; +static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetVariantArrayObjectivATI(JNIEnv *env, jclass clazz, jint id, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetVariantArrayObjectivATI(id, pname, params_address); } -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: glIsObjectBufferATI - */ -static jboolean JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_glIsObjectBufferATI - (JNIEnv * env, jclass clazz, jint buffer) -{ - GLboolean result = glIsObjectBufferATI(buffer); - - return result; +static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetVariantArrayObjectfvATI(JNIEnv *env, jclass clazz, jint id, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetVariantArrayObjectfvATI(id, pname, params_address); } -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: nglUpdateObjectBufferATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglUpdateObjectBufferATI - (JNIEnv * env, jclass clazz, jint buffer, jint offset, jint size, jobject pPointer, jint pPointer_offset, jint preserve) -{ - GLvoid *pPointer_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pPointer) + pPointer_offset); - glUpdateObjectBufferATI(buffer, offset, size, pPointer_ptr, preserve); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: nglGetObjectBufferfvATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetObjectBufferfvATI - (JNIEnv * env, jclass clazz, jint buffer, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glGetObjectBufferfvATI(buffer, pname, pfParams_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: nglGetObjectBufferivATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetObjectBufferivATI - (JNIEnv * env, jclass clazz, jint buffer, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glGetObjectBufferivATI(buffer, pname, piParams_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: glFreeObjectBufferATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_glFreeObjectBufferATI - (JNIEnv * env, jclass clazz, jint buffer) -{ - glFreeObjectBufferATI(buffer); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: glArrayObjectATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_glArrayObjectATI - (JNIEnv * env, jclass clazz, jint array, jint size, jint type, jint stride, jint buffer, jint offset) -{ - glArrayObjectATI(array, size, type, stride, buffer, offset); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: nglGetArrayObjectfvATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetArrayObjectfvATI - (JNIEnv * env, jclass clazz, jint array, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glGetArrayObjectfvATI(array, pname, pfParams_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: nglGetArrayObjectivATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetArrayObjectivATI - (JNIEnv * env, jclass clazz, jint array, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glGetArrayObjectivATI(array, pname, piParams_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: glVariantArrayObjectATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_glVariantArrayObjectATI - (JNIEnv * env, jclass clazz, jint id, jint type, jint stride, jint buffer, jint offset) -{ +static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_glVariantArrayObjectATI(JNIEnv *env, jclass clazz, jint id, jint type, jint stride, jint buffer, jint offset) { glVariantArrayObjectATI(id, type, stride, buffer, offset); - } -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: nglGetVariantArrayObjectfvATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetVariantArrayObjectfvATI - (JNIEnv * env, jclass clazz, jint id, jint pname, jobject pfParams, jint pfParams_offset_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset_offset; - glGetVariantArrayObjectfvATI(id, pname, pfParams_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetArrayObjectivATI(JNIEnv *env, jclass clazz, jint array, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetArrayObjectivATI(array, pname, params_address); } -/* - * Class: org.lwjgl.opengl.ATIVertexArrayObject - * Method: nglGetVariantArrayObjectivATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetVariantArrayObjectivATI - (JNIEnv * env, jclass clazz, jint id, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glGetVariantArrayObjectivATI(id, pname, piParams_ptr); - +static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetArrayObjectfvATI(JNIEnv *env, jclass clazz, jint array, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetArrayObjectfvATI(array, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_glArrayObjectATI(JNIEnv *env, jclass clazz, jint array, jint size, jint type, jint stride, jint buffer, jint offset) { + glArrayObjectATI(array, size, type, stride, buffer, offset); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_glFreeObjectBufferATI(JNIEnv *env, jclass clazz, jint buffer) { + glFreeObjectBufferATI(buffer); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetObjectBufferivATI(JNIEnv *env, jclass clazz, jint buffer, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetObjectBufferivATI(buffer, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetObjectBufferfvATI(JNIEnv *env, jclass clazz, jint buffer, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetObjectBufferfvATI(buffer, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglUpdateObjectBufferATI(JNIEnv *env, jclass clazz, jint buffer, jint offset, jint size, jobject pPointer, jint pPointer_position, jint preserve) { + const GLvoid *pPointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pPointer)) + pPointer_position)); + glUpdateObjectBufferATI(buffer, offset, size, pPointer_address, preserve); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_glIsObjectBufferATI(JNIEnv *env, jclass clazz, jint buffer) { + GLboolean __result = glIsObjectBufferATI(buffer); + return __result; +} + +static jint JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_nglNewObjectBufferATI(JNIEnv *env, jclass clazz, jint size, jobject pPointer, jint pPointer_position, jint usage) { + const GLvoid *pPointer_address = ((const GLvoid *)(((char *)safeGetBufferAddress(env, pPointer)) + pPointer_position)); + GLuint __result = glNewObjectBufferATI(size, pPointer_address, usage); + return __result; } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ATIVertexArrayObject_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglNewObjectBufferATI", "(ILjava/nio/Buffer;II)I", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglNewObjectBufferATI, "glNewObjectBufferATI", (void*)&glNewObjectBufferATI}, - {"glIsObjectBufferATI", "(I)Z", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_glIsObjectBufferATI, "glIsObjectBufferATI", (void*)&glIsObjectBufferATI}, - {"nglUpdateObjectBufferATI", "(IIILjava/nio/Buffer;II)V", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglUpdateObjectBufferATI, "glUpdateObjectBufferATI", (void*)&glUpdateObjectBufferATI}, - {"nglGetObjectBufferfvATI", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetObjectBufferfvATI, "glGetObjectBufferfvATI", (void*)&glGetObjectBufferfvATI}, - {"nglGetObjectBufferivATI", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetObjectBufferivATI, "glGetObjectBufferivATI", (void*)&glGetObjectBufferivATI}, - {"glFreeObjectBufferATI", "(I)V", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_glFreeObjectBufferATI, "glFreeObjectBufferATI", (void*)&glFreeObjectBufferATI}, - {"glArrayObjectATI", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_glArrayObjectATI, "glArrayObjectATI", (void*)&glArrayObjectATI}, - {"nglGetArrayObjectfvATI", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetArrayObjectfvATI, "glGetArrayObjectfvATI", (void*)&glGetArrayObjectfvATI}, - {"nglGetArrayObjectivATI", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetArrayObjectivATI, "glGetArrayObjectivATI", (void*)&glGetArrayObjectivATI}, - {"glVariantArrayObjectATI", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_glVariantArrayObjectATI, "glVariantArrayObjectATI", (void*)&glVariantArrayObjectATI}, - {"nglGetVariantArrayObjectfvATI", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetVariantArrayObjectfvATI, "glGetVariantArrayObjectfvATI", (void*)&glGetVariantArrayObjectfvATI}, - {"nglGetVariantArrayObjectivATI", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetVariantArrayObjectivATI, "glGetVariantArrayObjectivATI", (void*)&glGetVariantArrayObjectivATI} + {"nglGetVariantArrayObjectivATI", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetVariantArrayObjectivATI, "glGetVariantArrayObjectivATI", (void *)&glGetVariantArrayObjectivATI}, + {"nglGetVariantArrayObjectfvATI", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetVariantArrayObjectfvATI, "glGetVariantArrayObjectfvATI", (void *)&glGetVariantArrayObjectfvATI}, + {"glVariantArrayObjectATI", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_glVariantArrayObjectATI, "glVariantArrayObjectATI", (void *)&glVariantArrayObjectATI}, + {"nglGetArrayObjectivATI", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetArrayObjectivATI, "glGetArrayObjectivATI", (void *)&glGetArrayObjectivATI}, + {"nglGetArrayObjectfvATI", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetArrayObjectfvATI, "glGetArrayObjectfvATI", (void *)&glGetArrayObjectfvATI}, + {"glArrayObjectATI", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_glArrayObjectATI, "glArrayObjectATI", (void *)&glArrayObjectATI}, + {"glFreeObjectBufferATI", "(I)V", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_glFreeObjectBufferATI, "glFreeObjectBufferATI", (void *)&glFreeObjectBufferATI}, + {"nglGetObjectBufferivATI", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetObjectBufferivATI, "glGetObjectBufferivATI", (void *)&glGetObjectBufferivATI}, + {"nglGetObjectBufferfvATI", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglGetObjectBufferfvATI, "glGetObjectBufferfvATI", (void *)&glGetObjectBufferfvATI}, + {"nglUpdateObjectBufferATI", "(IIILjava/nio/Buffer;II)V", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglUpdateObjectBufferATI, "glUpdateObjectBufferATI", (void *)&glUpdateObjectBufferATI}, + {"glIsObjectBufferATI", "(I)Z", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_glIsObjectBufferATI, "glIsObjectBufferATI", (void *)&glIsObjectBufferATI}, + {"nglNewObjectBufferATI", "(ILjava/nio/Buffer;II)I", (void *)&Java_org_lwjgl_opengl_ATIVertexArrayObject_nglNewObjectBufferATI, "glNewObjectBufferATI", (void *)&glNewObjectBufferATI} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ati/org_lwjgl_opengl_ATIVertexAttribArrayObject.c b/src/native/common/ati/org_lwjgl_opengl_ATIVertexAttribArrayObject.c index 653fd2c4..10f549de 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ATIVertexAttribArrayObject.c +++ b/src/native/common/ati/org_lwjgl_opengl_ATIVertexAttribArrayObject.c @@ -1,97 +1,36 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ATIVertexAttribArrayObject -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glVertexAttribArrayObjectATIPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset); -typedef void (APIENTRY * glGetVertexAttribArrayObjectfvATIPROC) (GLuint index, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetVertexAttribArrayObjectivATIPROC) (GLuint index, GLenum pname, GLint *params); +typedef void (APIENTRY *glGetVertexAttribArrayObjectivATIPROC) (GLuint index, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetVertexAttribArrayObjectfvATIPROC) (GLuint index, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glVertexAttribArrayObjectATIPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset); -static glVertexAttribArrayObjectATIPROC glVertexAttribArrayObjectATI; -static glGetVertexAttribArrayObjectfvATIPROC glGetVertexAttribArrayObjectfvATI; static glGetVertexAttribArrayObjectivATIPROC glGetVertexAttribArrayObjectivATI; +static glGetVertexAttribArrayObjectfvATIPROC glGetVertexAttribArrayObjectfvATI; +static glVertexAttribArrayObjectATIPROC glVertexAttribArrayObjectATI; -/* - * Class: org.lwjgl.opengl.ATIVertexAttribArrayObject - * Method: glVertexAttribArrayObjectATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_glVertexAttribArrayObjectATI - (JNIEnv * env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jint buffer, jint offset) -{ +static void JNICALL Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectivATI(JNIEnv *env, jclass clazz, jint index, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetVertexAttribArrayObjectivATI(index, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectfvATI(JNIEnv *env, jclass clazz, jint index, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetVertexAttribArrayObjectfvATI(index, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_glVertexAttribArrayObjectATI(JNIEnv *env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jint buffer, jint offset) { glVertexAttribArrayObjectATI(index, size, type, normalized, stride, buffer, offset); - } -/* - * Class: org.lwjgl.opengl.ATIVertexAttribArrayObject - * Method: nglGetVertexAttribArrayObjectfvATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectfvATI - (JNIEnv * env, jclass clazz, jint index, jint pname, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetVertexAttribArrayObjectfvATI(index, pname, params_ptr); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexAttribArrayObject - * Method: nglGetVertexAttribArrayObjectivATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectivATI - (JNIEnv * env, jclass clazz, jint index, jint pname, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetVertexAttribArrayObjectivATI(index, pname, params_ptr); - -} - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glVertexAttribArrayObjectATI", "(IIIZIII)V", (void*)&Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_glVertexAttribArrayObjectATI, "glVertexAttribArrayObjectATI", (void*)&glVertexAttribArrayObjectATI}, - {"nglGetVertexAttribArrayObjectfvATI", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectfvATI, "glGetVertexAttribArrayObjectfvATI", (void*)&glGetVertexAttribArrayObjectfvATI}, - {"nglGetVertexAttribArrayObjectivATI", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectivATI, "glGetVertexAttribArrayObjectivATI", (void*)&glGetVertexAttribArrayObjectivATI} + {"nglGetVertexAttribArrayObjectivATI", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectivATI, "glGetVertexAttribArrayObjectivATI", (void *)&glGetVertexAttribArrayObjectivATI}, + {"nglGetVertexAttribArrayObjectfvATI", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_nglGetVertexAttribArrayObjectfvATI, "glGetVertexAttribArrayObjectfvATI", (void *)&glGetVertexAttribArrayObjectfvATI}, + {"glVertexAttribArrayObjectATI", "(IIIZIII)V", (void *)&Java_org_lwjgl_opengl_ATIVertexAttribArrayObject_glVertexAttribArrayObjectATI, "glVertexAttribArrayObjectATI", (void *)&glVertexAttribArrayObjectATI} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ati/org_lwjgl_opengl_ATIVertexStreams.c b/src/native/common/ati/org_lwjgl_opengl_ATIVertexStreams.c index cc556843..4813e952 100644 --- a/src/native/common/ati/org_lwjgl_opengl_ATIVertexStreams.c +++ b/src/native/common/ati/org_lwjgl_opengl_ATIVertexStreams.c @@ -1,319 +1,125 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.ATIVertexStreams -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glClientActiveVertexStreamATIPROC) (GLenum stream); -typedef void (APIENTRY * glVertexBlendEnviATIPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glVertexBlendEnvfATIPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glVertexStream1sATIPROC) (GLenum stream, GLshort x); -typedef void (APIENTRY * glVertexStream1iATIPROC) (GLenum stream, GLint x); -typedef void (APIENTRY * glVertexStream1fATIPROC) (GLenum stream, GLfloat x); -typedef void (APIENTRY * glVertexStream2sATIPROC) (GLenum stream, GLshort x, GLshort y); -typedef void (APIENTRY * glVertexStream2iATIPROC) (GLenum stream, GLint x, GLint y); -typedef void (APIENTRY * glVertexStream2fATIPROC) (GLenum stream, GLfloat x, GLfloat y); -typedef void (APIENTRY * glVertexStream3sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glVertexStream3iATIPROC) (GLenum stream, GLint x, GLint y, GLint z); -typedef void (APIENTRY * glVertexStream3fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glVertexStream4sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (APIENTRY * glVertexStream4iATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w); -typedef void (APIENTRY * glVertexStream4fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glNormalStream3bATIPROC) (GLenum stream, GLbyte x, GLbyte y, GLbyte z); -typedef void (APIENTRY * glNormalStream3sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glNormalStream3iATIPROC) (GLenum stream, GLint x, GLint y, GLint z); -typedef void (APIENTRY * glNormalStream3fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glVertexBlendEnviATIPROC) (GLenum pname, GLint param); +typedef void (APIENTRY *glVertexBlendEnvfATIPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY *glClientActiveVertexStreamATIPROC) (GLenum stream); +typedef void (APIENTRY *glNormalStream3sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY *glNormalStream3iATIPROC) (GLenum stream, GLint x, GLint y, GLint z); +typedef void (APIENTRY *glNormalStream3fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glNormalStream3bATIPROC) (GLenum stream, GLbyte x, GLbyte y, GLbyte z); +typedef void (APIENTRY *glVertexStream4sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (APIENTRY *glVertexStream4iATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w); +typedef void (APIENTRY *glVertexStream4fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY *glVertexStream3sATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY *glVertexStream3iATIPROC) (GLenum stream, GLint x, GLint y, GLint z); +typedef void (APIENTRY *glVertexStream3fATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glVertexStream2sATIPROC) (GLenum stream, GLshort x, GLshort y); +typedef void (APIENTRY *glVertexStream2iATIPROC) (GLenum stream, GLint x, GLint y); +typedef void (APIENTRY *glVertexStream2fATIPROC) (GLenum stream, GLfloat x, GLfloat y); -static glClientActiveVertexStreamATIPROC glClientActiveVertexStreamATI; static glVertexBlendEnviATIPROC glVertexBlendEnviATI; static glVertexBlendEnvfATIPROC glVertexBlendEnvfATI; -static glVertexStream1sATIPROC glVertexStream1sATI; -static glVertexStream1iATIPROC glVertexStream1iATI; -static glVertexStream1fATIPROC glVertexStream1fATI; -static glVertexStream2sATIPROC glVertexStream2sATI; -static glVertexStream2iATIPROC glVertexStream2iATI; -static glVertexStream2fATIPROC glVertexStream2fATI; -static glVertexStream3sATIPROC glVertexStream3sATI; -static glVertexStream3iATIPROC glVertexStream3iATI; -static glVertexStream3fATIPROC glVertexStream3fATI; -static glVertexStream4sATIPROC glVertexStream4sATI; -static glVertexStream4iATIPROC glVertexStream4iATI; -static glVertexStream4fATIPROC glVertexStream4fATI; -static glNormalStream3bATIPROC glNormalStream3bATI; +static glClientActiveVertexStreamATIPROC glClientActiveVertexStreamATI; static glNormalStream3sATIPROC glNormalStream3sATI; static glNormalStream3iATIPROC glNormalStream3iATI; static glNormalStream3fATIPROC glNormalStream3fATI; +static glNormalStream3bATIPROC glNormalStream3bATI; +static glVertexStream4sATIPROC glVertexStream4sATI; +static glVertexStream4iATIPROC glVertexStream4iATI; +static glVertexStream4fATIPROC glVertexStream4fATI; +static glVertexStream3sATIPROC glVertexStream3sATI; +static glVertexStream3iATIPROC glVertexStream3iATI; +static glVertexStream3fATIPROC glVertexStream3fATI; +static glVertexStream2sATIPROC glVertexStream2sATI; +static glVertexStream2iATIPROC glVertexStream2iATI; +static glVertexStream2fATIPROC glVertexStream2fATI; -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream1fATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream1fATI - (JNIEnv * env, jclass clazz, jint stream, jfloat x) -{ - glVertexStream1fATI(stream, x); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream1iATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream1iATI - (JNIEnv * env, jclass clazz, jint stream, jint x) -{ - glVertexStream1iATI(stream, x); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream1sATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream1sATI - (JNIEnv * env, jclass clazz, jint stream, jshort x) -{ - glVertexStream1sATI(stream, x); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream2fATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2fATI - (JNIEnv * env, jclass clazz, jint stream, jfloat x, jfloat y) -{ - glVertexStream2fATI(stream, x, y); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream2iATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2iATI - (JNIEnv * env, jclass clazz, jint stream, jint x, jint y) -{ - glVertexStream2iATI(stream, x, y); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream2sATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2sATI - (JNIEnv * env, jclass clazz, jint stream, jshort x, jshort y) -{ - glVertexStream2sATI(stream, x, y); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream3fATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3fATI - (JNIEnv * env, jclass clazz, jint stream, jfloat x, jfloat y, jfloat z) -{ - glVertexStream3fATI(stream, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream3iATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3iATI - (JNIEnv * env, jclass clazz, jint stream, jint x, jint y, jint z) -{ - glVertexStream3iATI(stream, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream3sATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3sATI - (JNIEnv * env, jclass clazz, jint stream, jshort x, jshort y, jshort z) -{ - glVertexStream3sATI(stream, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream4fATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4fATI - (JNIEnv * env, jclass clazz, jint stream, jfloat x, jfloat y, jfloat z, jfloat w) -{ - glVertexStream4fATI(stream, x, y, z, w); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream4iATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4iATI - (JNIEnv * env, jclass clazz, jint stream, jint x, jint y, jint z, jint w) -{ - glVertexStream4iATI(stream, x, y, z, w); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexStream4sATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4sATI - (JNIEnv * env, jclass clazz, jint stream, jshort x, jshort y, jshort z, jshort w) -{ - glVertexStream4sATI(stream, x, y, z, w); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glNormalStream3bATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3bATI - (JNIEnv * env, jclass clazz, jint stream, jbyte x, jbyte y, jbyte z) -{ - glNormalStream3bATI(stream, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glNormalStream3fATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3fATI - (JNIEnv * env, jclass clazz, jint stream, jfloat x, jfloat y, jfloat z) -{ - glNormalStream3fATI(stream, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glNormalStream3iATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3iATI - (JNIEnv * env, jclass clazz, jint stream, jint x, jint y, jint z) -{ - glNormalStream3iATI(stream, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glNormalStream3sATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3sATI - (JNIEnv * env, jclass clazz, jint stream, jshort x, jshort y, jshort z) -{ - glNormalStream3sATI(stream, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glClientActiveVertexStreamATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glClientActiveVertexStreamATI - (JNIEnv * env, jclass clazz, jint stream) -{ - glClientActiveVertexStreamATI(stream); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexBlendEnvfATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexBlendEnvfATI - (JNIEnv * env, jclass clazz, jint pname, jfloat param) -{ - glVertexBlendEnvfATI(pname, param); - -} - -/* - * Class: org.lwjgl.opengl.ATIVertexStreams - * Method: glVertexBlendEnviATI - */ -static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexBlendEnviATI - (JNIEnv * env, jclass clazz, jint pname, jint param) -{ +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexBlendEnviATI(JNIEnv *env, jclass clazz, jint pname, jint param) { glVertexBlendEnviATI(pname, param); - } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexBlendEnvfATI(JNIEnv *env, jclass clazz, jint pname, jfloat param) { + glVertexBlendEnvfATI(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glClientActiveVertexStreamATI(JNIEnv *env, jclass clazz, jint stream) { + glClientActiveVertexStreamATI(stream); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3sATI(JNIEnv *env, jclass clazz, jint stream, jshort x, jshort y, jshort z) { + glNormalStream3sATI(stream, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3iATI(JNIEnv *env, jclass clazz, jint stream, jint x, jint y, jint z) { + glNormalStream3iATI(stream, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3fATI(JNIEnv *env, jclass clazz, jint stream, jfloat x, jfloat y, jfloat z) { + glNormalStream3fATI(stream, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3bATI(JNIEnv *env, jclass clazz, jint stream, jbyte x, jbyte y, jbyte z) { + glNormalStream3bATI(stream, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4sATI(JNIEnv *env, jclass clazz, jint stream, jshort x, jshort y, jshort z, jshort w) { + glVertexStream4sATI(stream, x, y, z, w); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4iATI(JNIEnv *env, jclass clazz, jint stream, jint x, jint y, jint z, jint w) { + glVertexStream4iATI(stream, x, y, z, w); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4fATI(JNIEnv *env, jclass clazz, jint stream, jfloat x, jfloat y, jfloat z, jfloat w) { + glVertexStream4fATI(stream, x, y, z, w); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3sATI(JNIEnv *env, jclass clazz, jint stream, jshort x, jshort y, jshort z) { + glVertexStream3sATI(stream, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3iATI(JNIEnv *env, jclass clazz, jint stream, jint x, jint y, jint z) { + glVertexStream3iATI(stream, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3fATI(JNIEnv *env, jclass clazz, jint stream, jfloat x, jfloat y, jfloat z) { + glVertexStream3fATI(stream, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2sATI(JNIEnv *env, jclass clazz, jint stream, jshort x, jshort y) { + glVertexStream2sATI(stream, x, y); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2iATI(JNIEnv *env, jclass clazz, jint stream, jint x, jint y) { + glVertexStream2iATI(stream, x, y); +} + +static void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2fATI(JNIEnv *env, jclass clazz, jint stream, jfloat x, jfloat y) { + glVertexStream2fATI(stream, x, y); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_ATIVertexStreams_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glVertexStream1fATI", "(IF)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream1fATI, "glVertexStream1fATI", (void*)&glVertexStream1fATI}, - {"glVertexStream1iATI", "(II)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream1iATI, "glVertexStream1iATI", (void*)&glVertexStream1iATI}, - {"glVertexStream1sATI", "(IS)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream1sATI, "glVertexStream1sATI", (void*)&glVertexStream1sATI}, - {"glVertexStream2fATI", "(IFF)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2fATI, "glVertexStream2fATI", (void*)&glVertexStream2fATI}, - {"glVertexStream2iATI", "(III)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2iATI, "glVertexStream2iATI", (void*)&glVertexStream2iATI}, - {"glVertexStream2sATI", "(ISS)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2sATI, "glVertexStream2sATI", (void*)&glVertexStream2sATI}, - {"glVertexStream3fATI", "(IFFF)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3fATI, "glVertexStream3fATI", (void*)&glVertexStream3fATI}, - {"glVertexStream3iATI", "(IIII)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3iATI, "glVertexStream3iATI", (void*)&glVertexStream3iATI}, - {"glVertexStream3sATI", "(ISSS)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3sATI, "glVertexStream3sATI", (void*)&glVertexStream3sATI}, - {"glVertexStream4fATI", "(IFFFF)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4fATI, "glVertexStream4fATI", (void*)&glVertexStream4fATI}, - {"glVertexStream4iATI", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4iATI, "glVertexStream4iATI", (void*)&glVertexStream4iATI}, - {"glVertexStream4sATI", "(ISSSS)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4sATI, "glVertexStream4sATI", (void*)&glVertexStream4sATI}, - {"glNormalStream3bATI", "(IBBB)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3bATI, "glNormalStream3bATI", (void*)&glNormalStream3bATI}, - {"glNormalStream3fATI", "(IFFF)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3fATI, "glNormalStream3fATI", (void*)&glNormalStream3fATI}, - {"glNormalStream3iATI", "(IIII)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3iATI, "glNormalStream3iATI", (void*)&glNormalStream3iATI}, - {"glNormalStream3sATI", "(ISSS)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3sATI, "glNormalStream3sATI", (void*)&glNormalStream3sATI}, - {"glClientActiveVertexStreamATI", "(I)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glClientActiveVertexStreamATI, "glClientActiveVertexStreamATI", (void*)&glClientActiveVertexStreamATI}, - {"glVertexBlendEnvfATI", "(IF)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexBlendEnvfATI, "glVertexBlendEnvfATI", (void*)&glVertexBlendEnvfATI}, - {"glVertexBlendEnviATI", "(II)V", (void*)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexBlendEnviATI, "glVertexBlendEnviATI", (void*)&glVertexBlendEnviATI} + {"glVertexBlendEnviATI", "(II)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexBlendEnviATI, "glVertexBlendEnviATI", (void *)&glVertexBlendEnviATI}, + {"glVertexBlendEnvfATI", "(IF)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexBlendEnvfATI, "glVertexBlendEnvfATI", (void *)&glVertexBlendEnvfATI}, + {"glClientActiveVertexStreamATI", "(I)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glClientActiveVertexStreamATI, "glClientActiveVertexStreamATI", (void *)&glClientActiveVertexStreamATI}, + {"glNormalStream3sATI", "(ISSS)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3sATI, "glNormalStream3sATI", (void *)&glNormalStream3sATI}, + {"glNormalStream3iATI", "(IIII)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3iATI, "glNormalStream3iATI", (void *)&glNormalStream3iATI}, + {"glNormalStream3fATI", "(IFFF)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3fATI, "glNormalStream3fATI", (void *)&glNormalStream3fATI}, + {"glNormalStream3bATI", "(IBBB)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glNormalStream3bATI, "glNormalStream3bATI", (void *)&glNormalStream3bATI}, + {"glVertexStream4sATI", "(ISSSS)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4sATI, "glVertexStream4sATI", (void *)&glVertexStream4sATI}, + {"glVertexStream4iATI", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4iATI, "glVertexStream4iATI", (void *)&glVertexStream4iATI}, + {"glVertexStream4fATI", "(IFFFF)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream4fATI, "glVertexStream4fATI", (void *)&glVertexStream4fATI}, + {"glVertexStream3sATI", "(ISSS)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3sATI, "glVertexStream3sATI", (void *)&glVertexStream3sATI}, + {"glVertexStream3iATI", "(IIII)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3iATI, "glVertexStream3iATI", (void *)&glVertexStream3iATI}, + {"glVertexStream3fATI", "(IFFF)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream3fATI, "glVertexStream3fATI", (void *)&glVertexStream3fATI}, + {"glVertexStream2sATI", "(ISS)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2sATI, "glVertexStream2sATI", (void *)&glVertexStream2sATI}, + {"glVertexStream2iATI", "(III)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2iATI, "glVertexStream2iATI", (void *)&glVertexStream2iATI}, + {"glVertexStream2fATI", "(IFF)V", (void *)&Java_org_lwjgl_opengl_ATIVertexStreams_glVertexStream2fATI, "glVertexStream2fATI", (void *)&glVertexStream2fATI} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/checkALerror.h b/src/native/common/checkALerror.h index a276774c..ad5f1e8d 100644 --- a/src/native/common/checkALerror.h +++ b/src/native/common/checkALerror.h @@ -37,15 +37,6 @@ #include "extal.h" #include "common_tools.h" -#define CHECK_AL_ERROR \ - { \ - int err = alGetError(); \ - if (err != AL_NO_ERROR) { \ - jclass cls = (*env)->FindClass(env, "org/lwjgl/openal/OpenALException"); \ - (*env)->ThrowNew(env, cls, (const char*) alGetString(err)); \ - (*env)->DeleteLocalRef(env, cls); \ - } \ - } /* only available if deviceaddress is specified in method */ #define CHECK_ALC_ERROR \ { \ diff --git a/src/native/common/common_tools.c b/src/native/common/common_tools.c index 7e0a777f..468b0b71 100644 --- a/src/native/common/common_tools.c +++ b/src/native/common/common_tools.c @@ -180,10 +180,6 @@ void throwGeneralException(JNIEnv * env, const char *exception_name, const char (*env)->DeleteLocalRef(env, cls); } -void throwOpenALException(JNIEnv * env, const char * err) { - throwGeneralException(env, "org/lwjgl/openal/OpenALException", err); -} - void throwFMODException(JNIEnv * env, const char * err) { throwGeneralException(env, "org/lwjgl/fmod3/FMODException", err); } diff --git a/src/native/common/common_tools.h b/src/native/common/common_tools.h index 329d9762..190438ca 100644 --- a/src/native/common/common_tools.h +++ b/src/native/common/common_tools.h @@ -91,6 +91,16 @@ static inline jobject safeNewBuffer(JNIEnv *env, void *p, int size) { return NULL; } +static inline jobject safeNewBufferCached(JNIEnv *env, void *p, int size, jobject old_buffer) { + if (old_buffer != NULL) { + void *old_buffer_address = (*env)->GetDirectBufferAddress(env, old_buffer); + if (old_buffer_address == p) + return old_buffer; + } + return safeNewBuffer(env, p, size); + +} + static inline void *offsetToPointer(jint offset) { return (char *)NULL + offset; } @@ -127,7 +137,6 @@ extern int copyEvents(event_queue_t *event_queue, jint *output_event_buffer, int extern bool putEvent(event_queue_t *queue, jint *event); extern void throwGeneralException(JNIEnv * env, const char *exception_name, const char * err); extern void throwException(JNIEnv *env, const char *msg); -extern void throwOpenALException(JNIEnv * env, const char * err); extern void throwFMODException(JNIEnv * env, const char * err); extern void setDebugEnabled(bool enable); extern void printfDebugJava(JNIEnv *env, const char *format, ...); diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTBlendEquationSeparate.c b/src/native/common/ext/org_lwjgl_opengl_EXTBlendEquationSeparate.c index e0db6922..4b8e512d 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTBlendEquationSeparate.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTBlendEquationSeparate.c @@ -1,66 +1,20 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTBlendEquationSeparate -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glBlendEquationSeparateEXTPROC) (GLenum modeRGB, GLenum modeAlpha); +typedef void (APIENTRY *glBlendEquationSeparateEXTPROC) (GLenum modeRGB, GLenum modeAlpha); static glBlendEquationSeparateEXTPROC glBlendEquationSeparateEXT; -/* - * Class: org.lwjgl.opengl.EXTBlendEquationSeparate - * Method: glBlendEquationSeparateEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTBlendEquationSeparate_glBlendEquationSeparateEXT - (JNIEnv * env, jclass clazz, jint modeRGB, jint modeAlpha) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTBlendEquationSeparate_glBlendEquationSeparateEXT(JNIEnv *env, jclass clazz, jint modeRGB, jint modeAlpha) { glBlendEquationSeparateEXT(modeRGB, modeAlpha); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTBlendEquationSeparate_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glBlendEquationSeparateEXT", "(II)V", (void*)&Java_org_lwjgl_opengl_EXTBlendEquationSeparate_glBlendEquationSeparateEXT, "glBlendEquationSeparateEXT", (void*)&glBlendEquationSeparateEXT} + {"glBlendEquationSeparateEXT", "(II)V", (void *)&Java_org_lwjgl_opengl_EXTBlendEquationSeparate_glBlendEquationSeparateEXT, "glBlendEquationSeparateEXT", (void *)&glBlendEquationSeparateEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTBlendFuncSeparate.c b/src/native/common/ext/org_lwjgl_opengl_EXTBlendFuncSeparate.c index f9b2055b..995da2f7 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTBlendFuncSeparate.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTBlendFuncSeparate.c @@ -1,67 +1,20 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTBlendFuncSeparate -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glBlendFuncSeparateEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); +typedef void (APIENTRY *glBlendFuncSeparateEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); static glBlendFuncSeparateEXTPROC glBlendFuncSeparateEXT; -/* - * Class: org.lwjgl.opengl.EXTBlendFuncSeparate - * Method: glBlendFuncSeparateEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTBlendFuncSeparate_glBlendFuncSeparateEXT - (JNIEnv * env, jclass clazz, jint sfactorRGB, jint dfactorRGB, jint sfactorAlpha, jint dfactorAlpha) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTBlendFuncSeparate_glBlendFuncSeparateEXT(JNIEnv *env, jclass clazz, jint sfactorRGB, jint dfactorRGB, jint sfactorAlpha, jint dfactorAlpha) { glBlendFuncSeparateEXT(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); - } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTBlendFuncSeparate_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glBlendFuncSeparateEXT", "(IIII)V", (void*)&Java_org_lwjgl_opengl_EXTBlendFuncSeparate_glBlendFuncSeparateEXT, "glBlendFuncSeparateEXT", (void*)&glBlendFuncSeparateEXT} + {"glBlendFuncSeparateEXT", "(IIII)V", (void *)&Java_org_lwjgl_opengl_EXTBlendFuncSeparate_glBlendFuncSeparateEXT, "glBlendFuncSeparateEXT", (void *)&glBlendFuncSeparateEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTCompiledVertexArray.c b/src/native/common/ext/org_lwjgl_opengl_EXTCompiledVertexArray.c index ff29bbee..cc884cd9 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTCompiledVertexArray.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTCompiledVertexArray.c @@ -1,79 +1,27 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTCompiledVertexArray -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glLockArraysEXTPROC) (GLint first, GLsizei count); -typedef void (APIENTRY * glUnlockArraysEXTPROC) (); +typedef void (APIENTRY *glUnlockArraysEXTPROC) (); +typedef void (APIENTRY *glLockArraysEXTPROC) (GLint first, GLsizei count); -static glLockArraysEXTPROC glLockArraysEXT; static glUnlockArraysEXTPROC glUnlockArraysEXT; +static glLockArraysEXTPROC glLockArraysEXT; -/* - * Class: org.lwjgl.opengl.EXTCompiledVertexArray - * Method: glLockArraysEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTCompiledVertexArray_glLockArraysEXT - (JNIEnv * env, jclass clazz, jint first, jint count) -{ - glLockArraysEXT(first, count); -} - -/* - * Class: org.lwjgl.opengl.EXTCompiledVertexArray - * Method: glUnlockArraysEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTCompiledVertexArray_glUnlockArraysEXT - (JNIEnv * env, jclass clazz) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTCompiledVertexArray_glUnlockArraysEXT(JNIEnv *env, jclass clazz) { glUnlockArraysEXT(); } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_EXTCompiledVertexArray_glLockArraysEXT(JNIEnv *env, jclass clazz, jint first, jint count) { + glLockArraysEXT(first, count); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTCompiledVertexArray_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glLockArraysEXT", "(II)V", (void*)&Java_org_lwjgl_opengl_EXTCompiledVertexArray_glLockArraysEXT, "glLockArraysEXT", (void*)&glLockArraysEXT}, - {"glUnlockArraysEXT", "()V", (void*)&Java_org_lwjgl_opengl_EXTCompiledVertexArray_glUnlockArraysEXT, "glUnlockArraysEXT", (void*)&glUnlockArraysEXT} + {"glUnlockArraysEXT", "()V", (void *)&Java_org_lwjgl_opengl_EXTCompiledVertexArray_glUnlockArraysEXT, "glUnlockArraysEXT", (void *)&glUnlockArraysEXT}, + {"glLockArraysEXT", "(II)V", (void *)&Java_org_lwjgl_opengl_EXTCompiledVertexArray_glLockArraysEXT, "glLockArraysEXT", (void *)&glLockArraysEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTDepthBoundsTest.c b/src/native/common/ext/org_lwjgl_opengl_EXTDepthBoundsTest.c index a5d8fbad..2766b060 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTDepthBoundsTest.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTDepthBoundsTest.c @@ -1,66 +1,20 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTDepthBoundsTest -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glDepthBoundsEXTPROC) (GLclampd zmin, GLclampd zmax); +typedef void (APIENTRY *glDepthBoundsEXTPROC) (GLclampd zmin, GLclampd zmax); static glDepthBoundsEXTPROC glDepthBoundsEXT; -/* - * Class: org.lwjgl.opengl.EXTDepthBoundsTest - * Method: glDepthBoundsEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTDepthBoundsTest_glDepthBoundsEXT - (JNIEnv * env, jclass clazz, jfloat zmin, jfloat zmax) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTDepthBoundsTest_glDepthBoundsEXT(JNIEnv *env, jclass clazz, jdouble zmin, jdouble zmax) { glDepthBoundsEXT(zmin, zmax); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTDepthBoundsTest_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glDepthBoundsEXT", "(FF)V", (void*)&Java_org_lwjgl_opengl_EXTDepthBoundsTest_glDepthBoundsEXT, "glDepthBoundsEXT", (void*)&glDepthBoundsEXT} + {"glDepthBoundsEXT", "(DD)V", (void *)&Java_org_lwjgl_opengl_EXTDepthBoundsTest_glDepthBoundsEXT, "glDepthBoundsEXT", (void *)&glDepthBoundsEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTDrawRangeElements.c b/src/native/common/ext/org_lwjgl_opengl_EXTDrawRangeElements.c index 5757a413..682ea29f 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTDrawRangeElements.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTDrawRangeElements.c @@ -1,80 +1,27 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTDrawRangeElements -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glDrawRangeElementsEXTPROC) ( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices); +typedef void (APIENTRY *glDrawRangeElementsEXTPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * pIndices); static glDrawRangeElementsEXTPROC glDrawRangeElementsEXT; -/* - * Class: org.lwjgl.opengl.EXTDrawRangeElements - * Method: nglDrawRangeElementsEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTDrawRangeElements_nglDrawRangeElementsEXT - (JNIEnv * env, jclass clazz, jint mode, jint start, jint end, jint count, jint type, jobject pIndices, jint pIndices_offset) -{ - GLvoid *pIndices_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pIndices) + pIndices_offset); - glDrawRangeElementsEXT(mode, start, end, count, type, pIndices_ptr); - +static void JNICALL Java_org_lwjgl_opengl_EXTDrawRangeElements_nglDrawRangeElementsEXT(JNIEnv *env, jclass clazz, jint mode, jint start, jint end, jint count, jint type, jobject pIndices, jint pIndices_position) { + const GLvoid *pIndices_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pIndices)) + pIndices_position)); + glDrawRangeElementsEXT(mode, start, end, count, type, pIndices_address); } -/* - * Class: org.lwjgl.opengl.EXTDrawRangeElements - * Method: nglDrawRangeElementsEXTVBO - */ -static void JNICALL Java_org_lwjgl_opengl_EXTDrawRangeElements_nglDrawRangeElementsEXTVBO - (JNIEnv * env, jclass clazz, jint mode, jint start, jint end, jint count, jint type, jint buffer_offset) -{ - glDrawRangeElementsEXT(mode, start, end, count, type, (GLvoid *)buffer_offset); - +static void JNICALL Java_org_lwjgl_opengl_EXTDrawRangeElements_nglDrawRangeElementsEXTBO(JNIEnv *env, jclass clazz, jint mode, jint start, jint end, jint count, jint type, jint pIndices_buffer_offset) { + const GLvoid *pIndices_address = ((const GLvoid *)offsetToPointer(pIndices_buffer_offset)); + glDrawRangeElementsEXT(mode, start, end, count, type, pIndices_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTDrawRangeElements_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglDrawRangeElementsEXT", "(IIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTDrawRangeElements_nglDrawRangeElementsEXT, "glDrawRangeElementsEXT", (void*)&glDrawRangeElementsEXT}, - {"nglDrawRangeElementsEXTVBO", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_EXTDrawRangeElements_nglDrawRangeElementsEXTVBO, NULL, NULL} + {"nglDrawRangeElementsEXT", "(IIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTDrawRangeElements_nglDrawRangeElementsEXT, "glDrawRangeElementsEXT", (void *)&glDrawRangeElementsEXT}, + {"nglDrawRangeElementsEXTBO", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_EXTDrawRangeElements_nglDrawRangeElementsEXTBO, "glDrawRangeElementsEXT", (void *)&glDrawRangeElementsEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTFogCoord.c b/src/native/common/ext/org_lwjgl_opengl_EXTFogCoord.c index fb2d6d68..ee7383b8 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTFogCoord.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTFogCoord.c @@ -1,94 +1,34 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTFogCoord -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glFogCoordfEXTPROC) (GLfloat coord); -typedef void (APIENTRY * glFogCoordPointerEXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY *glFogCoordPointerEXTPROC) (GLenum type, GLsizei stride, const GLvoid * data); +typedef void (APIENTRY *glFogCoordfEXTPROC) (GLfloat coord); -static glFogCoordfEXTPROC glFogCoordfEXT; static glFogCoordPointerEXTPROC glFogCoordPointerEXT; +static glFogCoordfEXTPROC glFogCoordfEXT; -/* - * Class: org.lwjgl.opengl.EXTFogCoord - * Method: glFogCoordfEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFogCoord_glFogCoordfEXT - (JNIEnv * env, jclass clazz, jfloat coord) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTFogCoord_nglFogCoordPointerEXT(JNIEnv *env, jclass clazz, jint type, jint stride, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glFogCoordPointerEXT(type, stride, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFogCoord_nglFogCoordPointerEXTBO(JNIEnv *env, jclass clazz, jint type, jint stride, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glFogCoordPointerEXT(type, stride, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFogCoord_glFogCoordfEXT(JNIEnv *env, jclass clazz, jfloat coord) { glFogCoordfEXT(coord); - } -/* - * Class: org.lwjgl.opengl.EXTFogCoord - * Method: nglFogCoordPointerEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFogCoord_nglFogCoordPointerEXT - (JNIEnv * env, jclass clazz, jint type, jint stride, jobject data, jint data_offset) -{ - GLvoid *data_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, data) + data_offset); - glFogCoordPointerEXT(type, stride, data_ptr); - -} - -/* - * Class: org.lwjgl.opengl.EXTFogCoord - * Method: nglFogCoordPointerEXTVBO - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFogCoord_nglFogCoordPointerEXTVBO - (JNIEnv * env, jclass clazz, jint type, jint stride, jint buffer_offset) -{ - glFogCoordPointerEXT(type, stride, (GLvoid *)buffer_offset); - -} - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTFogCoord_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glFogCoordfEXT", "(F)V", (void*)&Java_org_lwjgl_opengl_EXTFogCoord_glFogCoordfEXT, "glFogCoordfEXT", (void*)&glFogCoordfEXT}, - {"nglFogCoordPointerEXT", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTFogCoord_nglFogCoordPointerEXT, "glFogCoordPointerEXT", (void*)&glFogCoordPointerEXT}, - {"nglFogCoordPointerEXTVBO", "(III)V", (void*)&Java_org_lwjgl_opengl_EXTFogCoord_nglFogCoordPointerEXTVBO, NULL, NULL} + {"nglFogCoordPointerEXT", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTFogCoord_nglFogCoordPointerEXT, "glFogCoordPointerEXT", (void *)&glFogCoordPointerEXT}, + {"nglFogCoordPointerEXTBO", "(III)V", (void *)&Java_org_lwjgl_opengl_EXTFogCoord_nglFogCoordPointerEXTBO, "glFogCoordPointerEXT", (void *)&glFogCoordPointerEXT}, + {"glFogCoordfEXT", "(F)V", (void *)&Java_org_lwjgl_opengl_EXTFogCoord_glFogCoordfEXT, "glFogCoordfEXT", (void *)&glFogCoordfEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTFramebufferObject.c b/src/native/common/ext/org_lwjgl_opengl_EXTFramebufferObject.c index d84f7e07..70de47d9 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTFramebufferObject.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTFramebufferObject.c @@ -1,279 +1,141 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTFramebufferObject -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef GLboolean (APIENTRY * glIsRenderbufferEXTPROC) (GLuint renderbuffer); -typedef GLvoid (APIENTRY * glBindRenderbufferEXTPROC) (GLenum target, GLuint renderbuffer); -typedef GLvoid (APIENTRY * glDeleteRenderbuffersEXTPROC) (GLsizei n, const GLuint *renderbuffers); -typedef GLvoid (APIENTRY * glGenRenderbuffersEXTPROC) (GLsizei n, GLuint *renderbuffers); -typedef GLvoid (APIENTRY * glRenderbufferStorageEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); -typedef GLvoid (APIENTRY * glGetRenderbufferParameterivEXTPROC) (GLenum target, GLenum pname, GLint* params); -typedef GLboolean (APIENTRY * glIsFramebufferEXTPROC) (GLuint framebuffer); -typedef GLvoid (APIENTRY * glBindFramebufferEXTPROC) (GLenum target, GLuint framebuffer); -typedef GLvoid (APIENTRY * glDeleteFramebuffersEXTPROC) (GLsizei n, const GLuint *framebuffers); -typedef GLvoid (APIENTRY * glGenFramebuffersEXTPROC) (GLsizei n, GLuint *framebuffers); -typedef GLenum (APIENTRY * glCheckFramebufferStatusEXTPROC) (GLenum target); -typedef GLvoid (APIENTRY * glFramebufferTexture1DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -typedef GLvoid (APIENTRY * glFramebufferTexture2DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -typedef GLvoid (APIENTRY * glFramebufferTexture3DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); -typedef GLvoid (APIENTRY * glFramebufferRenderbufferEXTPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); -typedef GLvoid (APIENTRY * glGetFramebufferAttachmentParameterivEXTPROC) (GLenum target, GLenum attachment, GLenum pname, GLint *params); -typedef GLvoid (APIENTRY * glGenerateMipmapEXTPROC) (GLenum target); +typedef void (APIENTRY *glGenerateMipmapEXTPROC) (GLenum target); +typedef void (APIENTRY *glGetFramebufferAttachmentParameterivEXTPROC) (GLenum target, GLenum attachment, GLenum pname, GLint * params); +typedef void (APIENTRY *glFramebufferRenderbufferEXTPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); +typedef void (APIENTRY *glFramebufferTexture3DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); +typedef void (APIENTRY *glFramebufferTexture2DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); +typedef void (APIENTRY *glFramebufferTexture1DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); +typedef GLenum (APIENTRY *glCheckFramebufferStatusEXTPROC) (GLenum target); +typedef void (APIENTRY *glGenFramebuffersEXTPROC) (GLint n, const GLuint * framebuffers); +typedef void (APIENTRY *glDeleteFramebuffersEXTPROC) (GLint n, const GLuint * framebuffers); +typedef void (APIENTRY *glBindFramebufferEXTPROC) (GLenum target, GLuint framebuffer); +typedef GLboolean (APIENTRY *glIsFramebufferEXTPROC) (GLuint framebuffer); +typedef void (APIENTRY *glGetRenderbufferParameterivEXTPROC) (GLenum target, GLenum pname, GLint * params); +typedef void (APIENTRY *glRenderbufferStorageEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (APIENTRY *glGenRenderbuffersEXTPROC) (GLint n, GLuint * renderbuffers); +typedef void (APIENTRY *glDeleteRenderbuffersEXTPROC) (GLint n, const GLuint * renderbuffers); +typedef void (APIENTRY *glBindRenderbufferEXTPROC) (GLenum target, GLuint renderbuffer); +typedef GLboolean (APIENTRY *glIsRenderbufferEXTPROC) (GLuint renderbuffer); -static glIsRenderbufferEXTPROC glIsRenderbufferEXT; -static glBindRenderbufferEXTPROC glBindRenderbufferEXT; -static glDeleteRenderbuffersEXTPROC glDeleteRenderbuffersEXT; -static glGenRenderbuffersEXTPROC glGenRenderbuffersEXT; -static glRenderbufferStorageEXTPROC glRenderbufferStorageEXT; -static glGetRenderbufferParameterivEXTPROC glGetRenderbufferParameterivEXT; -static glIsFramebufferEXTPROC glIsFramebufferEXT; -static glBindFramebufferEXTPROC glBindFramebufferEXT; -static glDeleteFramebuffersEXTPROC glDeleteFramebuffersEXT; -static glGenFramebuffersEXTPROC glGenFramebuffersEXT; -static glCheckFramebufferStatusEXTPROC glCheckFramebufferStatusEXT; -static glFramebufferTexture1DEXTPROC glFramebufferTexture1DEXT; -static glFramebufferTexture2DEXTPROC glFramebufferTexture2DEXT; -static glFramebufferTexture3DEXTPROC glFramebufferTexture3DEXT; -static glFramebufferRenderbufferEXTPROC glFramebufferRenderbufferEXT; -static glGetFramebufferAttachmentParameterivEXTPROC glGetFramebufferAttachmentParameterivEXT; static glGenerateMipmapEXTPROC glGenerateMipmapEXT; +static glGetFramebufferAttachmentParameterivEXTPROC glGetFramebufferAttachmentParameterivEXT; +static glFramebufferRenderbufferEXTPROC glFramebufferRenderbufferEXT; +static glFramebufferTexture3DEXTPROC glFramebufferTexture3DEXT; +static glFramebufferTexture2DEXTPROC glFramebufferTexture2DEXT; +static glFramebufferTexture1DEXTPROC glFramebufferTexture1DEXT; +static glCheckFramebufferStatusEXTPROC glCheckFramebufferStatusEXT; +static glGenFramebuffersEXTPROC glGenFramebuffersEXT; +static glDeleteFramebuffersEXTPROC glDeleteFramebuffersEXT; +static glBindFramebufferEXTPROC glBindFramebufferEXT; +static glIsFramebufferEXTPROC glIsFramebufferEXT; +static glGetRenderbufferParameterivEXTPROC glGetRenderbufferParameterivEXT; +static glRenderbufferStorageEXTPROC glRenderbufferStorageEXT; +static glGenRenderbuffersEXTPROC glGenRenderbuffersEXT; +static glDeleteRenderbuffersEXTPROC glDeleteRenderbuffersEXT; +static glBindRenderbufferEXTPROC glBindRenderbufferEXT; +static glIsRenderbufferEXTPROC glIsRenderbufferEXT; -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glIsRenderbufferEXT - */ -static jboolean JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glIsRenderbufferEXT - (JNIEnv * env, jclass clazz, jint renderbuffer) -{ - return glIsRenderbufferEXT(renderbuffer); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glBindRenderbufferEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glBindRenderbufferEXT - (JNIEnv * env, jclass clazz, jint target, jint renderbuffer) -{ - glBindRenderbufferEXT(target, renderbuffer); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: nglDeleteRenderbuffersEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglDeleteRenderbuffersEXT - (JNIEnv * env, jclass clazz, jint n, jobject renderbuffers, jint offset) -{ - const GLuint *address = (const GLuint *)(*env)->GetDirectBufferAddress(env, renderbuffers) + offset; - glDeleteRenderbuffersEXT(n, address); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: nglGenRenderbuffersEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglGenRenderbuffersEXT - (JNIEnv * env, jclass clazz, jint n, jobject renderbuffers, jint offset) -{ - GLuint *address = (GLuint *)(*env)->GetDirectBufferAddress(env, renderbuffers) + offset; - glGenRenderbuffersEXT(n, address); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glRenderbufferStorageEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glRenderbufferStorageEXT - (JNIEnv * env, jclass clazz, jint target, jint internalformat, jint width, jint height) -{ - glRenderbufferStorageEXT(target, internalformat, width, height); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: nglGetRenderbufferParameterivEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglGetRenderbufferParameterivEXT - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject params, jint offset) -{ - GLint *address = (GLint *)(*env)->GetDirectBufferAddress(env, params) + offset; - glGetRenderbufferParameterivEXT(target, pname, address); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glIsFramebufferEXT - */ -static jboolean JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glIsFramebufferEXT - (JNIEnv * env, jclass clazz, jint framebuffer) -{ - return glIsFramebufferEXT(framebuffer); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glBindFramebufferEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glBindFramebufferEXT - (JNIEnv * env, jclass clazz, jint target, jint framebuffer) -{ - glBindFramebufferEXT(target, framebuffer); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: nglDeleteFramebuffersEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglDeleteFramebuffersEXT - (JNIEnv * env, jclass clazz, jint n, jobject framebuffers, jint offset) -{ - const GLuint *address = (const GLuint *)(*env)->GetDirectBufferAddress(env, framebuffers) + offset; - glDeleteFramebuffersEXT(n, address); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: nglGenFramebuffersEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglGenFramebuffersEXT - (JNIEnv * env, jclass clazz, jint n, jobject framebuffers, jint offset) -{ - GLuint *address = (GLuint *)(*env)->GetDirectBufferAddress(env, framebuffers) + offset; - glGenFramebuffersEXT(n, address); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glCheckFramebufferStatusEXT - */ -static jint JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glCheckFramebufferStatusEXT - (JNIEnv * env, jclass clazz, jint target) -{ - return glCheckFramebufferStatusEXT(target); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glFramebufferTexture1DEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture1DEXT - (JNIEnv * env, jclass clazz, jint target, jint attachment, jint textarget, jint texture, jint level) -{ - glFramebufferTexture1DEXT(target, attachment, textarget, texture, level); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glFramebufferTexture2DEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture2DEXT - (JNIEnv * env, jclass clazz, jint target, jint attachment, jint textarget, jint texture, jint level) -{ - glFramebufferTexture2DEXT(target, attachment, textarget, texture, level); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glFramebufferTexture3DEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture3DEXT - (JNIEnv * env, jclass clazz, jint target, jint attachment, jint textarget, jint texture, jint level, jint zoffset) -{ - glFramebufferTexture3DEXT(target, attachment, textarget, texture, level, zoffset); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glFramebufferRenderbufferEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferRenderbufferEXT - (JNIEnv * env, jclass clazz, jint target, jint attachment, jint renderbuffertarget, jint renderbuffer) -{ - glFramebufferRenderbufferEXT(target, attachment, renderbuffertarget, renderbuffer); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: nglGetFramebufferAttachmentParameterivEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglGetFramebufferAttachmentParameterivEXT - (JNIEnv * env, jclass clazz, jint target, jint attachment, jint pname, jobject params, jint offset) -{ - GLint *address = (GLint *)(*env)->GetDirectBufferAddress(env, params) + offset; - glGetFramebufferAttachmentParameterivEXT(target, attachment, pname, address); -} - -/* - * Class: org.lwjgl.opengl.EXTFramebufferObject - * Method: glGenerateMipmapEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glGenerateMipmapEXT - (JNIEnv * env, jclass clazz, jint target) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glGenerateMipmapEXT(JNIEnv *env, jclass clazz, jint target) { glGenerateMipmapEXT(target); } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglGetFramebufferAttachmentParameterivEXT(JNIEnv *env, jclass clazz, jint target, jint attachment, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetFramebufferAttachmentParameterivEXT(target, attachment, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferRenderbufferEXT(JNIEnv *env, jclass clazz, jint target, jint attachment, jint renderbuffertarget, jint renderbuffer) { + glFramebufferRenderbufferEXT(target, attachment, renderbuffertarget, renderbuffer); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture3DEXT(JNIEnv *env, jclass clazz, jint target, jint attachment, jint textarget, jint texture, jint level, jint zoffset) { + glFramebufferTexture3DEXT(target, attachment, textarget, texture, level, zoffset); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture2DEXT(JNIEnv *env, jclass clazz, jint target, jint attachment, jint textarget, jint texture, jint level) { + glFramebufferTexture2DEXT(target, attachment, textarget, texture, level); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture1DEXT(JNIEnv *env, jclass clazz, jint target, jint attachment, jint textarget, jint texture, jint level) { + glFramebufferTexture1DEXT(target, attachment, textarget, texture, level); +} + +static jint JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glCheckFramebufferStatusEXT(JNIEnv *env, jclass clazz, jint target) { + GLenum __result = glCheckFramebufferStatusEXT(target); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglGenFramebuffersEXT(JNIEnv *env, jclass clazz, jint n, jobject framebuffers, jint framebuffers_position) { + const GLuint *framebuffers_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, framebuffers)) + framebuffers_position; + glGenFramebuffersEXT(n, framebuffers_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglDeleteFramebuffersEXT(JNIEnv *env, jclass clazz, jint n, jobject framebuffers, jint framebuffers_position) { + const GLuint *framebuffers_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, framebuffers)) + framebuffers_position; + glDeleteFramebuffersEXT(n, framebuffers_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glBindFramebufferEXT(JNIEnv *env, jclass clazz, jint target, jint framebuffer) { + glBindFramebufferEXT(target, framebuffer); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glIsFramebufferEXT(JNIEnv *env, jclass clazz, jint framebuffer) { + GLboolean __result = glIsFramebufferEXT(framebuffer); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglGetRenderbufferParameterivEXT(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetRenderbufferParameterivEXT(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glRenderbufferStorageEXT(JNIEnv *env, jclass clazz, jint target, jint internalformat, jint width, jint height) { + glRenderbufferStorageEXT(target, internalformat, width, height); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglGenRenderbuffersEXT(JNIEnv *env, jclass clazz, jint n, jobject renderbuffers, jint renderbuffers_position) { + GLuint *renderbuffers_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, renderbuffers)) + renderbuffers_position; + glGenRenderbuffersEXT(n, renderbuffers_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_nglDeleteRenderbuffersEXT(JNIEnv *env, jclass clazz, jint n, jobject renderbuffers, jint renderbuffers_position) { + const GLuint *renderbuffers_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, renderbuffers)) + renderbuffers_position; + glDeleteRenderbuffersEXT(n, renderbuffers_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glBindRenderbufferEXT(JNIEnv *env, jclass clazz, jint target, jint renderbuffer) { + glBindRenderbufferEXT(target, renderbuffer); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_glIsRenderbufferEXT(JNIEnv *env, jclass clazz, jint renderbuffer) { + GLboolean __result = glIsRenderbufferEXT(renderbuffer); + return __result; +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTFramebufferObject_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glIsRenderbufferEXT", "(I)Z", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glIsRenderbufferEXT, "glIsRenderbufferEXT", (void*)&glIsRenderbufferEXT}, - {"glBindRenderbufferEXT", "(II)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glBindRenderbufferEXT, "glBindRenderbufferEXT", (void*)&glBindRenderbufferEXT}, - {"nglDeleteRenderbuffersEXT", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglDeleteRenderbuffersEXT, "glDeleteRenderbuffersEXT", (void*)&glDeleteRenderbuffersEXT}, - {"nglGenRenderbuffersEXT", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglGenRenderbuffersEXT, "glGenRenderbuffersEXT", (void*)&glGenRenderbuffersEXT}, - {"glRenderbufferStorageEXT", "(IIII)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glRenderbufferStorageEXT, "glRenderbufferStorageEXT", (void*)&glRenderbufferStorageEXT}, - {"nglGetRenderbufferParameterivEXT", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglGetRenderbufferParameterivEXT, "glGetRenderbufferParameterivEXT", (void*)&glGetRenderbufferParameterivEXT}, - {"glIsFramebufferEXT", "(I)Z", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glIsFramebufferEXT, "glIsFramebufferEXT", (void*)&glIsFramebufferEXT}, - {"glBindFramebufferEXT", "(II)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glBindFramebufferEXT, "glBindFramebufferEXT", (void*)&glBindFramebufferEXT}, - {"nglDeleteFramebuffersEXT", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglDeleteFramebuffersEXT, "glDeleteFramebuffersEXT", (void*)&glDeleteFramebuffersEXT}, - {"nglGenFramebuffersEXT", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglGenFramebuffersEXT, "glGenFramebuffersEXT", (void*)&glGenFramebuffersEXT}, - {"glCheckFramebufferStatusEXT", "(I)I", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glCheckFramebufferStatusEXT, "glCheckFramebufferStatusEXT", (void*)&glCheckFramebufferStatusEXT}, - {"glFramebufferTexture1DEXT", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture1DEXT, "glFramebufferTexture1DEXT", (void*)&glFramebufferTexture1DEXT}, - {"glFramebufferTexture2DEXT", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture2DEXT, "glFramebufferTexture2DEXT", (void*)&glFramebufferTexture2DEXT}, - {"glFramebufferTexture3DEXT", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture3DEXT, "glFramebufferTexture3DEXT", (void*)&glFramebufferTexture3DEXT}, - {"glFramebufferRenderbufferEXT", "(IIII)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferRenderbufferEXT, "glFramebufferRenderbufferEXT", (void*)&glFramebufferRenderbufferEXT}, - {"nglGetFramebufferAttachmentParameterivEXT", "(IIILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglGetFramebufferAttachmentParameterivEXT, "glGetFramebufferAttachmentParameterivEXT", (void*)&glGetFramebufferAttachmentParameterivEXT}, - {"glGenerateMipmapEXT", "(I)V", (void*)&Java_org_lwjgl_opengl_EXTFramebufferObject_glGenerateMipmapEXT, "glGenerateMipmapEXT", (void*)&glGenerateMipmapEXT} + {"glGenerateMipmapEXT", "(I)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glGenerateMipmapEXT, "glGenerateMipmapEXT", (void *)&glGenerateMipmapEXT}, + {"nglGetFramebufferAttachmentParameterivEXT", "(IIILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglGetFramebufferAttachmentParameterivEXT, "glGetFramebufferAttachmentParameterivEXT", (void *)&glGetFramebufferAttachmentParameterivEXT}, + {"glFramebufferRenderbufferEXT", "(IIII)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferRenderbufferEXT, "glFramebufferRenderbufferEXT", (void *)&glFramebufferRenderbufferEXT}, + {"glFramebufferTexture3DEXT", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture3DEXT, "glFramebufferTexture3DEXT", (void *)&glFramebufferTexture3DEXT}, + {"glFramebufferTexture2DEXT", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture2DEXT, "glFramebufferTexture2DEXT", (void *)&glFramebufferTexture2DEXT}, + {"glFramebufferTexture1DEXT", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glFramebufferTexture1DEXT, "glFramebufferTexture1DEXT", (void *)&glFramebufferTexture1DEXT}, + {"glCheckFramebufferStatusEXT", "(I)I", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glCheckFramebufferStatusEXT, "glCheckFramebufferStatusEXT", (void *)&glCheckFramebufferStatusEXT}, + {"nglGenFramebuffersEXT", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglGenFramebuffersEXT, "glGenFramebuffersEXT", (void *)&glGenFramebuffersEXT}, + {"nglDeleteFramebuffersEXT", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglDeleteFramebuffersEXT, "glDeleteFramebuffersEXT", (void *)&glDeleteFramebuffersEXT}, + {"glBindFramebufferEXT", "(II)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glBindFramebufferEXT, "glBindFramebufferEXT", (void *)&glBindFramebufferEXT}, + {"glIsFramebufferEXT", "(I)Z", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glIsFramebufferEXT, "glIsFramebufferEXT", (void *)&glIsFramebufferEXT}, + {"nglGetRenderbufferParameterivEXT", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglGetRenderbufferParameterivEXT, "glGetRenderbufferParameterivEXT", (void *)&glGetRenderbufferParameterivEXT}, + {"glRenderbufferStorageEXT", "(IIII)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glRenderbufferStorageEXT, "glRenderbufferStorageEXT", (void *)&glRenderbufferStorageEXT}, + {"nglGenRenderbuffersEXT", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglGenRenderbuffersEXT, "glGenRenderbuffersEXT", (void *)&glGenRenderbuffersEXT}, + {"nglDeleteRenderbuffersEXT", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_nglDeleteRenderbuffersEXT, "glDeleteRenderbuffersEXT", (void *)&glDeleteRenderbuffersEXT}, + {"glBindRenderbufferEXT", "(II)V", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glBindRenderbufferEXT, "glBindRenderbufferEXT", (void *)&glBindRenderbufferEXT}, + {"glIsRenderbufferEXT", "(I)Z", (void *)&Java_org_lwjgl_opengl_EXTFramebufferObject_glIsRenderbufferEXT, "glIsRenderbufferEXT", (void *)&glIsRenderbufferEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif \ No newline at end of file diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTMultiDrawArrays.c b/src/native/common/ext/org_lwjgl_opengl_EXTMultiDrawArrays.c index f84d0667..6b03f8ae 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTMultiDrawArrays.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTMultiDrawArrays.c @@ -1,69 +1,22 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTMultiDrawArrays -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glMultiDrawArraysEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); +typedef void (APIENTRY *glMultiDrawArraysEXTPROC) (GLenum mode, GLint * piFirst, GLsizei * piCount, GLint primcount); static glMultiDrawArraysEXTPROC glMultiDrawArraysEXT; -/* - * Class: org.lwjgl.opengl.EXTMultiDrawArrays - * Method: nglMultiDrawArraysEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTMultiDrawArrays_nglMultiDrawArraysEXT - (JNIEnv * env, jclass clazz, jint mode, jobject piFirst, jint piFirst_offset, jobject piCount, jint piCount_offset, jint primcount) -{ - GLint *piFirst_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piFirst) + piFirst_offset; - GLint *piCount_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piCount) + piCount_offset; - glMultiDrawArraysEXT(mode, piFirst_ptr, piCount_ptr, primcount); - +static void JNICALL Java_org_lwjgl_opengl_EXTMultiDrawArrays_nglMultiDrawArraysEXT(JNIEnv *env, jclass clazz, jint mode, jobject piFirst, jint piFirst_position, jobject piCount, jint piCount_position, jint primcount) { + GLint *piFirst_address = ((GLint *)(*env)->GetDirectBufferAddress(env, piFirst)) + piFirst_position; + GLsizei *piCount_address = ((GLsizei *)(*env)->GetDirectBufferAddress(env, piCount)) + piCount_position; + glMultiDrawArraysEXT(mode, piFirst_address, piCount_address, primcount); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTMultiDrawArrays_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglMultiDrawArraysEXT", "(ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;II)V", (void*)&Java_org_lwjgl_opengl_EXTMultiDrawArrays_nglMultiDrawArraysEXT, "glMultiDrawArraysEXT", (void*)&glMultiDrawArraysEXT} + {"nglMultiDrawArraysEXT", "(ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;II)V", (void *)&Java_org_lwjgl_opengl_EXTMultiDrawArrays_nglMultiDrawArraysEXT, "glMultiDrawArraysEXT", (void *)&glMultiDrawArraysEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTPalettedTexture.c b/src/native/common/ext/org_lwjgl_opengl_EXTPalettedTexture.c index 9ac82876..2b8e9674 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTPalettedTexture.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTPalettedTexture.c @@ -1,124 +1,53 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ------------------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTPalettedTexture -// ------------------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef void (APIENTRY * glColorTableEXTPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const GLvoid *data); -typedef void (APIENTRY * glColorSubTableEXTPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data); -typedef void (APIENTRY * glGetColorTableEXTPROC) (GLenum target, GLenum format, GLenum type, GLvoid *data); -typedef void (APIENTRY * glGetColorTableParameterivEXTPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetColorTableParameterfvEXTPROC) (GLenum target, GLenum pname, GLfloat *params); +typedef void (APIENTRY *glGetColorTableParameterfvEXTPROC) (GLenum target, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetColorTableParameterivEXTPROC) (GLenum target, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetColorTableEXTPROC) (GLenum target, GLenum format, GLenum type, GLvoid * data); +typedef void (APIENTRY *glColorSubTableEXTPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * data); +typedef void (APIENTRY *glColorTableEXTPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const GLvoid * data); -static glColorTableEXTPROC glColorTableEXT; -static glColorSubTableEXTPROC glColorSubTableEXT; -static glGetColorTableEXTPROC glGetColorTableEXT; -static glGetColorTableParameterivEXTPROC glGetColorTableParameterivEXT; static glGetColorTableParameterfvEXTPROC glGetColorTableParameterfvEXT; +static glGetColorTableParameterivEXTPROC glGetColorTableParameterivEXT; +static glGetColorTableEXTPROC glGetColorTableEXT; +static glColorSubTableEXTPROC glColorSubTableEXT; +static glColorTableEXTPROC glColorTableEXT; -/* - * Class: org.lwjgl.opengl.EXTPalettedTexture - * Method: nglColorTableEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_nglColorTableEXT - (JNIEnv * env, jclass clazz, jint target, jint internalFormat, jint width, jint format, jint type, jobject data, jint dataOffset) -{ - const void *address = (const void *)(dataOffset + (GLbyte *)(*env)->GetDirectBufferAddress(env, data)); - glColorTableEXT(target, internalFormat, width, format, type, address); +static void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableParameterfvEXT(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetColorTableParameterfvEXT(target, pname, params_address); } -/* - * Class: org.lwjgl.opengl.EXTPalettedTexture - * Method: nglColorSubTableEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_nglColorSubTableEXT - (JNIEnv * env, jclass clazz, jint target, jint start, jint count, jint format, jint type, jobject data, jint dataOffset) -{ - const void *address = (const void *)(dataOffset + (GLbyte *)(*env)->GetDirectBufferAddress(env, data)); - glColorSubTableEXT(target, start, count, format, type, address); +static void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableParameterivEXT(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetColorTableParameterivEXT(target, pname, params_address); } -/* - * Class: org.lwjgl.opengl.EXTPalettedTexture - * Method: nglGetColorTableEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableEXT - (JNIEnv * env, jclass clazz, jint target, jint format, jint type, jobject data, jint dataOffset) -{ - void *address = (void *)(dataOffset + (GLbyte *)(*env)->GetDirectBufferAddress(env, data)); - glGetColorTableEXT(target, format, type, address); +static void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableEXT(JNIEnv *env, jclass clazz, jint target, jint format, jint type, jobject data, jint data_position) { + GLvoid *data_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glGetColorTableEXT(target, format, type, data_address); } -/* - * Class: org.lwjgl.opengl.EXTPalettedTexture - * Method: nglGetColorTableParameterivEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableParameterivEXT - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject params, jint paramsOffset) -{ - GLint *address = paramsOffset + (GLint *)(*env)->GetDirectBufferAddress(env, params); - glGetColorTableParameterivEXT(target, pname, address); +static void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_nglColorSubTableEXT(JNIEnv *env, jclass clazz, jint target, jint start, jint count, jint format, jint type, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glColorSubTableEXT(target, start, count, format, type, data_address); } -/* - * Class: org.lwjgl.opengl.EXTPalettedTexture - * Method: nglGetColorTableParameterfvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableParameterfvEXT - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject params, jint paramsOffset) -{ - GLfloat *address = paramsOffset + (GLfloat *)(*env)->GetDirectBufferAddress(env, params); - glGetColorTableParameterfvEXT(target, pname, address); +static void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_nglColorTableEXT(JNIEnv *env, jclass clazz, jint target, jint internalFormat, jint width, jint format, jint type, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glColorTableEXT(target, internalFormat, width, format, type, data_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTPalettedTexture_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglColorTableEXT", "(IIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTPalettedTexture_nglColorTableEXT, "glColorTableEXT", (void*)&glColorTableEXT}, - {"nglColorSubTableEXT", "(IIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTPalettedTexture_nglColorSubTableEXT, "glColorSubTableEXT", (void*)&glColorSubTableEXT}, - {"nglGetColorTableEXT", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableEXT, "glGetColorTableEXT", (void*)&glGetColorTableEXT}, - {"nglGetColorTableParameterivEXT", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableParameterivEXT, "glGetColorTableParameterivEXT", (void*)&glGetColorTableParameterivEXT}, - {"nglGetColorTableParameterfvEXT", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableParameterfvEXT, "glGetColorTableParameterfvEXT", (void*)&glGetColorTableParameterfvEXT}, + {"nglGetColorTableParameterfvEXT", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableParameterfvEXT, "glGetColorTableParameterfvEXT", (void *)&glGetColorTableParameterfvEXT}, + {"nglGetColorTableParameterivEXT", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableParameterivEXT, "glGetColorTableParameterivEXT", (void *)&glGetColorTableParameterivEXT}, + {"nglGetColorTableEXT", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTPalettedTexture_nglGetColorTableEXT, "glGetColorTableEXT", (void *)&glGetColorTableEXT}, + {"nglColorSubTableEXT", "(IIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTPalettedTexture_nglColorSubTableEXT, "glColorSubTableEXT", (void *)&glColorSubTableEXT}, + {"nglColorTableEXT", "(IIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTPalettedTexture_nglColorTableEXT, "glColorTableEXT", (void *)&glColorTableEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTPointParameters.c b/src/native/common/ext/org_lwjgl_opengl_EXTPointParameters.c index 14119659..e9a13322 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTPointParameters.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTPointParameters.c @@ -1,82 +1,28 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTPointParameters -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glPointParameterfEXTPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glPointParameterfvEXTPROC) (GLenum pname, const GLfloat *params); +typedef void (APIENTRY *glPointParameterfvEXTPROC) (GLenum pname, const GLfloat * pfParams); +typedef void (APIENTRY *glPointParameterfEXTPROC) (GLenum pname, GLfloat param); -static glPointParameterfEXTPROC glPointParameterfEXT; static glPointParameterfvEXTPROC glPointParameterfvEXT; +static glPointParameterfEXTPROC glPointParameterfEXT; -/* - * Class: org.lwjgl.opengl.EXTPointParameters - * Method: glPointParameterfEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTPointParameters_glPointParameterfEXT - (JNIEnv * env, jclass clazz, jint pname, jfloat param) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTPointParameters_nglPointParameterfvEXT(JNIEnv *env, jclass clazz, jint pname, jobject pfParams, jint pfParams_position) { + const GLfloat *pfParams_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams)) + pfParams_position; + glPointParameterfvEXT(pname, pfParams_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTPointParameters_glPointParameterfEXT(JNIEnv *env, jclass clazz, jint pname, jfloat param) { glPointParameterfEXT(pname, param); - } -/* - * Class: org.lwjgl.opengl.EXTPointParameters - * Method: nglPointParameterfvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTPointParameters_nglPointParameterfvEXT - (JNIEnv * env, jclass clazz, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glPointParameterfvEXT(pname, pfParams_ptr); - -} - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTPointParameters_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glPointParameterfEXT", "(IF)V", (void*)&Java_org_lwjgl_opengl_EXTPointParameters_glPointParameterfEXT, "glPointParameterfEXT", (void*)&glPointParameterfEXT}, - {"nglPointParameterfvEXT", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTPointParameters_nglPointParameterfvEXT, "glPointParameterfvEXT", (void*)&glPointParameterfvEXT} + {"nglPointParameterfvEXT", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTPointParameters_nglPointParameterfvEXT, "glPointParameterfvEXT", (void *)&glPointParameterfvEXT}, + {"glPointParameterfEXT", "(IF)V", (void *)&Java_org_lwjgl_opengl_EXTPointParameters_glPointParameterfEXT, "glPointParameterfEXT", (void *)&glPointParameterfEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTSecondaryColor.c b/src/native/common/ext/org_lwjgl_opengl_EXTSecondaryColor.c index 449e92c5..cb1998b2 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTSecondaryColor.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTSecondaryColor.c @@ -1,122 +1,48 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTSecondaryColor -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glSecondaryColor3bEXTPROC) (GLbyte red, GLbyte green, GLbyte blue); -typedef void (APIENTRY * glSecondaryColor3fEXTPROC) (GLfloat red, GLfloat green, GLfloat blue); -typedef void (APIENTRY * glSecondaryColor3ubEXTPROC) (GLubyte red, GLubyte green, GLubyte blue); -typedef void (APIENTRY * glSecondaryColorPointerEXTPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer); +typedef void (APIENTRY *glSecondaryColorPointerEXTPROC) (GLint size, GLenum type, GLsizei stride, GLvoid * pPointer); +typedef void (APIENTRY *glSecondaryColor3ubEXTPROC) (GLubyte red, GLubyte green, GLubyte blue); +typedef void (APIENTRY *glSecondaryColor3fEXTPROC) (GLfloat red, GLfloat green, GLfloat blue); +typedef void (APIENTRY *glSecondaryColor3bEXTPROC) (GLbyte red, GLbyte green, GLbyte blue); -static glSecondaryColor3bEXTPROC glSecondaryColor3bEXT; -static glSecondaryColor3fEXTPROC glSecondaryColor3fEXT; -static glSecondaryColor3ubEXTPROC glSecondaryColor3ubEXT; static glSecondaryColorPointerEXTPROC glSecondaryColorPointerEXT; +static glSecondaryColor3ubEXTPROC glSecondaryColor3ubEXT; +static glSecondaryColor3fEXTPROC glSecondaryColor3fEXT; +static glSecondaryColor3bEXTPROC glSecondaryColor3bEXT; -/* - * Class: org.lwjgl.opengl.EXTSecondaryColor - * Method: glSecondaryColor3bEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3bEXT - (JNIEnv * env, jclass clazz, jbyte red, jbyte green, jbyte blue) -{ - glSecondaryColor3bEXT(red, green, blue); - +static void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_nglSecondaryColorPointerEXT(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jobject pPointer, jint pPointer_position) { + GLvoid *pPointer_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pPointer)) + pPointer_position)); + glSecondaryColorPointerEXT(size, type, stride, pPointer_address); } -/* - * Class: org.lwjgl.opengl.EXTSecondaryColor - * Method: glSecondaryColor3fEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3fEXT - (JNIEnv * env, jclass clazz, jfloat red, jfloat green, jfloat blue) -{ - glSecondaryColor3fEXT(red, green, blue); - +static void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_nglSecondaryColorPointerEXTBO(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jint pPointer_buffer_offset) { + GLvoid *pPointer_address = ((GLvoid *)offsetToPointer(pPointer_buffer_offset)); + glSecondaryColorPointerEXT(size, type, stride, pPointer_address); } -/* - * Class: org.lwjgl.opengl.EXTSecondaryColor - * Method: glSecondaryColor3ubEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3ubEXT - (JNIEnv * env, jclass clazz, jbyte red, jbyte green, jbyte blue) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3ubEXT(JNIEnv *env, jclass clazz, jbyte red, jbyte green, jbyte blue) { glSecondaryColor3ubEXT(red, green, blue); - } -/* - * Class: org.lwjgl.opengl.EXTSecondaryColor - * Method: nglSecondaryColorPointerEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_nglSecondaryColorPointerEXT - (JNIEnv * env, jclass clazz, jint size, jint type, jint stride, jobject pPointer, jint pPointer_offset) -{ - GLvoid *pPointer_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pPointer) + pPointer_offset); - glSecondaryColorPointerEXT(size, type, stride, pPointer_ptr); - +static void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3fEXT(JNIEnv *env, jclass clazz, jfloat red, jfloat green, jfloat blue) { + glSecondaryColor3fEXT(red, green, blue); } -/* - * Class: org.lwjgl.opengl.EXTSecondaryColor - * Method: nglSecondaryColorPointerEXTVBO - */ -static void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_nglSecondaryColorPointerEXTVBO - (JNIEnv * env, jclass clazz, jint size, jint type, jint stride, jint buffer_offset) -{ - glSecondaryColorPointerEXT(size, type, stride, (GLvoid *)buffer_offset); - +static void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3bEXT(JNIEnv *env, jclass clazz, jbyte red, jbyte green, jbyte blue) { + glSecondaryColor3bEXT(red, green, blue); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTSecondaryColor_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glSecondaryColor3bEXT", "(BBB)V", (void*)&Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3bEXT, "glSecondaryColor3bEXT", (void*)&glSecondaryColor3bEXT}, - {"glSecondaryColor3fEXT", "(FFF)V", (void*)&Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3fEXT, "glSecondaryColor3fEXT", (void*)&glSecondaryColor3fEXT}, - {"glSecondaryColor3ubEXT", "(BBB)V", (void*)&Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3ubEXT, "glSecondaryColor3ubEXT", (void*)&glSecondaryColor3ubEXT}, - {"nglSecondaryColorPointerEXT", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTSecondaryColor_nglSecondaryColorPointerEXT, "glSecondaryColorPointerEXT", (void*)&glSecondaryColorPointerEXT}, - {"nglSecondaryColorPointerEXTVBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_EXTSecondaryColor_nglSecondaryColorPointerEXTVBO, NULL, NULL} + {"nglSecondaryColorPointerEXT", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTSecondaryColor_nglSecondaryColorPointerEXT, "glSecondaryColorPointerEXT", (void *)&glSecondaryColorPointerEXT}, + {"nglSecondaryColorPointerEXTBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_EXTSecondaryColor_nglSecondaryColorPointerEXTBO, "glSecondaryColorPointerEXT", (void *)&glSecondaryColorPointerEXT}, + {"glSecondaryColor3ubEXT", "(BBB)V", (void *)&Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3ubEXT, "glSecondaryColor3ubEXT", (void *)&glSecondaryColor3ubEXT}, + {"glSecondaryColor3fEXT", "(FFF)V", (void *)&Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3fEXT, "glSecondaryColor3fEXT", (void *)&glSecondaryColor3fEXT}, + {"glSecondaryColor3bEXT", "(BBB)V", (void *)&Java_org_lwjgl_opengl_EXTSecondaryColor_glSecondaryColor3bEXT, "glSecondaryColor3bEXT", (void *)&glSecondaryColor3bEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTStencilTwoSide.c b/src/native/common/ext/org_lwjgl_opengl_EXTStencilTwoSide.c index dfedeaee..17157fa1 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTStencilTwoSide.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTStencilTwoSide.c @@ -1,66 +1,20 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTStencilTwoSide -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glActiveStencilFaceEXTPROC) (GLenum face); +typedef void (APIENTRY *glActiveStencilFaceEXTPROC) (GLenum face); static glActiveStencilFaceEXTPROC glActiveStencilFaceEXT; -/* - * Class: org.lwjgl.opengl.EXTStencilTwoSide - * Method: glActiveStencilFaceEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTStencilTwoSide_glActiveStencilFaceEXT - (JNIEnv * env, jclass clazz, jint face) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTStencilTwoSide_glActiveStencilFaceEXT(JNIEnv *env, jclass clazz, jint face) { glActiveStencilFaceEXT(face); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTStencilTwoSide_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glActiveStencilFaceEXT", "(I)V", (void*)&Java_org_lwjgl_opengl_EXTStencilTwoSide_glActiveStencilFaceEXT, "glActiveStencilFaceEXT", (void*)&glActiveStencilFaceEXT} + {"glActiveStencilFaceEXT", "(I)V", (void *)&Java_org_lwjgl_opengl_EXTStencilTwoSide_glActiveStencilFaceEXT, "glActiveStencilFaceEXT", (void *)&glActiveStencilFaceEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTVertexShader.c b/src/native/common/ext/org_lwjgl_opengl_EXTVertexShader.c index e1b39886..d4c2153d 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTVertexShader.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTVertexShader.c @@ -1,669 +1,335 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTVertexShader -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef void (APIENTRY * glBeginVertexShaderEXTPROC) (); -typedef void (APIENTRY * glEndVertexShaderEXTPROC) (); -typedef void (APIENTRY * glBindVertexShaderEXTPROC) (GLuint id); -typedef GLuint (APIENTRY * glGenVertexShadersEXTPROC) (GLuint range); -typedef void (APIENTRY * glDeleteVertexShaderEXTPROC) (GLuint id); -typedef void (APIENTRY * glShaderOp1EXTPROC) (GLenum op, GLuint res, GLuint arg1); -typedef void (APIENTRY * glShaderOp2EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2); -typedef void (APIENTRY * glShaderOp3EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3); -typedef void (APIENTRY * glSwizzleEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); -typedef void (APIENTRY * glWriteMaskEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); -typedef void (APIENTRY * glInsertComponentEXTPROC) (GLuint res, GLuint src, GLuint num); -typedef void (APIENTRY * glExtractComponentEXTPROC) (GLuint res, GLuint src, GLuint num); -typedef GLuint (APIENTRY * glGenSymbolsEXTPROC) (GLenum dataType, GLenum storageType, GLenum range, GLuint components); -typedef void (APIENTRY * glSetInvariantEXTPROC) (GLuint id, GLenum type, GLvoid *addr); -typedef void (APIENTRY * glSetLocalConstantEXTPROC) (GLuint id, GLenum type, GLvoid *addr); -typedef void (APIENTRY * glVariantbvEXTPROC) (GLuint id, GLbyte *addr); -typedef void (APIENTRY * glVariantsvEXTPROC) (GLuint id, GLshort *addr); -typedef void (APIENTRY * glVariantivEXTPROC) (GLuint id, GLint *addr); -typedef void (APIENTRY * glVariantfvEXTPROC) (GLuint id, GLfloat *addr); -typedef void (APIENTRY * glVariantubvEXTPROC) (GLuint id, GLubyte *addr); -typedef void (APIENTRY * glVariantusvEXTPROC) (GLuint id, GLushort *addr); -typedef void (APIENTRY * glVariantuivEXTPROC) (GLuint id, GLuint *addr); -typedef void (APIENTRY * glVariantPointerEXTPROC) (GLuint id, GLenum type, GLuint stride, GLvoid *addr); -typedef void (APIENTRY * glEnableVariantClientStateEXTPROC) (GLuint id); -typedef void (APIENTRY * glDisableVariantClientStateEXTPROC) (GLuint id); -typedef GLuint (APIENTRY * glBindLightParameterEXTPROC) (GLenum light, GLenum value); -typedef GLuint (APIENTRY * glBindMaterialParameterEXTPROC) (GLenum face, GLenum value); -typedef GLuint (APIENTRY * glBindTexGenParameterEXTPROC) (GLenum unit, GLenum coord, GLenum value); -typedef GLuint (APIENTRY * glBindTextureUnitParameterEXTPROC) (GLenum unit, GLenum value); -typedef GLuint (APIENTRY * glBindParameterEXTPROC) (GLenum value); -typedef GLboolean (APIENTRY * glIsVariantEnabledEXTPROC) (GLuint id, GLenum cap); -typedef void (APIENTRY * glGetVariantBooleanvEXTPROC) (GLuint id, GLenum value, GLboolean *data); -typedef void (APIENTRY * glGetVariantIntegervEXTPROC) (GLuint id, GLenum value, GLint *data); -typedef void (APIENTRY * glGetVariantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat *data); -typedef void (APIENTRY * glGetVariantPointervEXTPROC) (GLuint id, GLenum value, GLvoid **data); -typedef void (APIENTRY * glGetInvariantBooleanvEXTPROC) (GLuint id, GLenum value, GLboolean *data); -typedef void (APIENTRY * glGetInvariantIntegervEXTPROC) (GLuint id, GLenum value, GLint *data); -typedef void (APIENTRY * glGetInvariantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat *data); -typedef void (APIENTRY * glGetLocalConstantBooleanvEXTPROC) (GLuint id, GLenum value, GLboolean *data); -typedef void (APIENTRY * glGetLocalConstantIntegervEXTPROC) (GLuint id, GLenum value, GLint *data); -typedef void (APIENTRY * glGetLocalConstantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat *data); +typedef void (APIENTRY *glGetLocalConstantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat * pbData); +typedef void (APIENTRY *glGetLocalConstantIntegervEXTPROC) (GLuint id, GLenum value, GLint * pbData); +typedef void (APIENTRY *glGetLocalConstantBooleanvEXTPROC) (GLuint id, GLenum value, GLbyte * pbData); +typedef void (APIENTRY *glGetInvariantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat * pbData); +typedef void (APIENTRY *glGetInvariantIntegervEXTPROC) (GLuint id, GLenum value, GLint * pbData); +typedef void (APIENTRY *glGetInvariantBooleanvEXTPROC) (GLuint id, GLenum value, GLbyte * pbData); +typedef void (APIENTRY *glGetVariantPointervEXTPROC) (GLuint id, GLenum value, GLvoid ** pbData); +typedef void (APIENTRY *glGetVariantFloatvEXTPROC) (GLuint id, GLenum value, GLfloat * pbData); +typedef void (APIENTRY *glGetVariantIntegervEXTPROC) (GLuint id, GLenum value, GLint * pbData); +typedef void (APIENTRY *glGetVariantBooleanvEXTPROC) (GLuint id, GLenum value, GLbyte * pbData); +typedef GLboolean (APIENTRY *glIsVariantEnabledEXTPROC) (GLuint id, GLenum cap); +typedef GLuint (APIENTRY *glBindParameterEXTPROC) (GLenum value); +typedef GLuint (APIENTRY *glBindTextureUnitParameterEXTPROC) (GLenum unit, GLenum value); +typedef GLuint (APIENTRY *glBindTexGenParameterEXTPROC) (GLenum unit, GLenum coord, GLenum value); +typedef GLuint (APIENTRY *glBindMaterialParameterEXTPROC) (GLenum face, GLenum value); +typedef GLuint (APIENTRY *glBindLightParameterEXTPROC) (GLenum light, GLenum value); +typedef void (APIENTRY *glDisableVariantClientStateEXTPROC) (GLuint id); +typedef void (APIENTRY *glEnableVariantClientStateEXTPROC) (GLuint id); +typedef void (APIENTRY *glVariantPointerEXTPROC) (GLuint id, GLenum type, GLuint stride, GLvoid * pAddr); +typedef void (APIENTRY *glVariantuivEXTPROC) (GLuint id, GLuint * pAddr); +typedef void (APIENTRY *glVariantusvEXTPROC) (GLuint id, GLushort * pAddr); +typedef void (APIENTRY *glVariantubvEXTPROC) (GLuint id, GLubyte * pAddr); +typedef void (APIENTRY *glVariantfvEXTPROC) (GLuint id, GLfloat * pAddr); +typedef void (APIENTRY *glVariantivEXTPROC) (GLuint id, GLint * pAddr); +typedef void (APIENTRY *glVariantsvEXTPROC) (GLuint id, GLshort * pAddr); +typedef void (APIENTRY *glVariantbvEXTPROC) (GLuint id, GLbyte * pAddr); +typedef void (APIENTRY *glSetLocalConstantEXTPROC) (GLuint id, GLenum type, GLvoid * pAddr); +typedef void (APIENTRY *glSetInvariantEXTPROC) (GLuint id, GLenum type, GLvoid * pAddr); +typedef GLuint (APIENTRY *glGenSymbolsEXTPROC) (GLenum dataType, GLenum storageType, GLenum range, GLuint components); +typedef void (APIENTRY *glExtractComponentEXTPROC) (GLuint res, GLuint src, GLuint num); +typedef void (APIENTRY *glInsertComponentEXTPROC) (GLuint res, GLuint src, GLuint num); +typedef void (APIENTRY *glWriteMaskEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); +typedef void (APIENTRY *glSwizzleEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW); +typedef void (APIENTRY *glShaderOp3EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3); +typedef void (APIENTRY *glShaderOp2EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2); +typedef void (APIENTRY *glShaderOp1EXTPROC) (GLenum op, GLuint res, GLuint arg1); +typedef void (APIENTRY *glDeleteVertexShaderEXTPROC) (GLuint id); +typedef GLuint (APIENTRY *glGenVertexShadersEXTPROC) (GLuint range); +typedef void (APIENTRY *glBindVertexShaderEXTPROC) (GLuint id); +typedef void (APIENTRY *glEndVertexShaderEXTPROC) (); +typedef void (APIENTRY *glBeginVertexShaderEXTPROC) (); -static glBeginVertexShaderEXTPROC glBeginVertexShaderEXT; -static glEndVertexShaderEXTPROC glEndVertexShaderEXT; -static glBindVertexShaderEXTPROC glBindVertexShaderEXT; -static glGenVertexShadersEXTPROC glGenVertexShadersEXT; -static glDeleteVertexShaderEXTPROC glDeleteVertexShaderEXT; -static glShaderOp1EXTPROC glShaderOp1EXT; -static glShaderOp2EXTPROC glShaderOp2EXT; -static glShaderOp3EXTPROC glShaderOp3EXT; -static glSwizzleEXTPROC glSwizzleEXT; -static glWriteMaskEXTPROC glWriteMaskEXT; -static glInsertComponentEXTPROC glInsertComponentEXT; -static glExtractComponentEXTPROC glExtractComponentEXT; -static glGenSymbolsEXTPROC glGenSymbolsEXT; -static glSetInvariantEXTPROC glSetInvariantEXT; -static glSetLocalConstantEXTPROC glSetLocalConstantEXT; -static glVariantbvEXTPROC glVariantbvEXT; -static glVariantsvEXTPROC glVariantsvEXT; -static glVariantivEXTPROC glVariantivEXT; -static glVariantfvEXTPROC glVariantfvEXT; -static glVariantubvEXTPROC glVariantubvEXT; -static glVariantusvEXTPROC glVariantusvEXT; -static glVariantuivEXTPROC glVariantuivEXT; -static glVariantPointerEXTPROC glVariantPointerEXT; -static glEnableVariantClientStateEXTPROC glEnableVariantClientStateEXT; -static glDisableVariantClientStateEXTPROC glDisableVariantClientStateEXT; -static glBindLightParameterEXTPROC glBindLightParameterEXT; -static glBindMaterialParameterEXTPROC glBindMaterialParameterEXT; -static glBindTexGenParameterEXTPROC glBindTexGenParameterEXT; -static glBindTextureUnitParameterEXTPROC glBindTextureUnitParameterEXT; -static glBindParameterEXTPROC glBindParameterEXT; -static glIsVariantEnabledEXTPROC glIsVariantEnabledEXT; -static glGetVariantBooleanvEXTPROC glGetVariantBooleanvEXT; -static glGetVariantIntegervEXTPROC glGetVariantIntegervEXT; -static glGetVariantFloatvEXTPROC glGetVariantFloatvEXT; -static glGetVariantPointervEXTPROC glGetVariantPointervEXT; -static glGetInvariantBooleanvEXTPROC glGetInvariantBooleanvEXT; -static glGetInvariantIntegervEXTPROC glGetInvariantIntegervEXT; -static glGetInvariantFloatvEXTPROC glGetInvariantFloatvEXT; -static glGetLocalConstantBooleanvEXTPROC glGetLocalConstantBooleanvEXT; -static glGetLocalConstantIntegervEXTPROC glGetLocalConstantIntegervEXT; static glGetLocalConstantFloatvEXTPROC glGetLocalConstantFloatvEXT; +static glGetLocalConstantIntegervEXTPROC glGetLocalConstantIntegervEXT; +static glGetLocalConstantBooleanvEXTPROC glGetLocalConstantBooleanvEXT; +static glGetInvariantFloatvEXTPROC glGetInvariantFloatvEXT; +static glGetInvariantIntegervEXTPROC glGetInvariantIntegervEXT; +static glGetInvariantBooleanvEXTPROC glGetInvariantBooleanvEXT; +static glGetVariantPointervEXTPROC glGetVariantPointervEXT; +static glGetVariantFloatvEXTPROC glGetVariantFloatvEXT; +static glGetVariantIntegervEXTPROC glGetVariantIntegervEXT; +static glGetVariantBooleanvEXTPROC glGetVariantBooleanvEXT; +static glIsVariantEnabledEXTPROC glIsVariantEnabledEXT; +static glBindParameterEXTPROC glBindParameterEXT; +static glBindTextureUnitParameterEXTPROC glBindTextureUnitParameterEXT; +static glBindTexGenParameterEXTPROC glBindTexGenParameterEXT; +static glBindMaterialParameterEXTPROC glBindMaterialParameterEXT; +static glBindLightParameterEXTPROC glBindLightParameterEXT; +static glDisableVariantClientStateEXTPROC glDisableVariantClientStateEXT; +static glEnableVariantClientStateEXTPROC glEnableVariantClientStateEXT; +static glVariantPointerEXTPROC glVariantPointerEXT; +static glVariantuivEXTPROC glVariantuivEXT; +static glVariantusvEXTPROC glVariantusvEXT; +static glVariantubvEXTPROC glVariantubvEXT; +static glVariantfvEXTPROC glVariantfvEXT; +static glVariantivEXTPROC glVariantivEXT; +static glVariantsvEXTPROC glVariantsvEXT; +static glVariantbvEXTPROC glVariantbvEXT; +static glSetLocalConstantEXTPROC glSetLocalConstantEXT; +static glSetInvariantEXTPROC glSetInvariantEXT; +static glGenSymbolsEXTPROC glGenSymbolsEXT; +static glExtractComponentEXTPROC glExtractComponentEXT; +static glInsertComponentEXTPROC glInsertComponentEXT; +static glWriteMaskEXTPROC glWriteMaskEXT; +static glSwizzleEXTPROC glSwizzleEXT; +static glShaderOp3EXTPROC glShaderOp3EXT; +static glShaderOp2EXTPROC glShaderOp2EXT; +static glShaderOp1EXTPROC glShaderOp1EXT; +static glDeleteVertexShaderEXTPROC glDeleteVertexShaderEXT; +static glGenVertexShadersEXTPROC glGenVertexShadersEXT; +static glBindVertexShaderEXTPROC glBindVertexShaderEXT; +static glEndVertexShaderEXTPROC glEndVertexShaderEXT; +static glBeginVertexShaderEXTPROC glBeginVertexShaderEXT; -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glBeginVertexShaderEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBeginVertexShaderEXT - (JNIEnv * env, jclass clazz) -{ - glBeginVertexShaderEXT(); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantFloatvEXT(JNIEnv *env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_position) { + GLfloat *pbData_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, pbData)) + pbData_position; + glGetLocalConstantFloatvEXT(id, value, pbData_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glEndVertexShaderEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glEndVertexShaderEXT - (JNIEnv * env, jclass clazz) -{ - glEndVertexShaderEXT(); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantIntegervEXT(JNIEnv *env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_position) { + GLint *pbData_address = ((GLint *)(*env)->GetDirectBufferAddress(env, pbData)) + pbData_position; + glGetLocalConstantIntegervEXT(id, value, pbData_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glBindVertexShaderEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindVertexShaderEXT - (JNIEnv * env, jclass clazz, jint id) -{ - glBindVertexShaderEXT(id); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantBooleanvEXT(JNIEnv *env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_position) { + GLbyte *pbData_address = ((GLbyte *)(*env)->GetDirectBufferAddress(env, pbData)) + pbData_position; + glGetLocalConstantBooleanvEXT(id, value, pbData_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glGenVertexShadersEXT - */ -static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glGenVertexShadersEXT - (JNIEnv * env, jclass clazz, jint range) -{ - GLuint result = glGenVertexShadersEXT(range); - - return result; +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantFloatvEXT(JNIEnv *env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_position) { + GLfloat *pbData_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, pbData)) + pbData_position; + glGetInvariantFloatvEXT(id, value, pbData_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glDeleteVertexShaderEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glDeleteVertexShaderEXT - (JNIEnv * env, jclass clazz, jint id) -{ - glDeleteVertexShaderEXT(id); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantIntegervEXT(JNIEnv *env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_position) { + GLint *pbData_address = ((GLint *)(*env)->GetDirectBufferAddress(env, pbData)) + pbData_position; + glGetInvariantIntegervEXT(id, value, pbData_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glShaderOp1EXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp1EXT - (JNIEnv * env, jclass clazz, jint op, jint res, jint arg1) -{ - glShaderOp1EXT(op, res, arg1); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantBooleanvEXT(JNIEnv *env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_position) { + GLbyte *pbData_address = ((GLbyte *)(*env)->GetDirectBufferAddress(env, pbData)) + pbData_position; + glGetInvariantBooleanvEXT(id, value, pbData_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glShaderOp2EXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp2EXT - (JNIEnv * env, jclass clazz, jint op, jint res, jint arg1, jint arg2) -{ - glShaderOp2EXT(op, res, arg1, arg2); - +static jobject JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantPointervEXT(JNIEnv *env, jclass clazz, jint id, jint value, jint result_size) { + GLvoid * __result; + glGetVariantPointervEXT(id, value, &__result); + return safeNewBuffer(env, __result, result_size); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glShaderOp3EXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp3EXT - (JNIEnv * env, jclass clazz, jint op, jint res, jint arg1, jint arg2, jint arg3) -{ - glShaderOp3EXT(op, res, arg1, arg2, arg3); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantFloatvEXT(JNIEnv *env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_position) { + GLfloat *pbData_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, pbData)) + pbData_position; + glGetVariantFloatvEXT(id, value, pbData_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glSwizzleEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glSwizzleEXT - (JNIEnv * env, jclass clazz, jint res, jint in, jint outX, jint outY, jint outZ, jint outW) -{ - glSwizzleEXT(res, in, outX, outY, outZ, outW); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantIntegervEXT(JNIEnv *env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_position) { + GLint *pbData_address = ((GLint *)(*env)->GetDirectBufferAddress(env, pbData)) + pbData_position; + glGetVariantIntegervEXT(id, value, pbData_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glWriteMaskEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glWriteMaskEXT - (JNIEnv * env, jclass clazz, jint res, jint in, jint outX, jint outY, jint outZ, jint outW) -{ - glWriteMaskEXT(res, in, outX, outY, outZ, outW); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantBooleanvEXT(JNIEnv *env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_position) { + GLbyte *pbData_address = ((GLbyte *)(*env)->GetDirectBufferAddress(env, pbData)) + pbData_position; + glGetVariantBooleanvEXT(id, value, pbData_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glInsertComponentEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glInsertComponentEXT - (JNIEnv * env, jclass clazz, jint res, jint src, jint num) -{ - glInsertComponentEXT(res, src, num); - +static jboolean JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glIsVariantEnabledEXT(JNIEnv *env, jclass clazz, jint id, jint cap) { + GLboolean __result = glIsVariantEnabledEXT(id, cap); + return __result; } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glExtractComponentEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glExtractComponentEXT - (JNIEnv * env, jclass clazz, jint res, jint src, jint num) -{ - glExtractComponentEXT(res, src, num); - +static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindParameterEXT(JNIEnv *env, jclass clazz, jint value) { + GLuint __result = glBindParameterEXT(value); + return __result; } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glGenSymbolsEXT - */ -static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glGenSymbolsEXT - (JNIEnv * env, jclass clazz, jint dataType, jint storageType, jint range, jint components) -{ - GLuint result = glGenSymbolsEXT(dataType, storageType, range, components); - - return result; +static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindTextureUnitParameterEXT(JNIEnv *env, jclass clazz, jint unit, jint value) { + GLuint __result = glBindTextureUnitParameterEXT(unit, value); + return __result; } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglSetInvariantEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglSetInvariantEXT - (JNIEnv * env, jclass clazz, jint id, jint type, jobject pAddr, jint pAddr_offset) -{ - GLvoid *pAddr_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pAddr) + pAddr_offset); - glSetInvariantEXT(id, type, pAddr_ptr); - +static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindTexGenParameterEXT(JNIEnv *env, jclass clazz, jint unit, jint coord, jint value) { + GLuint __result = glBindTexGenParameterEXT(unit, coord, value); + return __result; } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglSetLocalConstantEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglSetLocalConstantEXT - (JNIEnv * env, jclass clazz, jint id, jint type, jobject pAddr, jint pAddr_offset) -{ - GLvoid *pAddr_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pAddr) + pAddr_offset); - glSetLocalConstantEXT(id, type, pAddr_ptr); - +static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindMaterialParameterEXT(JNIEnv *env, jclass clazz, jint face, jint value) { + GLuint __result = glBindMaterialParameterEXT(face, value); + return __result; } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglVariantbvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantbvEXT - (JNIEnv * env, jclass clazz, jint id, jobject pAddr, jint pAddr_offset) -{ - GLbyte *pAddr_ptr = (GLbyte *)(*env)->GetDirectBufferAddress(env, pAddr) + pAddr_offset; - glVariantbvEXT(id, pAddr_ptr); - +static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindLightParameterEXT(JNIEnv *env, jclass clazz, jint light, jint value) { + GLuint __result = glBindLightParameterEXT(light, value); + return __result; } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglVariantsvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantsvEXT - (JNIEnv * env, jclass clazz, jint id, jobject psAddr, jint psAddr_offset) -{ - GLshort *psAddr_ptr = (GLshort *)(*env)->GetDirectBufferAddress(env, psAddr) + psAddr_offset; - glVariantsvEXT(id, psAddr_ptr); - -} - -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglVariantfvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantfvEXT - (JNIEnv * env, jclass clazz, jint id, jobject pfAddr, jint pfAddr_offset) -{ - GLfloat *pfAddr_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfAddr) + pfAddr_offset; - glVariantfvEXT(id, pfAddr_ptr); - -} - -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglVariantivEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantivEXT - (JNIEnv * env, jclass clazz, jint id, jobject piAddr, jint piAddr_offset) -{ - GLint *piAddr_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piAddr) + piAddr_offset; - glVariantivEXT(id, piAddr_ptr); - -} - -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglVariantubvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantubvEXT - (JNIEnv * env, jclass clazz, jint id, jobject pAddr, jint pAddr_offset) -{ - GLubyte *pAddr_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, pAddr) + pAddr_offset; - glVariantubvEXT(id, pAddr_ptr); - -} - -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglVariantusvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantusvEXT - (JNIEnv * env, jclass clazz, jint id, jobject psAddr, jint psAddr_offset) -{ - GLushort *psAddr_ptr = (GLushort *)(*env)->GetDirectBufferAddress(env, psAddr) + psAddr_offset; - glVariantusvEXT(id, psAddr_ptr); - -} - -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglVariantuivEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantuivEXT - (JNIEnv * env, jclass clazz, jint id, jobject piAddr, jint piAddr_offset) -{ - GLuint *piAddr_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, piAddr) + piAddr_offset; - glVariantuivEXT(id, piAddr_ptr); - -} - -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglVariantPointerEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantPointerEXT - (JNIEnv * env, jclass clazz, jint id, jint type, jint stride, jobject pAddr, jint pAddr_offset) -{ - GLvoid *pAddr_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pAddr) + pAddr_offset); - glVariantPointerEXT(id, type, stride, pAddr_ptr); - -} - -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglVariantPointerEXTVBO - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantPointerEXTVBO - (JNIEnv * env, jclass clazz, jint id, jint type, jint stride, jint buffer_offset) -{ - glVariantPointerEXT(id, type, stride, (GLvoid *)buffer_offset); - -} - -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glEnableVariantClientStateEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glEnableVariantClientStateEXT - (JNIEnv * env, jclass clazz, jint id) -{ - glEnableVariantClientStateEXT(id); - -} - -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glDisableVariantClientStateEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glDisableVariantClientStateEXT - (JNIEnv * env, jclass clazz, jint id) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glDisableVariantClientStateEXT(JNIEnv *env, jclass clazz, jint id) { glDisableVariantClientStateEXT(id); - } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glBindLightParameterEXT - */ -static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindLightParameterEXT - (JNIEnv * env, jclass clazz, jint light, jint value) -{ - GLuint result = glBindLightParameterEXT(light, value); - - return result; +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glEnableVariantClientStateEXT(JNIEnv *env, jclass clazz, jint id) { + glEnableVariantClientStateEXT(id); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glBindMaterialParameterEXT - */ -static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindMaterialParameterEXT - (JNIEnv * env, jclass clazz, jint face, jint value) -{ - GLuint result = glBindMaterialParameterEXT(face, value); - - return result; +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantPointerEXT(JNIEnv *env, jclass clazz, jint id, jint type, jint stride, jobject pAddr, jint pAddr_position) { + GLvoid *pAddr_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pAddr)) + pAddr_position)); + glVariantPointerEXT(id, type, stride, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glBindTexGenParameterEXT - */ -static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindTexGenParameterEXT - (JNIEnv * env, jclass clazz, jint unit, jint coord, jint value) -{ - GLuint result = glBindTexGenParameterEXT(unit, coord, value); - - return result; +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantPointerEXTBO(JNIEnv *env, jclass clazz, jint id, jint type, jint stride, jint pAddr_buffer_offset) { + GLvoid *pAddr_address = ((GLvoid *)offsetToPointer(pAddr_buffer_offset)); + glVariantPointerEXT(id, type, stride, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glBindTextureUnitParameterEXT - */ -static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindTextureUnitParameterEXT - (JNIEnv * env, jclass clazz, jint unit, jint value) -{ - GLuint result = glBindTextureUnitParameterEXT(unit, value); - - return result; +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantuivEXT(JNIEnv *env, jclass clazz, jint id, jobject pAddr, jint pAddr_position) { + GLuint *pAddr_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, pAddr)) + pAddr_position; + glVariantuivEXT(id, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glBindParameterEXT - */ -static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindParameterEXT - (JNIEnv * env, jclass clazz, jint value) -{ - GLuint result = glBindParameterEXT(value); - - return result; +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantusvEXT(JNIEnv *env, jclass clazz, jint id, jobject pAddr, jint pAddr_position) { + GLushort *pAddr_address = ((GLushort *)(*env)->GetDirectBufferAddress(env, pAddr)) + pAddr_position; + glVariantusvEXT(id, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glIsVariantEnabledEXT - */ -static jboolean JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glIsVariantEnabledEXT - (JNIEnv * env, jclass clazz, jint id, jint cap) -{ - GLboolean result = glIsVariantEnabledEXT(id, cap); - - return result; +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantubvEXT(JNIEnv *env, jclass clazz, jint id, jobject pAddr, jint pAddr_position) { + GLubyte *pAddr_address = ((GLubyte *)(*env)->GetDirectBufferAddress(env, pAddr)) + pAddr_position; + glVariantubvEXT(id, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglGetVariantBooleanvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantBooleanvEXT - (JNIEnv * env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_offset) -{ - GLubyte *pbData_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, pbData) + pbData_offset; - glGetVariantBooleanvEXT(id, value, pbData_ptr); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantfvEXT(JNIEnv *env, jclass clazz, jint id, jobject pAddr, jint pAddr_position) { + GLfloat *pAddr_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, pAddr)) + pAddr_position; + glVariantfvEXT(id, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglGetVariantIntegervEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantIntegervEXT - (JNIEnv * env, jclass clazz, jint id, jint value, jobject piData, jint piData_offset) -{ - GLint *piData_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piData) + piData_offset; - glGetVariantIntegervEXT(id, value, piData_ptr); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantivEXT(JNIEnv *env, jclass clazz, jint id, jobject pAddr, jint pAddr_position) { + GLint *pAddr_address = ((GLint *)(*env)->GetDirectBufferAddress(env, pAddr)) + pAddr_position; + glVariantivEXT(id, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglGetVariantFloatvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantFloatvEXT - (JNIEnv * env, jclass clazz, jint id, jint value, jobject pfData, jint pfData_offset) -{ - GLfloat *pfData_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfData) + pfData_offset; - glGetVariantFloatvEXT(id, value, pfData_ptr); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantsvEXT(JNIEnv *env, jclass clazz, jint id, jobject pAddr, jint pAddr_position) { + GLshort *pAddr_address = ((GLshort *)(*env)->GetDirectBufferAddress(env, pAddr)) + pAddr_position; + glVariantsvEXT(id, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: glGetVariantPointerEXT - */ -static jobject JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glGetVariantPointerEXT - (JNIEnv * env, jclass clazz, jint id, jint value, jint size) -{ - void *address; - glGetVariantPointervEXT((GLuint)id, (GLuint)value, &address); - - return safeNewBuffer(env, address, size); +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglVariantbvEXT(JNIEnv *env, jclass clazz, jint id, jobject pAddr, jint pAddr_position) { + GLbyte *pAddr_address = ((GLbyte *)(*env)->GetDirectBufferAddress(env, pAddr)) + pAddr_position; + glVariantbvEXT(id, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglGetInvariantBooleanvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantBooleanvEXT - (JNIEnv * env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_offset) -{ - GLubyte *pbData_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, pbData) + pbData_offset; - glGetInvariantBooleanvEXT(id, value, pbData_ptr); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglSetLocalConstantEXT(JNIEnv *env, jclass clazz, jint id, jint type, jobject pAddr, jint pAddr_position) { + GLvoid *pAddr_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pAddr)) + pAddr_position)); + glSetLocalConstantEXT(id, type, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglGetInvariantIntegervEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantIntegervEXT - (JNIEnv * env, jclass clazz, jint id, jint value, jobject piData, jint piData_offset) -{ - GLint *piData_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piData) + piData_offset; - glGetInvariantIntegervEXT(id, value, piData_ptr); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglSetInvariantEXT(JNIEnv *env, jclass clazz, jint id, jint type, jobject pAddr, jint pAddr_position) { + GLvoid *pAddr_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pAddr)) + pAddr_position)); + glSetInvariantEXT(id, type, pAddr_address); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglGetInvariantFloatvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantFloatvEXT - (JNIEnv * env, jclass clazz, jint id, jint value, jobject pfData, jint pfData_offset) -{ - GLfloat *pfData_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfData) + pfData_offset; - glGetInvariantFloatvEXT(id, value, pfData_ptr); - +static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glGenSymbolsEXT(JNIEnv *env, jclass clazz, jint dataType, jint storageType, jint range, jint components) { + GLuint __result = glGenSymbolsEXT(dataType, storageType, range, components); + return __result; } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglGetLocalConstantBooleanvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantBooleanvEXT - (JNIEnv * env, jclass clazz, jint id, jint value, jobject pbData, jint pbData_offset) -{ - GLubyte *pbData_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, pbData) + pbData_offset; - glGetLocalConstantBooleanvEXT(id, value, pbData_ptr); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glExtractComponentEXT(JNIEnv *env, jclass clazz, jint res, jint src, jint num) { + glExtractComponentEXT(res, src, num); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglGetLocalConstantIntegervEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantIntegervEXT - (JNIEnv * env, jclass clazz, jint id, jint value, jobject piData, jint piData_offset) -{ - GLint *piData_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piData) + piData_offset; - glGetLocalConstantIntegervEXT(id, value, piData_ptr); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glInsertComponentEXT(JNIEnv *env, jclass clazz, jint res, jint src, jint num) { + glInsertComponentEXT(res, src, num); } -/* - * Class: org.lwjgl.opengl.EXTVertexShader - * Method: nglGetLocalConstantFloatvEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantFloatvEXT - (JNIEnv * env, jclass clazz, jint id, jint value, jobject pfData, jint pfData_offset) -{ - GLfloat *pfData_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfData) + pfData_offset; - glGetLocalConstantFloatvEXT(id, value, pfData_ptr); - +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glWriteMaskEXT(JNIEnv *env, jclass clazz, jint res, jint in, jint outX, jint outY, jint outZ, jint outW) { + glWriteMaskEXT(res, in, outX, outY, outZ, outW); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glSwizzleEXT(JNIEnv *env, jclass clazz, jint res, jint in, jint outX, jint outY, jint outZ, jint outW) { + glSwizzleEXT(res, in, outX, outY, outZ, outW); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp3EXT(JNIEnv *env, jclass clazz, jint op, jint res, jint arg1, jint arg2, jint arg3) { + glShaderOp3EXT(op, res, arg1, arg2, arg3); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp2EXT(JNIEnv *env, jclass clazz, jint op, jint res, jint arg1, jint arg2) { + glShaderOp2EXT(op, res, arg1, arg2); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp1EXT(JNIEnv *env, jclass clazz, jint op, jint res, jint arg1) { + glShaderOp1EXT(op, res, arg1); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glDeleteVertexShaderEXT(JNIEnv *env, jclass clazz, jint id) { + glDeleteVertexShaderEXT(id); +} + +static jint JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glGenVertexShadersEXT(JNIEnv *env, jclass clazz, jint range) { + GLuint __result = glGenVertexShadersEXT(range); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBindVertexShaderEXT(JNIEnv *env, jclass clazz, jint id) { + glBindVertexShaderEXT(id); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glEndVertexShaderEXT(JNIEnv *env, jclass clazz) { + glEndVertexShaderEXT(); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_glBeginVertexShaderEXT(JNIEnv *env, jclass clazz) { + glBeginVertexShaderEXT(); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTVertexShader_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glBeginVertexShaderEXT", "()V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glBeginVertexShaderEXT, "glBeginVertexShaderEXT", (void*)&glBeginVertexShaderEXT}, - {"glEndVertexShaderEXT", "()V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glEndVertexShaderEXT, "glEndVertexShaderEXT", (void*)&glEndVertexShaderEXT}, - {"glBindVertexShaderEXT", "(I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glBindVertexShaderEXT, "glBindVertexShaderEXT", (void*)&glBindVertexShaderEXT}, - {"glGenVertexShadersEXT", "(I)I", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glGenVertexShadersEXT, "glGenVertexShadersEXT", (void*)&glGenVertexShadersEXT}, - {"glDeleteVertexShaderEXT", "(I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glDeleteVertexShaderEXT, "glDeleteVertexShaderEXT", (void*)&glDeleteVertexShaderEXT}, - {"glShaderOp1EXT", "(III)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp1EXT, "glShaderOp1EXT", (void*)&glShaderOp1EXT}, - {"glShaderOp2EXT", "(IIII)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp2EXT, "glShaderOp2EXT", (void*)&glShaderOp2EXT}, - {"glShaderOp3EXT", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp3EXT, "glShaderOp3EXT", (void*)&glShaderOp3EXT}, - {"glSwizzleEXT", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glSwizzleEXT, "glSwizzleEXT", (void*)&glSwizzleEXT}, - {"glWriteMaskEXT", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glWriteMaskEXT, "glWriteMaskEXT", (void*)&glWriteMaskEXT}, - {"glInsertComponentEXT", "(III)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glInsertComponentEXT, "glInsertComponentEXT", (void*)&glInsertComponentEXT}, - {"glExtractComponentEXT", "(III)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glExtractComponentEXT, "glExtractComponentEXT", (void*)&glExtractComponentEXT}, - {"glGenSymbolsEXT", "(IIII)I", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glGenSymbolsEXT, "glGenSymbolsEXT", (void*)&glGenSymbolsEXT}, - {"nglSetInvariantEXT", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglSetInvariantEXT, "glSetInvariantEXT", (void*)&glSetInvariantEXT}, - {"nglSetLocalConstantEXT", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglSetLocalConstantEXT, "glSetLocalConstantEXT", (void*)&glSetLocalConstantEXT}, - {"nglVariantbvEXT", "(ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantbvEXT, "glVariantbvEXT", (void*)&glVariantbvEXT}, - {"nglVariantsvEXT", "(ILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantsvEXT, "glVariantsvEXT", (void*)&glVariantsvEXT}, - {"nglVariantfvEXT", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantfvEXT, "glVariantfvEXT", (void*)&glVariantfvEXT}, - {"nglVariantivEXT", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantivEXT, "glVariantivEXT", (void*)&glVariantivEXT}, - {"nglVariantubvEXT", "(ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantubvEXT, "glVariantubvEXT", (void*)&glVariantubvEXT}, - {"nglVariantusvEXT", "(ILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantusvEXT, "glVariantusvEXT", (void*)&glVariantusvEXT}, - {"nglVariantuivEXT", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantuivEXT, "glVariantuivEXT", (void*)&glVariantuivEXT}, - {"nglVariantPointerEXT", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantPointerEXT, "glVariantPointerEXT", (void*)&glVariantPointerEXT}, - {"nglVariantPointerEXTVBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantPointerEXTVBO, NULL, NULL}, - {"glEnableVariantClientStateEXT", "(I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glEnableVariantClientStateEXT, "glEnableVariantClientStateEXT", (void*)&glEnableVariantClientStateEXT}, - {"glDisableVariantClientStateEXT", "(I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glDisableVariantClientStateEXT, "glDisableVariantClientStateEXT", (void*)&glDisableVariantClientStateEXT}, - {"glBindLightParameterEXT", "(II)I", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glBindLightParameterEXT, "glBindLightParameterEXT", (void*)&glBindLightParameterEXT}, - {"glBindMaterialParameterEXT", "(II)I", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glBindMaterialParameterEXT, "glBindMaterialParameterEXT", (void*)&glBindMaterialParameterEXT}, - {"glBindTexGenParameterEXT", "(III)I", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glBindTexGenParameterEXT, "glBindTexGenParameterEXT", (void*)&glBindTexGenParameterEXT}, - {"glBindTextureUnitParameterEXT", "(II)I", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glBindTextureUnitParameterEXT, "glBindTextureUnitParameterEXT", (void*)&glBindTextureUnitParameterEXT}, - {"glBindParameterEXT", "(I)I", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glBindParameterEXT, "glBindParameterEXT", (void*)&glBindParameterEXT}, - {"glIsVariantEnabledEXT", "(II)Z", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glIsVariantEnabledEXT, "glIsVariantEnabledEXT", (void*)&glIsVariantEnabledEXT}, - {"nglGetVariantBooleanvEXT", "(IILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantBooleanvEXT, "glGetVariantBooleanvEXT", (void*)&glGetVariantBooleanvEXT}, - {"nglGetVariantIntegervEXT", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantIntegervEXT, "glGetVariantIntegervEXT", (void*)&glGetVariantIntegervEXT}, - {"nglGetVariantFloatvEXT", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantFloatvEXT, "glGetVariantFloatvEXT", (void*)&glGetVariantFloatvEXT}, - {"glGetVariantPointerEXT", "(III)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_glGetVariantPointerEXT, "glGetVariantPointervEXT", (void*)&glGetVariantPointervEXT}, - {"nglGetInvariantBooleanvEXT", "(IILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantBooleanvEXT, "glGetInvariantBooleanvEXT", (void*)&glGetInvariantBooleanvEXT}, - {"nglGetInvariantIntegervEXT", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantIntegervEXT, "glGetInvariantIntegervEXT", (void*)&glGetInvariantIntegervEXT}, - {"nglGetInvariantFloatvEXT", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantFloatvEXT, "glGetInvariantFloatvEXT", (void*)&glGetInvariantFloatvEXT}, - {"nglGetLocalConstantBooleanvEXT", "(IILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantBooleanvEXT, "glGetLocalConstantBooleanvEXT", (void*)&glGetLocalConstantBooleanvEXT}, - {"nglGetLocalConstantIntegervEXT", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantIntegervEXT, "glGetLocalConstantIntegervEXT", (void*)&glGetLocalConstantIntegervEXT}, - {"nglGetLocalConstantFloatvEXT", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantFloatvEXT, "glGetLocalConstantFloatvEXT", (void*)&glGetLocalConstantFloatvEXT} + {"nglGetLocalConstantFloatvEXT", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantFloatvEXT, "glGetLocalConstantFloatvEXT", (void *)&glGetLocalConstantFloatvEXT}, + {"nglGetLocalConstantIntegervEXT", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantIntegervEXT, "glGetLocalConstantIntegervEXT", (void *)&glGetLocalConstantIntegervEXT}, + {"nglGetLocalConstantBooleanvEXT", "(IILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetLocalConstantBooleanvEXT, "glGetLocalConstantBooleanvEXT", (void *)&glGetLocalConstantBooleanvEXT}, + {"nglGetInvariantFloatvEXT", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantFloatvEXT, "glGetInvariantFloatvEXT", (void *)&glGetInvariantFloatvEXT}, + {"nglGetInvariantIntegervEXT", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantIntegervEXT, "glGetInvariantIntegervEXT", (void *)&glGetInvariantIntegervEXT}, + {"nglGetInvariantBooleanvEXT", "(IILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetInvariantBooleanvEXT, "glGetInvariantBooleanvEXT", (void *)&glGetInvariantBooleanvEXT}, + {"nglGetVariantPointervEXT", "(III)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantPointervEXT, "glGetVariantPointervEXT", (void *)&glGetVariantPointervEXT}, + {"nglGetVariantFloatvEXT", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantFloatvEXT, "glGetVariantFloatvEXT", (void *)&glGetVariantFloatvEXT}, + {"nglGetVariantIntegervEXT", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantIntegervEXT, "glGetVariantIntegervEXT", (void *)&glGetVariantIntegervEXT}, + {"nglGetVariantBooleanvEXT", "(IILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglGetVariantBooleanvEXT, "glGetVariantBooleanvEXT", (void *)&glGetVariantBooleanvEXT}, + {"glIsVariantEnabledEXT", "(II)Z", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glIsVariantEnabledEXT, "glIsVariantEnabledEXT", (void *)&glIsVariantEnabledEXT}, + {"glBindParameterEXT", "(I)I", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glBindParameterEXT, "glBindParameterEXT", (void *)&glBindParameterEXT}, + {"glBindTextureUnitParameterEXT", "(II)I", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glBindTextureUnitParameterEXT, "glBindTextureUnitParameterEXT", (void *)&glBindTextureUnitParameterEXT}, + {"glBindTexGenParameterEXT", "(III)I", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glBindTexGenParameterEXT, "glBindTexGenParameterEXT", (void *)&glBindTexGenParameterEXT}, + {"glBindMaterialParameterEXT", "(II)I", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glBindMaterialParameterEXT, "glBindMaterialParameterEXT", (void *)&glBindMaterialParameterEXT}, + {"glBindLightParameterEXT", "(II)I", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glBindLightParameterEXT, "glBindLightParameterEXT", (void *)&glBindLightParameterEXT}, + {"glDisableVariantClientStateEXT", "(I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glDisableVariantClientStateEXT, "glDisableVariantClientStateEXT", (void *)&glDisableVariantClientStateEXT}, + {"glEnableVariantClientStateEXT", "(I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glEnableVariantClientStateEXT, "glEnableVariantClientStateEXT", (void *)&glEnableVariantClientStateEXT}, + {"nglVariantPointerEXT", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantPointerEXT, "glVariantPointerEXT", (void *)&glVariantPointerEXT}, + {"nglVariantPointerEXTBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantPointerEXTBO, "glVariantPointerEXT", (void *)&glVariantPointerEXT}, + {"nglVariantuivEXT", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantuivEXT, "glVariantuivEXT", (void *)&glVariantuivEXT}, + {"nglVariantusvEXT", "(ILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantusvEXT, "glVariantusvEXT", (void *)&glVariantusvEXT}, + {"nglVariantubvEXT", "(ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantubvEXT, "glVariantubvEXT", (void *)&glVariantubvEXT}, + {"nglVariantfvEXT", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantfvEXT, "glVariantfvEXT", (void *)&glVariantfvEXT}, + {"nglVariantivEXT", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantivEXT, "glVariantivEXT", (void *)&glVariantivEXT}, + {"nglVariantsvEXT", "(ILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantsvEXT, "glVariantsvEXT", (void *)&glVariantsvEXT}, + {"nglVariantbvEXT", "(ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglVariantbvEXT, "glVariantbvEXT", (void *)&glVariantbvEXT}, + {"nglSetLocalConstantEXT", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglSetLocalConstantEXT, "glSetLocalConstantEXT", (void *)&glSetLocalConstantEXT}, + {"nglSetInvariantEXT", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_nglSetInvariantEXT, "glSetInvariantEXT", (void *)&glSetInvariantEXT}, + {"glGenSymbolsEXT", "(IIII)I", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glGenSymbolsEXT, "glGenSymbolsEXT", (void *)&glGenSymbolsEXT}, + {"glExtractComponentEXT", "(III)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glExtractComponentEXT, "glExtractComponentEXT", (void *)&glExtractComponentEXT}, + {"glInsertComponentEXT", "(III)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glInsertComponentEXT, "glInsertComponentEXT", (void *)&glInsertComponentEXT}, + {"glWriteMaskEXT", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glWriteMaskEXT, "glWriteMaskEXT", (void *)&glWriteMaskEXT}, + {"glSwizzleEXT", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glSwizzleEXT, "glSwizzleEXT", (void *)&glSwizzleEXT}, + {"glShaderOp3EXT", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp3EXT, "glShaderOp3EXT", (void *)&glShaderOp3EXT}, + {"glShaderOp2EXT", "(IIII)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp2EXT, "glShaderOp2EXT", (void *)&glShaderOp2EXT}, + {"glShaderOp1EXT", "(III)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glShaderOp1EXT, "glShaderOp1EXT", (void *)&glShaderOp1EXT}, + {"glDeleteVertexShaderEXT", "(I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glDeleteVertexShaderEXT, "glDeleteVertexShaderEXT", (void *)&glDeleteVertexShaderEXT}, + {"glGenVertexShadersEXT", "(I)I", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glGenVertexShadersEXT, "glGenVertexShadersEXT", (void *)&glGenVertexShadersEXT}, + {"glBindVertexShaderEXT", "(I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glBindVertexShaderEXT, "glBindVertexShaderEXT", (void *)&glBindVertexShaderEXT}, + {"glEndVertexShaderEXT", "()V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glEndVertexShaderEXT, "glEndVertexShaderEXT", (void *)&glEndVertexShaderEXT}, + {"glBeginVertexShaderEXT", "()V", (void *)&Java_org_lwjgl_opengl_EXTVertexShader_glBeginVertexShaderEXT, "glBeginVertexShaderEXT", (void *)&glBeginVertexShaderEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/ext/org_lwjgl_opengl_EXTVertexWeighting.c b/src/native/common/ext/org_lwjgl_opengl_EXTVertexWeighting.c index 309b613a..2ea748a7 100644 --- a/src/native/common/ext/org_lwjgl_opengl_EXTVertexWeighting.c +++ b/src/native/common/ext/org_lwjgl_opengl_EXTVertexWeighting.c @@ -1,91 +1,34 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.EXTVertexWeighting -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glVertexWeightfEXTPROC) (GLfloat weight); -typedef void (APIENTRY * glVertexWeightPointerEXTPROC) (GLsizei size, GLenum type, GLsizei stride, const GLvoid *pointer); +typedef void (APIENTRY *glVertexWeightPointerEXTPROC) (GLsizei size, GLenum type, GLsizei stride, const GLvoid * pPointer); +typedef void (APIENTRY *glVertexWeightfEXTPROC) (GLfloat weight); -static glVertexWeightfEXTPROC glVertexWeightfEXT; static glVertexWeightPointerEXTPROC glVertexWeightPointerEXT; +static glVertexWeightfEXTPROC glVertexWeightfEXT; -/* - * Class: org.lwjgl.opengl.EXTVertexWeighting - * Method: glVertexWeightfEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexWeighting_glVertexWeightfEXT - (JNIEnv * env, jclass clazz, jfloat weight) -{ +static void JNICALL Java_org_lwjgl_opengl_EXTVertexWeighting_nglVertexWeightPointerEXT(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jobject pPointer, jint pPointer_position) { + const GLvoid *pPointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pPointer)) + pPointer_position)); + glVertexWeightPointerEXT(size, type, stride, pPointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTVertexWeighting_nglVertexWeightPointerEXTBO(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jint pPointer_buffer_offset) { + const GLvoid *pPointer_address = ((const GLvoid *)offsetToPointer(pPointer_buffer_offset)); + glVertexWeightPointerEXT(size, type, stride, pPointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_EXTVertexWeighting_glVertexWeightfEXT(JNIEnv *env, jclass clazz, jfloat weight) { glVertexWeightfEXT(weight); } -/* - * Class: org.lwjgl.opengl.EXTVertexWeighting - * Method: nglVertexWeightPointerEXT - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexWeighting_nglVertexWeightPointerEXT - (JNIEnv * env, jclass clazz, jint size, jint type, jint stride, jobject pPointer, jint pPointer_offset) -{ - GLvoid *pPointer_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pPointer) + pPointer_offset); - glVertexWeightPointerEXT(size, type, stride, pPointer_ptr); -} - -/* - * Class: org.lwjgl.opengl.EXTVertexWeighting - * Method: nglVertexWeightPointerEXTVBO - */ -static void JNICALL Java_org_lwjgl_opengl_EXTVertexWeighting_nglVertexWeightPointerEXTVBO - (JNIEnv * env, jclass clazz, jint size, jint type, jint stride, jint buffer_offset) -{ - glVertexWeightPointerEXT(size, type, stride, (GLvoid *)buffer_offset); -} - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_EXTVertexWeighting_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glVertexWeightfEXT", "(F)V", (void*)&Java_org_lwjgl_opengl_EXTVertexWeighting_glVertexWeightfEXT, "glVertexWeightfEXT", (void*)&glVertexWeightfEXT}, - {"nglVertexWeightPointerEXT", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_EXTVertexWeighting_nglVertexWeightPointerEXT, "glVertexWeightPointerEXT", (void*)&glVertexWeightPointerEXT}, - {"nglVertexWeightPointerEXTVBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_EXTVertexWeighting_nglVertexWeightPointerEXTVBO, NULL, NULL} + {"nglVertexWeightPointerEXT", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_EXTVertexWeighting_nglVertexWeightPointerEXT, "glVertexWeightPointerEXT", (void *)&glVertexWeightPointerEXT}, + {"nglVertexWeightPointerEXTBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_EXTVertexWeighting_nglVertexWeightPointerEXTBO, "glVertexWeightPointerEXT", (void *)&glVertexWeightPointerEXT}, + {"glVertexWeightfEXT", "(F)V", (void *)&Java_org_lwjgl_opengl_EXTVertexWeighting_glVertexWeightfEXT, "glVertexWeightfEXT", (void *)&glVertexWeightfEXT} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/extal.h b/src/native/common/extal.h index 0a7bad01..37b26c34 100644 --- a/src/native/common/extal.h +++ b/src/native/common/extal.h @@ -97,12 +97,7 @@ void InitializeOpenAL(JNIEnv *env, jobjectArray oalPaths); void DeInitializeOpenAL(); typedef ALvoid* (ALAPIENTRY *alGetProcAddressPROC)( ALubyte* fname ); -typedef ALubyte* (ALAPIENTRY *alGetStringPROC)( ALenum param ); -typedef ALenum (ALAPIENTRY *alGetErrorPROC)( ALvoid ); - extern alGetProcAddressPROC alGetProcAddress; -extern alGetStringPROC alGetString; -extern alGetErrorPROC alGetError; typedef ALCcontext* (ALCAPIENTRY *alcGetCurrentContextPROC)(ALCvoid); extern alcGetCurrentContextPROC alcGetCurrentContext; diff --git a/src/native/common/extgl.h b/src/native/common/extgl.h index d81819b5..c3ea3b43 100644 --- a/src/native/common/extgl.h +++ b/src/native/common/extgl.h @@ -135,8 +135,8 @@ typedef int GLintptrARB; typedef unsigned int GLsizeiptrARB; typedef unsigned char GLcharARB; -#define GL_VERSION 0x1F02 -#define GL_EXTENSIONS 0x1F03 +// NV_half_float types +typedef unsigned short GLhalf; /* helper stuff */ @@ -169,12 +169,6 @@ struct ExtensionTypes extern struct ExtensionTypes extgl_Extensions; #endif -//typedef GLenum (APIENTRY * glGetErrorPROC) (void); -//typedef const GLubyte * (APIENTRY * glGetStringPROC) (GLenum name); - -//extern glGetErrorPROC glGetError; -//extern glGetStringPROC glGetString; - /* initializes everything, call this right after the rc is created. the function returns true if successful */ extern bool extgl_Open(JNIEnv *env); extern void extgl_Close(void); diff --git a/src/native/common/nv/org_lwjgl_opengl_NVEvaluators.c b/src/native/common/nv/org_lwjgl_opengl_NVEvaluators.c index 4392872c..d92fb644 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVEvaluators.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVEvaluators.c @@ -1,177 +1,84 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVEvaluators -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glMapControlPointsNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const GLvoid *points); -typedef void (APIENTRY * glMapParameterivNVPROC) (GLenum target, GLenum pname, const GLint *params); -typedef void (APIENTRY * glMapParameterfvNVPROC) (GLenum target, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glGetMapControlPointsNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, GLvoid *points); -typedef void (APIENTRY * glGetMapParameterivNVPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetMapParameterfvNVPROC) (GLenum target, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetMapAttribParameterivNVPROC) (GLenum target, GLuint index, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetMapAttribParameterfvNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glEvalMapsNVPROC) (GLenum target, GLenum mode); +typedef void (APIENTRY *glEvalMapsNVPROC) (GLenum target, GLenum mode); +typedef void (APIENTRY *glGetMapAttribParameterivNVPROC) (GLenum target, GLuint index, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetMapAttribParameterfvNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetMapParameterivNVPROC) (GLenum target, GLenum pname, const GLint * params); +typedef void (APIENTRY *glGetMapParameterfvNVPROC) (GLenum target, GLenum pname, const GLfloat * params); +typedef void (APIENTRY *glMapParameterivNVPROC) (GLenum target, GLenum pname, const GLint * params); +typedef void (APIENTRY *glMapParameterfvNVPROC) (GLenum target, GLenum pname, const GLfloat * params); +typedef void (APIENTRY *glMapControlPointsNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const GLvoid * pPoints); +typedef void (APIENTRY *glGetMapControlPointsNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, const GLvoid * pPoints); -static glMapControlPointsNVPROC glMapControlPointsNV; -static glMapParameterivNVPROC glMapParameterivNV; -static glMapParameterfvNVPROC glMapParameterfvNV; -static glGetMapControlPointsNVPROC glGetMapControlPointsNV; -static glGetMapParameterivNVPROC glGetMapParameterivNV; -static glGetMapParameterfvNVPROC glGetMapParameterfvNV; +static glEvalMapsNVPROC glEvalMapsNV; static glGetMapAttribParameterivNVPROC glGetMapAttribParameterivNV; static glGetMapAttribParameterfvNVPROC glGetMapAttribParameterfvNV; -static glEvalMapsNVPROC glEvalMapsNV; +static glGetMapParameterivNVPROC glGetMapParameterivNV; +static glGetMapParameterfvNVPROC glGetMapParameterfvNV; +static glMapParameterivNVPROC glMapParameterivNV; +static glMapParameterfvNVPROC glMapParameterfvNV; +static glMapControlPointsNVPROC glMapControlPointsNV; +static glGetMapControlPointsNVPROC glGetMapControlPointsNV; -/* - * Class: org.lwjgl.opengl.NVEvaluators - * Method: nglGetMapControlPointsNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglGetMapControlPointsNV - (JNIEnv * env, jclass clazz, jint target, jint index, jint type, jint ustride, jint vstride, jboolean packed, jobject pPoints, jint pPoints_offset) -{ - GLvoid *pPoints_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pPoints) + pPoints_offset); - glGetMapControlPointsNV(target, index, type, ustride, vstride, packed, pPoints_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVEvaluators - * Method: nglMapControlPointsNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglMapControlPointsNV - (JNIEnv * env, jclass clazz, jint target, jint index, jint type, jint ustride, jint vstride, jint uorder, jint vorder, jboolean packed, jobject pPoints, jint pPoints_offset) -{ - GLvoid *pPoints_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pPoints) + pPoints_offset); - glMapControlPointsNV(target, index, type, ustride, vstride, uorder, vorder, packed, pPoints_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVEvaluators - * Method: nglMapParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglMapParameterfvNV - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glMapParameterfvNV(target, pname, pfParams_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVEvaluators - * Method: nglMapParameterivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglMapParameterivNV - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glMapParameterivNV(target, pname, piParams_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVEvaluators - * Method: nglGetMapParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglGetMapParameterfvNV - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glGetMapParameterfvNV(target, pname, pfParams_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVEvaluators - * Method: nglGetMapParameterivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglGetMapParameterivNV - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glGetMapParameterivNV(target, pname, piParams_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVEvaluators - * Method: nglGetMapAttribParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglGetMapAttribParameterfvNV - (JNIEnv * env, jclass clazz, jint target, jint index, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glGetMapAttribParameterfvNV(target, index, pname, pfParams_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVEvaluators - * Method: nglGetMapAttribParameterivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglGetMapAttribParameterivNV - (JNIEnv * env, jclass clazz, jint target, jint index, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glGetMapAttribParameterivNV(target, index, pname, piParams_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVEvaluators - * Method: glEvalMapsNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_glEvalMapsNV - (JNIEnv * env, jclass clazz, jint target, jint mode) -{ +static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_glEvalMapsNV(JNIEnv *env, jclass clazz, jint target, jint mode) { glEvalMapsNV(target, mode); } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglGetMapAttribParameterivNV(JNIEnv *env, jclass clazz, jint target, jint index, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetMapAttribParameterivNV(target, index, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglGetMapAttribParameterfvNV(JNIEnv *env, jclass clazz, jint target, jint index, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetMapAttribParameterfvNV(target, index, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglGetMapParameterivNV(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetMapParameterivNV(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglGetMapParameterfvNV(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetMapParameterfvNV(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglMapParameterivNV(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glMapParameterivNV(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglMapParameterfvNV(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glMapParameterfvNV(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglMapControlPointsNV(JNIEnv *env, jclass clazz, jint target, jint index, jint type, jint ustride, jint vstride, jint uorder, jint vorder, jboolean packed, jobject pPoints, jint pPoints_position) { + const GLvoid *pPoints_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pPoints)) + pPoints_position)); + glMapControlPointsNV(target, index, type, ustride, vstride, uorder, vorder, packed, pPoints_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVEvaluators_nglGetMapControlPointsNV(JNIEnv *env, jclass clazz, jint target, jint index, jint type, jint ustride, jint vstride, jboolean packed, jobject pPoints, jint pPoints_position) { + const GLvoid *pPoints_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pPoints)) + pPoints_position)); + glGetMapControlPointsNV(target, index, type, ustride, vstride, packed, pPoints_address); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVEvaluators_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglGetMapControlPointsNV", "(IIIIIZLjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_NVEvaluators_nglGetMapControlPointsNV, "glGetMapControlPointsNV", (void*)&glGetMapControlPointsNV}, - {"nglMapControlPointsNV", "(IIIIIIIZLjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_NVEvaluators_nglMapControlPointsNV, "glMapControlPointsNV", (void*)&glMapControlPointsNV}, - {"nglMapParameterfvNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVEvaluators_nglMapParameterfvNV, "glMapParameterfvNV", (void*)&glMapParameterfvNV}, - {"nglMapParameterivNV", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVEvaluators_nglMapParameterivNV, "glMapParameterivNV", (void*)&glMapParameterivNV}, - {"nglGetMapParameterfvNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVEvaluators_nglGetMapParameterfvNV, "glGetMapParameterfvNV", (void*)&glGetMapParameterfvNV}, - {"nglGetMapParameterivNV", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVEvaluators_nglGetMapParameterivNV, "glGetMapParameterivNV", (void*)&glGetMapParameterivNV}, - {"nglGetMapAttribParameterfvNV", "(IIILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVEvaluators_nglGetMapAttribParameterfvNV, "glGetMapAttribParameterfvNV", (void*)&glGetMapAttribParameterfvNV}, - {"nglGetMapAttribParameterivNV", "(IIILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVEvaluators_nglGetMapAttribParameterivNV, "glGetMapAttribParameterivNV", (void*)&glGetMapAttribParameterivNV}, - {"glEvalMapsNV", "(II)V", (void*)&Java_org_lwjgl_opengl_NVEvaluators_glEvalMapsNV, "glEvalMapsNV", (void*)&glEvalMapsNV} + {"glEvalMapsNV", "(II)V", (void *)&Java_org_lwjgl_opengl_NVEvaluators_glEvalMapsNV, "glEvalMapsNV", (void *)&glEvalMapsNV}, + {"nglGetMapAttribParameterivNV", "(IIILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVEvaluators_nglGetMapAttribParameterivNV, "glGetMapAttribParameterivNV", (void *)&glGetMapAttribParameterivNV}, + {"nglGetMapAttribParameterfvNV", "(IIILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVEvaluators_nglGetMapAttribParameterfvNV, "glGetMapAttribParameterfvNV", (void *)&glGetMapAttribParameterfvNV}, + {"nglGetMapParameterivNV", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVEvaluators_nglGetMapParameterivNV, "glGetMapParameterivNV", (void *)&glGetMapParameterivNV}, + {"nglGetMapParameterfvNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVEvaluators_nglGetMapParameterfvNV, "glGetMapParameterfvNV", (void *)&glGetMapParameterfvNV}, + {"nglMapParameterivNV", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVEvaluators_nglMapParameterivNV, "glMapParameterivNV", (void *)&glMapParameterivNV}, + {"nglMapParameterfvNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVEvaluators_nglMapParameterfvNV, "glMapParameterfvNV", (void *)&glMapParameterfvNV}, + {"nglMapControlPointsNV", "(IIIIIIIZLjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_NVEvaluators_nglMapControlPointsNV, "glMapControlPointsNV", (void *)&glMapControlPointsNV}, + {"nglGetMapControlPointsNV", "(IIIIIZLjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_NVEvaluators_nglGetMapControlPointsNV, "glGetMapControlPointsNV", (void *)&glGetMapControlPointsNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif diff --git a/src/native/common/nv/org_lwjgl_opengl_NVFence.c b/src/native/common/nv/org_lwjgl_opengl_NVFence.c index dfbe50c8..461ee568 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVFence.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVFence.c @@ -1,150 +1,67 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVFence -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glGenFencesNVPROC) (GLsizei n, GLuint *fences); -typedef void (APIENTRY * glDeleteFencesNVPROC) (GLsizei n, const GLuint *fences); -typedef void (APIENTRY * glSetFenceNVPROC) (GLuint fence, GLenum condition); -typedef GLboolean (APIENTRY * glTestFenceNVPROC) (GLuint fence); -typedef void (APIENTRY * glFinishFenceNVPROC) (GLuint fence); -typedef GLboolean (APIENTRY * glIsFenceNVPROC) (GLuint fence); -typedef void (APIENTRY * glGetFenceivNVPROC) (GLuint fence, GLenum pname, GLint *params); +typedef void (APIENTRY *glGetFenceivNVPROC) (GLuint fence, GLenum pname, GLint * piParams); +typedef GLboolean (APIENTRY *glIsFenceNVPROC) (GLuint fence); +typedef void (APIENTRY *glFinishFenceNVPROC) (GLuint fence); +typedef GLboolean (APIENTRY *glTestFenceNVPROC) (GLuint fence); +typedef void (APIENTRY *glSetFenceNVPROC) (GLuint fence, GLenum condition); +typedef void (APIENTRY *glDeleteFencesNVPROC) (GLsizei n, const GLuint * piFences); +typedef void (APIENTRY *glGenFencesNVPROC) (GLsizei n, GLuint * piFences); -static glGenFencesNVPROC glGenFencesNV; -static glDeleteFencesNVPROC glDeleteFencesNV; -static glSetFenceNVPROC glSetFenceNV; -static glTestFenceNVPROC glTestFenceNV; -static glFinishFenceNVPROC glFinishFenceNV; -static glIsFenceNVPROC glIsFenceNV; static glGetFenceivNVPROC glGetFenceivNV; +static glIsFenceNVPROC glIsFenceNV; +static glFinishFenceNVPROC glFinishFenceNV; +static glTestFenceNVPROC glTestFenceNV; +static glSetFenceNVPROC glSetFenceNV; +static glDeleteFencesNVPROC glDeleteFencesNV; +static glGenFencesNVPROC glGenFencesNV; -/* - * Class: org.lwjgl.opengl.NVFence - * Method: nglGenFencesNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVFence_nglGenFencesNV - (JNIEnv * env, jclass clazz, jint n, jobject piFences, jint piFences_offset) -{ - GLuint *piFences_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, piFences) + piFences_offset; - glGenFencesNV(n, piFences_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVFence_nglGetFenceivNV(JNIEnv *env, jclass clazz, jint fence, jint pname, jobject piParams, jint piParams_position) { + GLint *piParams_address = ((GLint *)(*env)->GetDirectBufferAddress(env, piParams)) + piParams_position; + glGetFenceivNV(fence, pname, piParams_address); } -/* - * Class: org.lwjgl.opengl.NVFence - * Method: nglDeleteFencesNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVFence_nglDeleteFencesNV - (JNIEnv * env, jclass clazz, jint n, jobject piFences, jint piFences_offset) -{ - GLuint *piFences_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, piFences) + piFences_offset; - glDeleteFencesNV(n, piFences_ptr); +static jboolean JNICALL Java_org_lwjgl_opengl_NVFence_glIsFenceNV(JNIEnv *env, jclass clazz, jint fence) { + GLboolean __result = glIsFenceNV(fence); + return __result; } -/* - * Class: org.lwjgl.opengl.NVFence - * Method: glSetFenceNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVFence_glSetFenceNV - (JNIEnv * env, jclass clazz, jint fence, jint condition) -{ - glSetFenceNV(fence, condition); -} - -/* - * Class: org.lwjgl.opengl.NVFence - * Method: glTestFenceNV - */ -static jboolean JNICALL Java_org_lwjgl_opengl_NVFence_glTestFenceNV - (JNIEnv * env, jclass clazz, jint fence) -{ - GLboolean result = glTestFenceNV(fence); - - return result; -} - -/* - * Class: org.lwjgl.opengl.NVFence - * Method: glFinishFenceNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVFence_glFinishFenceNV - (JNIEnv * env, jclass clazz, jint fence) -{ +static void JNICALL Java_org_lwjgl_opengl_NVFence_glFinishFenceNV(JNIEnv *env, jclass clazz, jint fence) { glFinishFenceNV(fence); } -/* - * Class: org.lwjgl.opengl.NVFence - * Method: glIsFenceNV - */ -static jboolean JNICALL Java_org_lwjgl_opengl_NVFence_glIsFenceNV - (JNIEnv * env, jclass clazz, jint fence) -{ - GLboolean result = glIsFenceNV(fence); - - return result; +static jboolean JNICALL Java_org_lwjgl_opengl_NVFence_glTestFenceNV(JNIEnv *env, jclass clazz, jint fence) { + GLboolean __result = glTestFenceNV(fence); + return __result; } -/* - * Class: org.lwjgl.opengl.NVFence - * Method: nglGetFenceivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVFence_nglGetFenceivNV - (JNIEnv * env, jclass clazz, jint fence, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glGetFenceivNV(fence, pname, piParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVFence_glSetFenceNV(JNIEnv *env, jclass clazz, jint fence, jint condition) { + glSetFenceNV(fence, condition); +} + +static void JNICALL Java_org_lwjgl_opengl_NVFence_nglDeleteFencesNV(JNIEnv *env, jclass clazz, jint n, jobject piFences, jint piFences_position) { + const GLuint *piFences_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, piFences)) + piFences_position; + glDeleteFencesNV(n, piFences_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVFence_nglGenFencesNV(JNIEnv *env, jclass clazz, jint n, jobject piFences, jint piFences_position) { + GLuint *piFences_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, piFences)) + piFences_position; + glGenFencesNV(n, piFences_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVFence_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglGenFencesNV", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVFence_nglGenFencesNV, "glGenFencesNV", (void*)&glGenFencesNV}, - {"nglDeleteFencesNV", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVFence_nglDeleteFencesNV, "glDeleteFencesNV", (void*)&glDeleteFencesNV}, - {"glSetFenceNV", "(II)V", (void*)&Java_org_lwjgl_opengl_NVFence_glSetFenceNV, "glSetFenceNV", (void*)&glSetFenceNV}, - {"glTestFenceNV", "(I)Z", (void*)&Java_org_lwjgl_opengl_NVFence_glTestFenceNV, "glTestFenceNV", (void*)&glTestFenceNV}, - {"glFinishFenceNV", "(I)V", (void*)&Java_org_lwjgl_opengl_NVFence_glFinishFenceNV, "glFinishFenceNV", (void*)&glFinishFenceNV}, - {"glIsFenceNV", "(I)Z", (void*)&Java_org_lwjgl_opengl_NVFence_glIsFenceNV, "glIsFenceNV", (void*)&glIsFenceNV}, - {"nglGetFenceivNV", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVFence_nglGetFenceivNV, "glGetFenceivNV", (void*)&glGetFenceivNV} + {"nglGetFenceivNV", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVFence_nglGetFenceivNV, "glGetFenceivNV", (void *)&glGetFenceivNV}, + {"glIsFenceNV", "(I)Z", (void *)&Java_org_lwjgl_opengl_NVFence_glIsFenceNV, "glIsFenceNV", (void *)&glIsFenceNV}, + {"glFinishFenceNV", "(I)V", (void *)&Java_org_lwjgl_opengl_NVFence_glFinishFenceNV, "glFinishFenceNV", (void *)&glFinishFenceNV}, + {"glTestFenceNV", "(I)Z", (void *)&Java_org_lwjgl_opengl_NVFence_glTestFenceNV, "glTestFenceNV", (void *)&glTestFenceNV}, + {"glSetFenceNV", "(II)V", (void *)&Java_org_lwjgl_opengl_NVFence_glSetFenceNV, "glSetFenceNV", (void *)&glSetFenceNV}, + {"nglDeleteFencesNV", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVFence_nglDeleteFencesNV, "glDeleteFencesNV", (void *)&glDeleteFencesNV}, + {"nglGenFencesNV", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVFence_nglGenFencesNV, "glGenFencesNV", (void *)&glGenFencesNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif diff --git a/src/native/common/nv/org_lwjgl_opengl_NVFragmentProgram.c b/src/native/common/nv/org_lwjgl_opengl_NVFragmentProgram.c index 3ff36cb4..f52d6d88 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVFragmentProgram.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVFragmentProgram.c @@ -1,81 +1,30 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVFragmentProgram -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glProgramNamedParameter4fNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glGetProgramNamedParameterfvNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat *params); +typedef void (APIENTRY *glGetProgramNamedParameterfvNVPROC) (GLuint id, GLsizei length, const GLubyte * name, GLfloat * params); +typedef void (APIENTRY *glProgramNamedParameter4fNVPROC) (GLuint id, GLsizei length, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -static glProgramNamedParameter4fNVPROC glProgramNamedParameter4fNV; static glGetProgramNamedParameterfvNVPROC glGetProgramNamedParameterfvNV; +static glProgramNamedParameter4fNVPROC glProgramNamedParameter4fNV; -/* - * Class: org.lwjgl.opengl.NVFragmentProgram - * Method: nglProgramNamedParameter4fNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVFragmentProgram_nglProgramNamedParameter4fNV - (JNIEnv * env, jclass clazz, jint id, jint length, jobject name, jint nameOffset, jfloat x, jfloat y, jfloat z, jfloat w) -{ - GLubyte *name_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - glProgramNamedParameter4fNV(id, length, name_ptr, x, y, z, w); +static void JNICALL Java_org_lwjgl_opengl_NVFragmentProgram_nglGetProgramNamedParameterfvNV(JNIEnv *env, jclass clazz, jint id, jint length, jobject name, jint name_position, jobject params, jint params_position) { + const GLubyte *name_address = ((const GLubyte *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetProgramNamedParameterfvNV(id, length, name_address, params_address); } -/* - * Class: org.lwjgl.opengl.NVFragmentProgram - * Method: nglGetProgramNamedParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVFragmentProgram_nglGetProgramNamedParameterfvNV - (JNIEnv * env, jclass clazz, jint id, jint length, jobject name, jint nameOffset, jobject params, jint paramsOffset) -{ - GLubyte *name_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetProgramNamedParameterfvNV(id, length, name_ptr, params_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVFragmentProgram_nglProgramNamedParameter4fNV(JNIEnv *env, jclass clazz, jint id, jint length, jobject name, jint name_position, jfloat x, jfloat y, jfloat z, jfloat w) { + const GLubyte *name_address = ((const GLubyte *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + glProgramNamedParameter4fNV(id, length, name_address, x, y, z, w); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVFragmentProgram_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglProgramNamedParameter4fNV", "(IILjava/nio/ByteBuffer;IFFFF)V", (void*)&Java_org_lwjgl_opengl_NVFragmentProgram_nglProgramNamedParameter4fNV, "glProgramNamedParameter4fNV", (void*)&glProgramNamedParameter4fNV}, - {"nglGetProgramNamedParameterfvNV", "(IILjava/nio/ByteBuffer;ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVFragmentProgram_nglGetProgramNamedParameterfvNV, "glGetProgramNamedParameterfvNV", (void*)&glGetProgramNamedParameterfvNV}, + {"nglGetProgramNamedParameterfvNV", "(IILjava/nio/ByteBuffer;ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVFragmentProgram_nglGetProgramNamedParameterfvNV, "glGetProgramNamedParameterfvNV", (void *)&glGetProgramNamedParameterfvNV}, + {"nglProgramNamedParameter4fNV", "(IILjava/nio/ByteBuffer;IFFFF)V", (void *)&Java_org_lwjgl_opengl_NVFragmentProgram_nglProgramNamedParameter4fNV, "glProgramNamedParameter4fNV", (void *)&glProgramNamedParameter4fNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif diff --git a/src/native/common/nv/org_lwjgl_opengl_NVHalfFloat.c b/src/native/common/nv/org_lwjgl_opengl_NVHalfFloat.c index 39d6d3c7..31e38447 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVHalfFloat.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVHalfFloat.c @@ -1,371 +1,185 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVHalfFloat -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef unsigned short GLhalf; +typedef void (APIENTRY *glVertexAttribs4hvNVPROC) (GLuint index, GLsizei n, const GLhalf * attribs); +typedef void (APIENTRY *glVertexAttribs3hvNVPROC) (GLuint index, GLsizei n, const GLhalf * attribs); +typedef void (APIENTRY *glVertexAttribs2hvNVPROC) (GLuint index, GLsizei n, const GLhalf * attribs); +typedef void (APIENTRY *glVertexAttribs1hvNVPROC) (GLuint index, GLsizei n, const GLhalf * attribs); +typedef void (APIENTRY *glVertexAttrib4hNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z, GLhalf w); +typedef void (APIENTRY *glVertexAttrib3hNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z); +typedef void (APIENTRY *glVertexAttrib2hNVPROC) (GLuint index, GLhalf x, GLhalf y); +typedef void (APIENTRY *glVertexAttrib1hNVPROC) (GLuint index, GLhalf x); +typedef void (APIENTRY *glSecondaryColor3hNVPROC) (GLhalf red, GLhalf green, GLhalf blue); +typedef void (APIENTRY *glFogCoordhNVPROC) (GLhalf fog); +typedef void (APIENTRY *glMultiTexCoord4hNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r, GLhalf q); +typedef void (APIENTRY *glMultiTexCoord3hNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r); +typedef void (APIENTRY *glMultiTexCoord2hNVPROC) (GLenum target, GLhalf s, GLhalf t); +typedef void (APIENTRY *glMultiTexCoord1hNVPROC) (GLenum target, GLhalf s); +typedef void (APIENTRY *glTexCoord4hNVPROC) (GLhalf s, GLhalf t, GLhalf r, GLhalf q); +typedef void (APIENTRY *glTexCoord3hNVPROC) (GLhalf s, GLhalf t, GLhalf r); +typedef void (APIENTRY *glTexCoord2hNVPROC) (GLhalf s, GLhalf t); +typedef void (APIENTRY *glTexCoord1hNVPROC) (GLhalf s); +typedef void (APIENTRY *glColor4hNVPROC) (GLhalf red, GLhalf green, GLhalf blue, GLhalf alpha); +typedef void (APIENTRY *glColor3hNVPROC) (GLhalf red, GLhalf green, GLhalf blue); +typedef void (APIENTRY *glNormal3hNVPROC) (GLhalf nx, GLhalf ny, GLhalf nz); +typedef void (APIENTRY *glVertex4hNVPROC) (GLhalf x, GLhalf y, GLhalf z, GLhalf w); +typedef void (APIENTRY *glVertex3hNVPROC) (GLhalf x, GLhalf y, GLhalf z); +typedef void (APIENTRY *glVertex2hNVPROC) (GLhalf x, GLhalf y); -typedef void (APIENTRY * glVertex2hNVPROC) (GLhalf x, GLhalf y); -typedef void (APIENTRY * glVertex3hNVPROC) (GLhalf x, GLhalf y, GLhalf z); -typedef void (APIENTRY * glVertex4hNVPROC) (GLhalf x, GLhalf y, GLhalf z, GLhalf w); -typedef void (APIENTRY * glNormal3hNVPROC) (GLhalf nx, GLhalf ny, GLhalf nz); -typedef void (APIENTRY * glColor3hNVPROC) (GLhalf red, GLhalf green, GLhalf blue); -typedef void (APIENTRY * glColor4hNVPROC) (GLhalf red, GLhalf green, GLhalf blue, GLhalf alpha); -typedef void (APIENTRY * glTexCoord1hNVPROC) (GLhalf s); -typedef void (APIENTRY * glTexCoord2hNVPROC) (GLhalf s, GLhalf t); -typedef void (APIENTRY * glTexCoord3hNVPROC) (GLhalf s, GLhalf t, GLhalf r); -typedef void (APIENTRY * glTexCoord4hNVPROC) (GLhalf s, GLhalf t, GLhalf r, GLhalf q); -typedef void (APIENTRY * glMultiTexCoord1hNVPROC) (GLenum target, GLhalf s); -typedef void (APIENTRY * glMultiTexCoord2hNVPROC) (GLenum target, GLhalf s, GLhalf t); -typedef void (APIENTRY * glMultiTexCoord3hNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r); -typedef void (APIENTRY * glMultiTexCoord4hNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r, GLhalf q); -typedef void (APIENTRY * glFogCoordhNVPROC) (GLhalf fog); -typedef void (APIENTRY * glSecondaryColor3hNVPROC) (GLhalf red, GLhalf green, GLhalf blue); -typedef void (APIENTRY * glVertexAttrib1hNVPROC) (GLuint index, GLhalf x); -typedef void (APIENTRY * glVertexAttrib2hNVPROC) (GLuint index, GLhalf x, GLhalf y); -typedef void (APIENTRY * glVertexAttrib3hNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z); -typedef void (APIENTRY * glVertexAttrib4hNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z, GLhalf w); -typedef void (APIENTRY * glVertexAttribs1hvNVPROC) (GLuint index, GLsizei n, const GLhalf *v); -typedef void (APIENTRY * glVertexAttribs2hvNVPROC) (GLuint index, GLsizei n, const GLhalf *v); -typedef void (APIENTRY * glVertexAttribs3hvNVPROC) (GLuint index, GLsizei n, const GLhalf *v); -typedef void (APIENTRY * glVertexAttribs4hvNVPROC) (GLuint index, GLsizei n, const GLhalf *v); - -static glVertex2hNVPROC glVertex2hNV; -static glVertex3hNVPROC glVertex3hNV; -static glVertex4hNVPROC glVertex4hNV; -static glNormal3hNVPROC glNormal3hNV; -static glColor3hNVPROC glColor3hNV; -static glColor4hNVPROC glColor4hNV; -static glTexCoord1hNVPROC glTexCoord1hNV; -static glTexCoord2hNVPROC glTexCoord2hNV; -static glTexCoord3hNVPROC glTexCoord3hNV; -static glTexCoord4hNVPROC glTexCoord4hNV; -static glMultiTexCoord1hNVPROC glMultiTexCoord1hNV; -static glMultiTexCoord2hNVPROC glMultiTexCoord2hNV; -static glMultiTexCoord3hNVPROC glMultiTexCoord3hNV; -static glMultiTexCoord4hNVPROC glMultiTexCoord4hNV; -static glFogCoordhNVPROC glFogCoordhNV; -static glSecondaryColor3hNVPROC glSecondaryColor3hNV; -static glVertexAttrib1hNVPROC glVertexAttrib1hNV; -static glVertexAttrib2hNVPROC glVertexAttrib2hNV; -static glVertexAttrib3hNVPROC glVertexAttrib3hNV; -static glVertexAttrib4hNVPROC glVertexAttrib4hNV; -static glVertexAttribs1hvNVPROC glVertexAttribs1hvNV; -static glVertexAttribs2hvNVPROC glVertexAttribs2hvNV; -static glVertexAttribs3hvNVPROC glVertexAttribs3hvNV; static glVertexAttribs4hvNVPROC glVertexAttribs4hvNV; +static glVertexAttribs3hvNVPROC glVertexAttribs3hvNV; +static glVertexAttribs2hvNVPROC glVertexAttribs2hvNV; +static glVertexAttribs1hvNVPROC glVertexAttribs1hvNV; +static glVertexAttrib4hNVPROC glVertexAttrib4hNV; +static glVertexAttrib3hNVPROC glVertexAttrib3hNV; +static glVertexAttrib2hNVPROC glVertexAttrib2hNV; +static glVertexAttrib1hNVPROC glVertexAttrib1hNV; +static glSecondaryColor3hNVPROC glSecondaryColor3hNV; +static glFogCoordhNVPROC glFogCoordhNV; +static glMultiTexCoord4hNVPROC glMultiTexCoord4hNV; +static glMultiTexCoord3hNVPROC glMultiTexCoord3hNV; +static glMultiTexCoord2hNVPROC glMultiTexCoord2hNV; +static glMultiTexCoord1hNVPROC glMultiTexCoord1hNV; +static glTexCoord4hNVPROC glTexCoord4hNV; +static glTexCoord3hNVPROC glTexCoord3hNV; +static glTexCoord2hNVPROC glTexCoord2hNV; +static glTexCoord1hNVPROC glTexCoord1hNV; +static glColor4hNVPROC glColor4hNV; +static glColor3hNVPROC glColor3hNV; +static glNormal3hNVPROC glNormal3hNV; +static glVertex4hNVPROC glVertex4hNV; +static glVertex3hNVPROC glVertex3hNV; +static glVertex2hNVPROC glVertex2hNV; -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glVertex2hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertex2hNV - (JNIEnv * env, jclass clazz, jshort x, jshort y) -{ - glVertex2hNV(x, y); +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs4hvNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject attribs, jint attribs_position) { + const GLhalf *attribs_address = ((const GLhalf *)(*env)->GetDirectBufferAddress(env, attribs)) + attribs_position; + glVertexAttribs4hvNV(index, n, attribs_address); } -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glVertex3hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertex3hNV - (JNIEnv * env, jclass clazz, jshort x, jshort y, jshort z) -{ - glVertex3hNV(x, y, z); +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs3hvNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject attribs, jint attribs_position) { + const GLhalf *attribs_address = ((const GLhalf *)(*env)->GetDirectBufferAddress(env, attribs)) + attribs_position; + glVertexAttribs3hvNV(index, n, attribs_address); } -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glVertex4hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertex4hNV - (JNIEnv * env, jclass clazz, jshort x, jshort y, jshort z, jshort w) -{ - glVertex4hNV(x, y, z, w); +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs2hvNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject attribs, jint attribs_position) { + const GLhalf *attribs_address = ((const GLhalf *)(*env)->GetDirectBufferAddress(env, attribs)) + attribs_position; + glVertexAttribs2hvNV(index, n, attribs_address); } -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glNormal3hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glNormal3hNV - (JNIEnv * env, jclass clazz, jshort nx, jshort ny, jshort nz) -{ - glNormal3hNV(nx, ny, nz); +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs1hvNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject attribs, jint attribs_position) { + const GLhalf *attribs_address = ((const GLhalf *)(*env)->GetDirectBufferAddress(env, attribs)) + attribs_position; + glVertexAttribs1hvNV(index, n, attribs_address); } -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glColor3hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glColor3hNV - (JNIEnv * env, jclass clazz, jshort red, jshort green, jshort blue) -{ - glColor3hNV(red, green, blue); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glColor4hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glColor4hNV - (JNIEnv * env, jclass clazz, jshort red, jshort green, jshort blue, jshort alpha) -{ - glColor4hNV(red, green, blue, alpha); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glTexCoord1hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord1hNV - (JNIEnv * env, jclass clazz, jshort s) -{ - glTexCoord1hNV(s); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glTexCoord2hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord2hNV - (JNIEnv * env, jclass clazz, jshort s, jshort t) -{ - glTexCoord2hNV(s, t); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glTexCoord3hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord3hNV - (JNIEnv * env, jclass clazz, jshort s, jshort t, jshort r) -{ - glTexCoord3hNV(s, t, r); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glTexCoord4hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord4hNV - (JNIEnv * env, jclass clazz, jshort s, jshort t, jshort r, jshort q) -{ - glTexCoord4hNV(s, t, r, q); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glMultiTexCoord1hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord1hNV - (JNIEnv * env, jclass clazz, jint target, jshort s) -{ - glMultiTexCoord1hNV(target, s); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glMultiTexCoord2hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord2hNV - (JNIEnv * env, jclass clazz, jint target, jshort s, jshort t) -{ - glMultiTexCoord2hNV(target, s, t); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glMultiTexCoord3hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord3hNV - (JNIEnv * env, jclass clazz, jint target, jshort s, jshort t, jshort r) -{ - glMultiTexCoord3hNV(target, s, t, r); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glMultiTexCoord4hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord4hNV - (JNIEnv * env, jclass clazz, jint target, jshort s, jshort t, jshort r, jshort q) -{ - glMultiTexCoord4hNV(target, s, t, r, q); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glFogCoordhNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glFogCoordhNV - (JNIEnv * env, jclass clazz, jshort fog) -{ - glFogCoordhNV(fog); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glSecondaryColor3hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glSecondaryColor3hNV - (JNIEnv * env, jclass clazz, jshort red, jshort green, jshort blue) -{ - glSecondaryColor3hNV(red, green, blue); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glVertexAttrib1hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib1hNV - (JNIEnv * env, jclass clazz, jint index, jshort x) -{ - glVertexAttrib1hNV(index, x); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glVertexAttrib2hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib2hNV - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y) -{ - glVertexAttrib2hNV(index, x, y); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glVertexAttrib3hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib3hNV - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y, jshort z) -{ - glVertexAttrib3hNV(index, x, y, z); -} - -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: glVertexAttrib4hNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib4hNV - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y, jshort z, jshort w) -{ +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib4hNV(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y, jshort z, jshort w) { glVertexAttrib4hNV(index, x, y, z, w); } -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: nglVertexAttribs1hvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs1hvNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject attribs, jint attribsOffset) -{ - GLushort *attribs_ptr = (GLushort *)(*env)->GetDirectBufferAddress(env, attribs) + attribsOffset; - glVertexAttribs1hvNV(index, n, attribs_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib3hNV(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y, jshort z) { + glVertexAttrib3hNV(index, x, y, z); } -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: nglVertexAttribs2hvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs2hvNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject attribs, jint attribsOffset) -{ - GLushort *attribs_ptr = (GLushort *)(*env)->GetDirectBufferAddress(env, attribs) + attribsOffset; - glVertexAttribs2hvNV(index, n, attribs_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib2hNV(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y) { + glVertexAttrib2hNV(index, x, y); } -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: nglVertexAttribs3hvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs3hvNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject attribs, jint attribsOffset) -{ - GLushort *attribs_ptr = (GLushort *)(*env)->GetDirectBufferAddress(env, attribs) + attribsOffset; - glVertexAttribs3hvNV(index, n, attribs_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib1hNV(JNIEnv *env, jclass clazz, jint index, jshort x) { + glVertexAttrib1hNV(index, x); } -/* - * Class: org.lwjgl.opengl.NVHalfFloat - * Method: nglVertexAttribs4hvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs4hvNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject attribs, jint attribsOffset) -{ - GLushort *attribs_ptr = (GLushort *)(*env)->GetDirectBufferAddress(env, attribs) + attribsOffset; - glVertexAttribs4hvNV(index, n, attribs_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glSecondaryColor3hNV(JNIEnv *env, jclass clazz, jshort red, jshort green, jshort blue) { + glSecondaryColor3hNV(red, green, blue); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glFogCoordhNV(JNIEnv *env, jclass clazz, jshort fog) { + glFogCoordhNV(fog); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord4hNV(JNIEnv *env, jclass clazz, jint target, jshort s, jshort t, jshort r, jshort q) { + glMultiTexCoord4hNV(target, s, t, r, q); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord3hNV(JNIEnv *env, jclass clazz, jint target, jshort s, jshort t, jshort r) { + glMultiTexCoord3hNV(target, s, t, r); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord2hNV(JNIEnv *env, jclass clazz, jint target, jshort s, jshort t) { + glMultiTexCoord2hNV(target, s, t); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord1hNV(JNIEnv *env, jclass clazz, jint target, jshort s) { + glMultiTexCoord1hNV(target, s); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord4hNV(JNIEnv *env, jclass clazz, jshort s, jshort t, jshort r, jshort q) { + glTexCoord4hNV(s, t, r, q); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord3hNV(JNIEnv *env, jclass clazz, jshort s, jshort t, jshort r) { + glTexCoord3hNV(s, t, r); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord2hNV(JNIEnv *env, jclass clazz, jshort s, jshort t) { + glTexCoord2hNV(s, t); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord1hNV(JNIEnv *env, jclass clazz, jshort s) { + glTexCoord1hNV(s); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glColor4hNV(JNIEnv *env, jclass clazz, jshort red, jshort green, jshort blue, jshort alpha) { + glColor4hNV(red, green, blue, alpha); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glColor3hNV(JNIEnv *env, jclass clazz, jshort red, jshort green, jshort blue) { + glColor3hNV(red, green, blue); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glNormal3hNV(JNIEnv *env, jclass clazz, jshort nx, jshort ny, jshort nz) { + glNormal3hNV(nx, ny, nz); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertex4hNV(JNIEnv *env, jclass clazz, jshort x, jshort y, jshort z, jshort w) { + glVertex4hNV(x, y, z, w); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertex3hNV(JNIEnv *env, jclass clazz, jshort x, jshort y, jshort z) { + glVertex3hNV(x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_glVertex2hNV(JNIEnv *env, jclass clazz, jshort x, jshort y) { + glVertex2hNV(x, y); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVHalfFloat_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glVertex2hNV", "(SS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glVertex2hNV, "glVertex2hNV", (void*)&glVertex2hNV}, - {"glVertex3hNV", "(SSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glVertex3hNV, "glVertex3hNV", (void*)&glVertex3hNV}, - {"glVertex4hNV", "(SSSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glVertex4hNV, "glVertex4hNV", (void*)&glVertex4hNV}, - {"glNormal3hNV", "(SSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glNormal3hNV, "glNormal3hNV", (void*)&glNormal3hNV}, - {"glColor3hNV", "(SSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glColor3hNV, "glColor3hNV", (void*)&glColor3hNV}, - {"glColor4hNV", "(SSSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glColor4hNV, "glColor4hNV", (void*)&glColor4hNV}, - {"glTexCoord1hNV", "(S)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord1hNV, "glTexCoord1hNV", (void*)&glTexCoord1hNV}, - {"glTexCoord2hNV", "(SS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord2hNV, "glTexCoord2hNV", (void*)&glTexCoord2hNV}, - {"glTexCoord3hNV", "(SSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord3hNV, "glTexCoord3hNV", (void*)&glTexCoord3hNV}, - {"glTexCoord4hNV", "(SSSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord4hNV, "glTexCoord4hNV", (void*)&glTexCoord4hNV}, - {"glMultiTexCoord1hNV", "(IS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord1hNV, "glMultiTexCoord1hNV", (void*)&glMultiTexCoord1hNV}, - {"glMultiTexCoord2hNV", "(ISS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord2hNV, "glMultiTexCoord2hNV", (void*)&glMultiTexCoord2hNV}, - {"glMultiTexCoord3hNV", "(ISSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord3hNV, "glMultiTexCoord3hNV", (void*)&glMultiTexCoord3hNV}, - {"glMultiTexCoord4hNV", "(ISSSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord4hNV, "glMultiTexCoord4hNV", (void*)&glMultiTexCoord4hNV}, - {"glFogCoordhNV", "(S)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glFogCoordhNV, "glFogCoordhNV", (void*)&glFogCoordhNV}, - {"glSecondaryColor3hNV", "(SSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glSecondaryColor3hNV, "glSecondaryColor3hNV", (void*)&glSecondaryColor3hNV}, - {"glVertexAttrib1hNV", "(IS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib1hNV, "glVertexAttrib1hNV", (void*)&glVertexAttrib1hNV}, - {"glVertexAttrib2hNV", "(ISS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib2hNV, "glVertexAttrib2hNV", (void*)&glVertexAttrib2hNV}, - {"glVertexAttrib3hNV", "(ISSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib3hNV, "glVertexAttrib3hNV", (void*)&glVertexAttrib3hNV}, - {"glVertexAttrib4hNV", "(ISSSS)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib4hNV, "glVertexAttrib4hNV", (void*)&glVertexAttrib4hNV}, - {"nglVertexAttribs1hvNV", "(IILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs1hvNV, "glVertexAttribs1hvNV", (void*)&glVertexAttribs1hvNV}, - {"nglVertexAttribs2hvNV", "(IILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs2hvNV, "glVertexAttribs2hvNV", (void*)&glVertexAttribs2hvNV}, - {"nglVertexAttribs3hvNV", "(IILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs3hvNV, "glVertexAttribs3hvNV", (void*)&glVertexAttribs3hvNV}, - {"nglVertexAttribs4hvNV", "(IILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs4hvNV, "glVertexAttribs4hvNV", (void*)&glVertexAttribs4hvNV} + {"nglVertexAttribs4hvNV", "(IILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs4hvNV, "glVertexAttribs4hvNV", (void *)&glVertexAttribs4hvNV}, + {"nglVertexAttribs3hvNV", "(IILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs3hvNV, "glVertexAttribs3hvNV", (void *)&glVertexAttribs3hvNV}, + {"nglVertexAttribs2hvNV", "(IILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs2hvNV, "glVertexAttribs2hvNV", (void *)&glVertexAttribs2hvNV}, + {"nglVertexAttribs1hvNV", "(IILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_nglVertexAttribs1hvNV, "glVertexAttribs1hvNV", (void *)&glVertexAttribs1hvNV}, + {"glVertexAttrib4hNV", "(ISSSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib4hNV, "glVertexAttrib4hNV", (void *)&glVertexAttrib4hNV}, + {"glVertexAttrib3hNV", "(ISSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib3hNV, "glVertexAttrib3hNV", (void *)&glVertexAttrib3hNV}, + {"glVertexAttrib2hNV", "(ISS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib2hNV, "glVertexAttrib2hNV", (void *)&glVertexAttrib2hNV}, + {"glVertexAttrib1hNV", "(IS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glVertexAttrib1hNV, "glVertexAttrib1hNV", (void *)&glVertexAttrib1hNV}, + {"glSecondaryColor3hNV", "(SSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glSecondaryColor3hNV, "glSecondaryColor3hNV", (void *)&glSecondaryColor3hNV}, + {"glFogCoordhNV", "(S)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glFogCoordhNV, "glFogCoordhNV", (void *)&glFogCoordhNV}, + {"glMultiTexCoord4hNV", "(ISSSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord4hNV, "glMultiTexCoord4hNV", (void *)&glMultiTexCoord4hNV}, + {"glMultiTexCoord3hNV", "(ISSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord3hNV, "glMultiTexCoord3hNV", (void *)&glMultiTexCoord3hNV}, + {"glMultiTexCoord2hNV", "(ISS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord2hNV, "glMultiTexCoord2hNV", (void *)&glMultiTexCoord2hNV}, + {"glMultiTexCoord1hNV", "(IS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glMultiTexCoord1hNV, "glMultiTexCoord1hNV", (void *)&glMultiTexCoord1hNV}, + {"glTexCoord4hNV", "(SSSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord4hNV, "glTexCoord4hNV", (void *)&glTexCoord4hNV}, + {"glTexCoord3hNV", "(SSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord3hNV, "glTexCoord3hNV", (void *)&glTexCoord3hNV}, + {"glTexCoord2hNV", "(SS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord2hNV, "glTexCoord2hNV", (void *)&glTexCoord2hNV}, + {"glTexCoord1hNV", "(S)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glTexCoord1hNV, "glTexCoord1hNV", (void *)&glTexCoord1hNV}, + {"glColor4hNV", "(SSSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glColor4hNV, "glColor4hNV", (void *)&glColor4hNV}, + {"glColor3hNV", "(SSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glColor3hNV, "glColor3hNV", (void *)&glColor3hNV}, + {"glNormal3hNV", "(SSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glNormal3hNV, "glNormal3hNV", (void *)&glNormal3hNV}, + {"glVertex4hNV", "(SSSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glVertex4hNV, "glVertex4hNV", (void *)&glVertex4hNV}, + {"glVertex3hNV", "(SSS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glVertex3hNV, "glVertex3hNV", (void *)&glVertex3hNV}, + {"glVertex2hNV", "(SS)V", (void *)&Java_org_lwjgl_opengl_NVHalfFloat_glVertex2hNV, "glVertex2hNV", (void *)&glVertex2hNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/nv/org_lwjgl_opengl_NVOcclusionQuery.c b/src/native/common/nv/org_lwjgl_opengl_NVOcclusionQuery.c index 852435ec..2a4b7c99 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVOcclusionQuery.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVOcclusionQuery.c @@ -1,156 +1,67 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVOcclusionQuery -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glGenOcclusionQueriesNVPROC) (GLsizei n, GLuint *ids); -typedef void (APIENTRY * glDeleteOcclusionQueriesNVPROC) (GLsizei n, const GLuint *ids); -typedef GLboolean (APIENTRY * glIsOcclusionQueryNVPROC) (GLuint id); -typedef void (APIENTRY * glBeginOcclusionQueryNVPROC) (GLuint id); -typedef void (APIENTRY * glEndOcclusionQueryNVPROC) (void); -typedef void (APIENTRY * glGetOcclusionQueryivNVPROC) (GLuint id, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetOcclusionQueryuivNVPROC) (GLuint id, GLenum pname, GLuint *params); +typedef void (APIENTRY *glGetOcclusionQueryivNVPROC) (GLuint id, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetOcclusionQueryuivNVPROC) (GLuint id, GLenum pname, GLuint * params); +typedef void (APIENTRY *glEndOcclusionQueryNVPROC) (); +typedef void (APIENTRY *glBeginOcclusionQueryNVPROC) (GLuint id); +typedef GLboolean (APIENTRY *glIsOcclusionQueryNVPROC) (GLuint id); +typedef void (APIENTRY *glDeleteOcclusionQueriesNVPROC) (GLsizei n, const GLuint * piIDs); +typedef void (APIENTRY *glGenOcclusionQueriesNVPROC) (GLsizei n, GLuint * piIDs); -static glGenOcclusionQueriesNVPROC glGenOcclusionQueriesNV; -static glDeleteOcclusionQueriesNVPROC glDeleteOcclusionQueriesNV; -static glIsOcclusionQueryNVPROC glIsOcclusionQueryNV; -static glBeginOcclusionQueryNVPROC glBeginOcclusionQueryNV; -static glEndOcclusionQueryNVPROC glEndOcclusionQueryNV; static glGetOcclusionQueryivNVPROC glGetOcclusionQueryivNV; static glGetOcclusionQueryuivNVPROC glGetOcclusionQueryuivNV; +static glEndOcclusionQueryNVPROC glEndOcclusionQueryNV; +static glBeginOcclusionQueryNVPROC glBeginOcclusionQueryNV; +static glIsOcclusionQueryNVPROC glIsOcclusionQueryNV; +static glDeleteOcclusionQueriesNVPROC glDeleteOcclusionQueriesNV; +static glGenOcclusionQueriesNVPROC glGenOcclusionQueriesNV; -/* - * Class: org.lwjgl.opengl.NVOcclusionQuery - * Method: nglGenOcclusionQueriesNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_nglGenOcclusionQueriesNV - (JNIEnv * env, jclass clazz, jint n, jobject piIDs, jint piIDs_offset) -{ - GLuint *piIDs_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, piIDs) + piIDs_offset; - glGenOcclusionQueriesNV(n, piIDs_ptr); - +static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_nglGetOcclusionQueryivNV(JNIEnv *env, jclass clazz, jint id, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetOcclusionQueryivNV(id, pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVOcclusionQuery - * Method: nglDeleteOcclusionQueriesNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_nglDeleteOcclusionQueriesNV - (JNIEnv * env, jclass clazz, jint n, jobject piIDs, jint piIDs_offset) -{ - GLuint *piIDs_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, piIDs) + piIDs_offset; - glDeleteOcclusionQueriesNV(n, piIDs_ptr); - +static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_nglGetOcclusionQueryuivNV(JNIEnv *env, jclass clazz, jint id, jint pname, jobject params, jint params_position) { + GLuint *params_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetOcclusionQueryuivNV(id, pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVOcclusionQuery - * Method: glIsOcclusionQueryNV - */ -static jboolean JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_glIsOcclusionQueryNV - (JNIEnv * env, jclass clazz, jint id) -{ - GLboolean result = glIsOcclusionQueryNV(id); - - return result; -} - -/* - * Class: org.lwjgl.opengl.NVOcclusionQuery - * Method: glBeginOcclusionQueryNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_glBeginOcclusionQueryNV - (JNIEnv * env, jclass clazz, jint id) -{ - glBeginOcclusionQueryNV(id); - -} - -/* - * Class: org.lwjgl.opengl.NVOcclusionQuery - * Method: glEndOcclusionQueryNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_glEndOcclusionQueryNV - (JNIEnv * env, jclass clazz) -{ +static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_glEndOcclusionQueryNV(JNIEnv *env, jclass clazz) { glEndOcclusionQueryNV(); - } -/* - * Class: org.lwjgl.opengl.NVOcclusionQuery - * Method: nglGetOcclusionQueryivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_nglGetOcclusionQueryivNV - (JNIEnv * env, jclass clazz, jint id, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glGetOcclusionQueryivNV(id, pname, piParams_ptr); - +static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_glBeginOcclusionQueryNV(JNIEnv *env, jclass clazz, jint id) { + glBeginOcclusionQueryNV(id); } -/* - * Class: org.lwjgl.opengl.NVOcclusionQuery - * Method: nglGetOcclusionQueryuivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_nglGetOcclusionQueryuivNV - (JNIEnv * env, jclass clazz, jint id, jint pname, jobject piParams, jint piParams_offset) -{ - GLuint *piParams_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glGetOcclusionQueryuivNV(id, pname, piParams_ptr); - +static jboolean JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_glIsOcclusionQueryNV(JNIEnv *env, jclass clazz, jint id) { + GLboolean __result = glIsOcclusionQueryNV(id); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_nglDeleteOcclusionQueriesNV(JNIEnv *env, jclass clazz, jint n, jobject piIDs, jint piIDs_position) { + const GLuint *piIDs_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, piIDs)) + piIDs_position; + glDeleteOcclusionQueriesNV(n, piIDs_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_nglGenOcclusionQueriesNV(JNIEnv *env, jclass clazz, jint n, jobject piIDs, jint piIDs_position) { + GLuint *piIDs_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, piIDs)) + piIDs_position; + glGenOcclusionQueriesNV(n, piIDs_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVOcclusionQuery_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglGenOcclusionQueriesNV", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVOcclusionQuery_nglGenOcclusionQueriesNV, "glGenOcclusionQueriesNV", (void*)&glGenOcclusionQueriesNV}, - {"nglDeleteOcclusionQueriesNV", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVOcclusionQuery_nglDeleteOcclusionQueriesNV, "glDeleteOcclusionQueriesNV", (void*)&glDeleteOcclusionQueriesNV}, - {"glIsOcclusionQueryNV", "(I)Z", (void*)&Java_org_lwjgl_opengl_NVOcclusionQuery_glIsOcclusionQueryNV, "glIsOcclusionQueryNV", (void*)&glIsOcclusionQueryNV}, - {"glBeginOcclusionQueryNV", "(I)V", (void*)&Java_org_lwjgl_opengl_NVOcclusionQuery_glBeginOcclusionQueryNV, "glBeginOcclusionQueryNV", (void*)&glBeginOcclusionQueryNV}, - {"glEndOcclusionQueryNV", "()V", (void*)&Java_org_lwjgl_opengl_NVOcclusionQuery_glEndOcclusionQueryNV, "glEndOcclusionQueryNV", (void*)&glEndOcclusionQueryNV}, - {"nglGetOcclusionQueryivNV", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVOcclusionQuery_nglGetOcclusionQueryivNV, "glGetOcclusionQueryivNV", (void*)&glGetOcclusionQueryivNV}, - {"nglGetOcclusionQueryuivNV", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVOcclusionQuery_nglGetOcclusionQueryuivNV, "glGetOcclusionQueryuivNV", (void*)&glGetOcclusionQueryuivNV} + {"nglGetOcclusionQueryivNV", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVOcclusionQuery_nglGetOcclusionQueryivNV, "glGetOcclusionQueryivNV", (void *)&glGetOcclusionQueryivNV}, + {"nglGetOcclusionQueryuivNV", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVOcclusionQuery_nglGetOcclusionQueryuivNV, "glGetOcclusionQueryuivNV", (void *)&glGetOcclusionQueryuivNV}, + {"glEndOcclusionQueryNV", "()V", (void *)&Java_org_lwjgl_opengl_NVOcclusionQuery_glEndOcclusionQueryNV, "glEndOcclusionQueryNV", (void *)&glEndOcclusionQueryNV}, + {"glBeginOcclusionQueryNV", "(I)V", (void *)&Java_org_lwjgl_opengl_NVOcclusionQuery_glBeginOcclusionQueryNV, "glBeginOcclusionQueryNV", (void *)&glBeginOcclusionQueryNV}, + {"glIsOcclusionQueryNV", "(I)Z", (void *)&Java_org_lwjgl_opengl_NVOcclusionQuery_glIsOcclusionQueryNV, "glIsOcclusionQueryNV", (void *)&glIsOcclusionQueryNV}, + {"nglDeleteOcclusionQueriesNV", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVOcclusionQuery_nglDeleteOcclusionQueriesNV, "glDeleteOcclusionQueriesNV", (void *)&glDeleteOcclusionQueriesNV}, + {"nglGenOcclusionQueriesNV", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVOcclusionQuery_nglGenOcclusionQueriesNV, "glGenOcclusionQueriesNV", (void *)&glGenOcclusionQueriesNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/nv/org_lwjgl_opengl_NVPixelDataRange.c b/src/native/common/nv/org_lwjgl_opengl_NVPixelDataRange.c index f2504116..f0819ecf 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVPixelDataRange.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVPixelDataRange.c @@ -1,80 +1,28 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVPixelDataRange -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glPixelDataRangeNVPROC) (GLenum target, GLsizei length, GLvoid *pointer); -typedef void (APIENTRY * glFlushPixelDataRangeNVPROC) (GLenum target); +typedef void (APIENTRY *glFlushPixelDataRangeNVPROC) (GLenum target); +typedef void (APIENTRY *glPixelDataRangeNVPROC) (GLenum target, GLsizei length, GLvoid * data); -static glPixelDataRangeNVPROC glPixelDataRangeNV; static glFlushPixelDataRangeNVPROC glFlushPixelDataRangeNV; +static glPixelDataRangeNVPROC glPixelDataRangeNV; -/* - * Class: org.lwjgl.opengl.NVPixelDataRange - * Method: nglPixelDataRangeNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVPixelDataRange_nglPixelDataRangeNV - (JNIEnv * env, jclass clazz, jint target, jint length, jobject data, jint dataOffset) -{ - GLvoid *data_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, data) + dataOffset); - glPixelDataRangeNV(target, length, data_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVPixelDataRange - * Method: glFlushPixelDataRangeNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVPixelDataRange_glFlushPixelDataRangeNV - (JNIEnv * env, jclass clazz, jint target) -{ +static void JNICALL Java_org_lwjgl_opengl_NVPixelDataRange_glFlushPixelDataRangeNV(JNIEnv *env, jclass clazz, jint target) { glFlushPixelDataRangeNV(target); } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_NVPixelDataRange_nglPixelDataRangeNV(JNIEnv *env, jclass clazz, jint target, jint length, jobject data, jint data_position) { + GLvoid *data_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glPixelDataRangeNV(target, length, data_address); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVPixelDataRange_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglPixelDataRangeNV", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_NVPixelDataRange_nglPixelDataRangeNV, "glPixelDataRangeNV", (void*)&glPixelDataRangeNV}, - {"glFlushPixelDataRangeNV", "(I)V", (void*)&Java_org_lwjgl_opengl_NVPixelDataRange_glFlushPixelDataRangeNV, "glFlushPixelDataRangeNV", (void*)&glFlushPixelDataRangeNV} + {"glFlushPixelDataRangeNV", "(I)V", (void *)&Java_org_lwjgl_opengl_NVPixelDataRange_glFlushPixelDataRangeNV, "glFlushPixelDataRangeNV", (void *)&glFlushPixelDataRangeNV}, + {"nglPixelDataRangeNV", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_NVPixelDataRange_nglPixelDataRangeNV, "glPixelDataRangeNV", (void *)&glPixelDataRangeNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/nv/org_lwjgl_opengl_NVPointSprite.c b/src/native/common/nv/org_lwjgl_opengl_NVPointSprite.c index 976243f5..2e220972 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVPointSprite.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVPointSprite.c @@ -1,82 +1,28 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVPointSprite -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glPointParameteriNVPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glPointParameterivNVPROC) (GLenum pname, const GLint *params); +typedef void (APIENTRY *glPointParameterivNVPROC) (GLenum pname, const GLint * params); +typedef void (APIENTRY *glPointParameteriNVPROC) (GLenum pname, GLint param); -static glPointParameteriNVPROC glPointParameteriNV; static glPointParameterivNVPROC glPointParameterivNV; +static glPointParameteriNVPROC glPointParameteriNV; -/* - * Class: org.lwjgl.opengl.NVPointSprite - * Method: glPointParameteriNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVPointSprite_glPointParameteriNV - (JNIEnv * env, jclass clazz, jint pname, jint param) -{ +static void JNICALL Java_org_lwjgl_opengl_NVPointSprite_nglPointParameterivNV(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glPointParameterivNV(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVPointSprite_glPointParameteriNV(JNIEnv *env, jclass clazz, jint pname, jint param) { glPointParameteriNV(pname, param); - } -/* - * Class: org.lwjgl.opengl.NVPointSprite - * Method: nglPointParameterivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVPointSprite_nglPointParameterivNV - (JNIEnv * env, jclass clazz, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glPointParameterivNV(pname, piParams_ptr); - -} - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVPointSprite_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glPointParameteriNV", "(II)V", (void*)&Java_org_lwjgl_opengl_NVPointSprite_glPointParameteriNV, "glPointParameteriNV", (void*)&glPointParameteriNV}, - {"nglPointParameterivNV", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVPointSprite_nglPointParameterivNV, "glPointParameterivNV", (void*)&glPointParameterivNV} + {"nglPointParameterivNV", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVPointSprite_nglPointParameterivNV, "glPointParameterivNV", (void *)&glPointParameterivNV}, + {"glPointParameteriNV", "(II)V", (void *)&Java_org_lwjgl_opengl_NVPointSprite_glPointParameteriNV, "glPointParameteriNV", (void *)&glPointParameteriNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/nv/org_lwjgl_opengl_NVPrimitiveRestart.c b/src/native/common/nv/org_lwjgl_opengl_NVPrimitiveRestart.c index edbd91f4..b6a5a2a9 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVPrimitiveRestart.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVPrimitiveRestart.c @@ -1,79 +1,27 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVPrimitiveRestart -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glPrimitiveRestartNVPROC) (GLvoid); -typedef void (APIENTRY * glPrimitiveRestartIndexNVPROC) (GLuint index); +typedef void (APIENTRY *glPrimitiveRestartIndexNVPROC) (GLuint index); +typedef void (APIENTRY *glPrimitiveRestartNVPROC) (); -static glPrimitiveRestartNVPROC glPrimitiveRestartNV; static glPrimitiveRestartIndexNVPROC glPrimitiveRestartIndexNV; +static glPrimitiveRestartNVPROC glPrimitiveRestartNV; -/* - * Class: org.lwjgl.opengl.NVPrimitiveRestart - * Method: glPrimitiveRestartNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVPrimitiveRestart_glPrimitiveRestartNV - (JNIEnv * env, jclass clazz) -{ - glPrimitiveRestartNV(); -} - -/* - * Class: org.lwjgl.opengl.NVPrimitiveRestart - * Method: glPrimitiveRestartIndexNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVPrimitiveRestart_glPrimitiveRestartIndexNV - (JNIEnv * env, jclass clazz, jint index) -{ +static void JNICALL Java_org_lwjgl_opengl_NVPrimitiveRestart_glPrimitiveRestartIndexNV(JNIEnv *env, jclass clazz, jint index) { glPrimitiveRestartIndexNV(index); } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_NVPrimitiveRestart_glPrimitiveRestartNV(JNIEnv *env, jclass clazz) { + glPrimitiveRestartNV(); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVPrimitiveRestart_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glPrimitiveRestartNV", "()V", (void*)&Java_org_lwjgl_opengl_NVPrimitiveRestart_glPrimitiveRestartNV, "glPrimitiveRestartNV", (void*)&glPrimitiveRestartNV}, - {"glPrimitiveRestartIndexNV", "(I)V", (void*)&Java_org_lwjgl_opengl_NVPrimitiveRestart_glPrimitiveRestartIndexNV, "glPrimitiveRestartIndexNV", (void*)&glPrimitiveRestartIndexNV} + {"glPrimitiveRestartIndexNV", "(I)V", (void *)&Java_org_lwjgl_opengl_NVPrimitiveRestart_glPrimitiveRestartIndexNV, "glPrimitiveRestartIndexNV", (void *)&glPrimitiveRestartIndexNV}, + {"glPrimitiveRestartNV", "()V", (void *)&Java_org_lwjgl_opengl_NVPrimitiveRestart_glPrimitiveRestartNV, "glPrimitiveRestartNV", (void *)&glPrimitiveRestartNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/nv/org_lwjgl_opengl_NVProgram.c b/src/native/common/nv/org_lwjgl_opengl_NVProgram.c index da9b0c92..69adda64 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVProgram.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVProgram.c @@ -1,182 +1,86 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVProgram -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glLoadProgramNVPROC) (GLenum target, GLuint id, GLsizei len, const GLubyte *program); -typedef void (APIENTRY * glBindProgramNVPROC) (GLenum target, GLuint id); -typedef void (APIENTRY * glDeleteProgramsNVPROC) (GLsizei n, const GLuint *ids); -typedef void (APIENTRY * glGenProgramsNVPROC) (GLsizei n, GLuint *ids); -typedef void (APIENTRY * glGetProgramStringNVPROC) (GLuint id, GLenum pname, GLubyte *program); -typedef GLboolean (APIENTRY * glIsProgramNVPROC) (GLuint id); -typedef GLboolean (APIENTRY * glAreProgramsResidentNVPROC) (GLsizei n, const GLuint *ids, GLboolean *residences); -typedef void (APIENTRY * glRequestResidentProgramsNVPROC) (GLsizei n, GLuint *ids); -typedef void (APIENTRY * glGetProgramivNVPROC) (GLuint id, GLenum pname, GLint *params); +typedef void (APIENTRY *glRequestResidentProgramsNVPROC) (GLsizei n, GLuint * programIDs); +typedef GLboolean (APIENTRY *glAreProgramsResidentNVPROC) (GLsizei n, const GLuint * programIDs, GLboolean * programResidences); +typedef GLboolean (APIENTRY *glIsProgramNVPROC) (GLuint programID); +typedef void (APIENTRY *glGetProgramStringNVPROC) (GLuint programID, GLenum parameterName, GLvoid * paramString); +typedef void (APIENTRY *glGetProgramivNVPROC) (GLuint programID, GLenum parameterName, GLint * params); +typedef void (APIENTRY *glGenProgramsNVPROC) (GLsizei n, GLuint * programs); +typedef void (APIENTRY *glDeleteProgramsNVPROC) (GLsizei n, const GLuint * programs); +typedef void (APIENTRY *glBindProgramNVPROC) (GLenum target, GLuint programID); +typedef void (APIENTRY *glLoadProgramNVPROC) (GLenum target, GLuint programID, GLsizei length, const GLvoid * string); -static glLoadProgramNVPROC glLoadProgramNV; -static glBindProgramNVPROC glBindProgramNV; -static glDeleteProgramsNVPROC glDeleteProgramsNV; -static glGenProgramsNVPROC glGenProgramsNV; -static glGetProgramStringNVPROC glGetProgramStringNV; -static glIsProgramNVPROC glIsProgramNV; -static glAreProgramsResidentNVPROC glAreProgramsResidentNV; static glRequestResidentProgramsNVPROC glRequestResidentProgramsNV; +static glAreProgramsResidentNVPROC glAreProgramsResidentNV; +static glIsProgramNVPROC glIsProgramNV; +static glGetProgramStringNVPROC glGetProgramStringNV; static glGetProgramivNVPROC glGetProgramivNV; +static glGenProgramsNVPROC glGenProgramsNV; +static glDeleteProgramsNVPROC glDeleteProgramsNV; +static glBindProgramNVPROC glBindProgramNV; +static glLoadProgramNVPROC glLoadProgramNV; -/* - * Class: org.lwjgl.opengl.NVProgram - * Method: nglLoadProgramNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglLoadProgramNV - (JNIEnv * env, jclass clazz, jint target, jint programID, jint length, jobject string, jint stringOffset) -{ - const GLubyte *string_ptr = (const GLubyte *)(*env)->GetDirectBufferAddress(env, string) + stringOffset; - glLoadProgramNV(target, programID, length, string_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglRequestResidentProgramsNV(JNIEnv *env, jclass clazz, jint n, jobject programIDs, jint programIDs_position) { + GLuint *programIDs_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, programIDs)) + programIDs_position; + glRequestResidentProgramsNV(n, programIDs_address); } -/* - * Class: org.lwjgl.opengl.NVProgram - * Method: glBindProgramNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVProgram_glBindProgramNV - (JNIEnv * env, jclass clazz, jint target, jint programID) -{ +static jboolean JNICALL Java_org_lwjgl_opengl_NVProgram_nglAreProgramsResidentNV(JNIEnv *env, jclass clazz, jint n, jobject programIDs, jint programIDs_position, jobject programResidences, jint programResidences_position) { + const GLuint *programIDs_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, programIDs)) + programIDs_position; + GLboolean *programResidences_address = ((GLboolean *)(*env)->GetDirectBufferAddress(env, programResidences)) + programResidences_position; + GLboolean __result = glAreProgramsResidentNV(n, programIDs_address, programResidences_address); + return __result; +} + +static jboolean JNICALL Java_org_lwjgl_opengl_NVProgram_glIsProgramNV(JNIEnv *env, jclass clazz, jint programID) { + GLboolean __result = glIsProgramNV(programID); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglGetProgramStringNV(JNIEnv *env, jclass clazz, jint programID, jint parameterName, jobject paramString, jint paramString_position) { + GLvoid *paramString_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, paramString)) + paramString_position)); + glGetProgramStringNV(programID, parameterName, paramString_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglGetProgramivNV(JNIEnv *env, jclass clazz, jint programID, jint parameterName, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetProgramivNV(programID, parameterName, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglGenProgramsNV(JNIEnv *env, jclass clazz, jint n, jobject programs, jint programs_position) { + GLuint *programs_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, programs)) + programs_position; + glGenProgramsNV(n, programs_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglDeleteProgramsNV(JNIEnv *env, jclass clazz, jint n, jobject programs, jint programs_position) { + const GLuint *programs_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, programs)) + programs_position; + glDeleteProgramsNV(n, programs_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVProgram_glBindProgramNV(JNIEnv *env, jclass clazz, jint target, jint programID) { glBindProgramNV(target, programID); } -/* - * Class: org.lwjgl.opengl.NVProgram - * Method: nglDeleteProgramsNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglDeleteProgramsNV - (JNIEnv * env, jclass clazz, jint n, jobject programs, jint programsOffset) -{ - GLuint *programs_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, programs) + programsOffset; - glDeleteProgramsNV(n, programs_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglLoadProgramNV(JNIEnv *env, jclass clazz, jint target, jint programID, jint length, jobject string, jint string_position) { + const GLvoid *string_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, string)) + string_position)); + glLoadProgramNV(target, programID, length, string_address); } -/* - * Class: org.lwjgl.opengl.NVProgram - * Method: nglGenProgramsNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglGenProgramsNV - (JNIEnv * env, jclass clazz, jint n, jobject programs, jint programsOffset) -{ - GLuint *programs_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, programs) + programsOffset; - glGenProgramsNV(n, programs_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVProgram - * Method: nglGetProgramivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglGetProgramivNV - (JNIEnv * env, jclass clazz, jint programID, jint parameterName, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetProgramivNV(programID, parameterName, params_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVProgram - * Method: nglGetProgramStringNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglGetProgramStringNV - (JNIEnv * env, jclass clazz, jint programID, jint parameterName, jobject paramString, jint paramStringOffset) -{ - GLubyte *paramString_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, paramString) + paramStringOffset; - glGetProgramStringNV(programID, parameterName, paramString_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVProgram - * Method: glIsProgramNV - */ -static jboolean JNICALL Java_org_lwjgl_opengl_NVProgram_glIsProgramNV - (JNIEnv * env, jclass clazz, jint programID) -{ - GLboolean result = glIsProgramNV(programID); - - return result; -} - -/* - * Class: org.lwjgl.opengl.NVProgram - * Method: nglAreProgramsResidentNV - */ -static jboolean JNICALL Java_org_lwjgl_opengl_NVProgram_nglAreProgramsResidentNV - (JNIEnv * env, jclass clazz, jint n, jobject programIDs, jint programIDsOffset, jobject programResidences, jint programResidencesOffset) -{ - GLuint *programIDs_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, programIDs) + programIDsOffset; - GLubyte *programResidences_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, programResidences) + programResidencesOffset; - GLboolean result = glAreProgramsResidentNV(n, programIDs_ptr, programResidences_ptr); - - return result; -} - -/* - * Class: org.lwjgl.opengl.NVProgram - * Method: nglRequestResidentProgramsNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVProgram_nglRequestResidentProgramsNV - (JNIEnv * env, jclass clazz, jint n, jobject programIDs, jint programIDsOffset) -{ - GLuint *programIDs_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, programIDs) + programIDsOffset; - glRequestResidentProgramsNV(n, programIDs_ptr); -} - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVProgram_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglLoadProgramNV", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_NVProgram_nglLoadProgramNV, "glLoadProgramNV", (void*)&glLoadProgramNV}, - {"glBindProgramNV", "(II)V", (void*)&Java_org_lwjgl_opengl_NVProgram_glBindProgramNV, "glBindProgramNV", (void*)&glBindProgramNV}, - {"nglDeleteProgramsNV", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVProgram_nglDeleteProgramsNV, "glDeleteProgramsNV", (void*)&glDeleteProgramsNV}, - {"nglGenProgramsNV", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVProgram_nglGenProgramsNV, "glGenProgramsNV", (void*)&glGenProgramsNV}, - {"nglGetProgramivNV", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVProgram_nglGetProgramivNV, "glGetProgramivNV", (void*)&glGetProgramivNV}, - {"nglGetProgramStringNV", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_NVProgram_nglGetProgramStringNV, "glGetProgramStringNV", (void*)&glGetProgramStringNV}, - {"glIsProgramNV", "(I)Z", (void*)&Java_org_lwjgl_opengl_NVProgram_glIsProgramNV, "glIsProgramNV", (void*)&glIsProgramNV}, - {"nglAreProgramsResidentNV", "(ILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)Z", (void*)&Java_org_lwjgl_opengl_NVProgram_nglAreProgramsResidentNV, "glAreProgramsResidentNV", (void*)&glAreProgramsResidentNV}, - {"nglRequestResidentProgramsNV", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVProgram_nglRequestResidentProgramsNV, "glRequestResidentProgramsNV", (void*)&glRequestResidentProgramsNV} + {"nglRequestResidentProgramsNV", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVProgram_nglRequestResidentProgramsNV, "glRequestResidentProgramsNV", (void *)&glRequestResidentProgramsNV}, + {"nglAreProgramsResidentNV", "(ILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)Z", (void *)&Java_org_lwjgl_opengl_NVProgram_nglAreProgramsResidentNV, "glAreProgramsResidentNV", (void *)&glAreProgramsResidentNV}, + {"glIsProgramNV", "(I)Z", (void *)&Java_org_lwjgl_opengl_NVProgram_glIsProgramNV, "glIsProgramNV", (void *)&glIsProgramNV}, + {"nglGetProgramStringNV", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_NVProgram_nglGetProgramStringNV, "glGetProgramStringNV", (void *)&glGetProgramStringNV}, + {"nglGetProgramivNV", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVProgram_nglGetProgramivNV, "glGetProgramivNV", (void *)&glGetProgramivNV}, + {"nglGenProgramsNV", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVProgram_nglGenProgramsNV, "glGenProgramsNV", (void *)&glGenProgramsNV}, + {"nglDeleteProgramsNV", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVProgram_nglDeleteProgramsNV, "glDeleteProgramsNV", (void *)&glDeleteProgramsNV}, + {"glBindProgramNV", "(II)V", (void *)&Java_org_lwjgl_opengl_NVProgram_glBindProgramNV, "glBindProgramNV", (void *)&glBindProgramNV}, + {"nglLoadProgramNV", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_NVProgram_nglLoadProgramNV, "glLoadProgramNV", (void *)&glLoadProgramNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/nv/org_lwjgl_opengl_NVRegisterCombiners.c b/src/native/common/nv/org_lwjgl_opengl_NVRegisterCombiners.c index abaf7d5a..ed99b203 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVRegisterCombiners.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVRegisterCombiners.c @@ -1,230 +1,112 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVRegisterCombiners -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glCombinerParameterfvNVPROC) (GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glCombinerParameterfNVPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glCombinerParameterivNVPROC) (GLenum pname, const GLint *params); -typedef void (APIENTRY * glCombinerParameteriNVPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glCombinerInputNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); -typedef void (APIENTRY * glCombinerOutputNVPROC) (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); -typedef void (APIENTRY * glFinalCombinerInputNVPROC) (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); -typedef void (APIENTRY * glGetCombinerInputParameterfvNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetCombinerInputParameterivNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetCombinerOutputParameterfvNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetCombinerOutputParameterivNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetFinalCombinerInputParameterfvNVPROC) (GLenum variable, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetFinalCombinerInputParameterivNVPROC) (GLenum variable, GLenum pname, GLint *params); +typedef void (APIENTRY *glGetFinalCombinerInputParameterivNVPROC) (GLenum variable, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetFinalCombinerInputParameterfvNVPROC) (GLenum variable, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetCombinerOutputParameterivNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetCombinerOutputParameterfvNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetCombinerInputParameterivNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetCombinerInputParameterfvNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glFinalCombinerInputNVPROC) (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); +typedef void (APIENTRY *glCombinerOutputNVPROC) (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); +typedef void (APIENTRY *glCombinerInputNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); +typedef void (APIENTRY *glCombinerParameterivNVPROC) (GLenum pname, const GLint * params); +typedef void (APIENTRY *glCombinerParameteriNVPROC) (GLenum pname, GLint param); +typedef void (APIENTRY *glCombinerParameterfvNVPROC) (GLenum pname, const GLfloat * params); +typedef void (APIENTRY *glCombinerParameterfNVPROC) (GLenum pname, GLfloat param); -static glCombinerParameterfvNVPROC glCombinerParameterfvNV; -static glCombinerParameterfNVPROC glCombinerParameterfNV; +static glGetFinalCombinerInputParameterivNVPROC glGetFinalCombinerInputParameterivNV; +static glGetFinalCombinerInputParameterfvNVPROC glGetFinalCombinerInputParameterfvNV; +static glGetCombinerOutputParameterivNVPROC glGetCombinerOutputParameterivNV; +static glGetCombinerOutputParameterfvNVPROC glGetCombinerOutputParameterfvNV; +static glGetCombinerInputParameterivNVPROC glGetCombinerInputParameterivNV; +static glGetCombinerInputParameterfvNVPROC glGetCombinerInputParameterfvNV; +static glFinalCombinerInputNVPROC glFinalCombinerInputNV; +static glCombinerOutputNVPROC glCombinerOutputNV; +static glCombinerInputNVPROC glCombinerInputNV; static glCombinerParameterivNVPROC glCombinerParameterivNV; static glCombinerParameteriNVPROC glCombinerParameteriNV; -static glCombinerInputNVPROC glCombinerInputNV; -static glCombinerOutputNVPROC glCombinerOutputNV; -static glFinalCombinerInputNVPROC glFinalCombinerInputNV; -static glGetCombinerInputParameterfvNVPROC glGetCombinerInputParameterfvNV; -static glGetCombinerInputParameterivNVPROC glGetCombinerInputParameterivNV; -static glGetCombinerOutputParameterfvNVPROC glGetCombinerOutputParameterfvNV; -static glGetCombinerOutputParameterivNVPROC glGetCombinerOutputParameterivNV; -static glGetFinalCombinerInputParameterfvNVPROC glGetFinalCombinerInputParameterfvNV; -static glGetFinalCombinerInputParameterivNVPROC glGetFinalCombinerInputParameterivNV; +static glCombinerParameterfvNVPROC glCombinerParameterfvNV; +static glCombinerParameterfNVPROC glCombinerParameterfNV; -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: glCombinerParameterfNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerParameterfNV - (JNIEnv * env, jclass clazz, jint pname, jfloat param) -{ - glCombinerParameterfNV(pname, param); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetFinalCombinerInputParameterivNV(JNIEnv *env, jclass clazz, jint variable, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetFinalCombinerInputParameterivNV(variable, pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: nglCombinerParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglCombinerParameterfvNV - (JNIEnv * env, jclass clazz, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glCombinerParameterfvNV(pname, pfParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetFinalCombinerInputParameterfvNV(JNIEnv *env, jclass clazz, jint variable, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetFinalCombinerInputParameterfvNV(variable, pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: glCombinerParameteriNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerParameteriNV - (JNIEnv * env, jclass clazz, jint pname, jint param) -{ - glCombinerParameteriNV(pname, param); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerOutputParameterivNV(JNIEnv *env, jclass clazz, jint stage, jint portion, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetCombinerOutputParameterivNV(stage, portion, pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: nglCombinerParameterivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglCombinerParameterivNV - (JNIEnv * env, jclass clazz, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glCombinerParameterivNV(pname, piParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerOutputParameterfvNV(JNIEnv *env, jclass clazz, jint stage, jint portion, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetCombinerOutputParameterfvNV(stage, portion, pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: glCombinerInputNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerInputNV - (JNIEnv * env, jclass clazz, jint stage, jint portion, jint variable, jint input, jint mapping, jint componentUsage) -{ - glCombinerInputNV(stage, portion, variable, input, mapping, componentUsage); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerInputParameterivNV(JNIEnv *env, jclass clazz, jint stage, jint portion, jint variable, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetCombinerInputParameterivNV(stage, portion, variable, pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: glCombinerOutputNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerOutputNV - (JNIEnv * env, jclass clazz, jint stage, jint portion, jint abOutput, jint cdOutput, jint sumOutput, jint scale, jint bias, jboolean abDotProduct, jboolean cdDotProduct, jboolean muxSum) -{ - glCombinerOutputNV(stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerInputParameterfvNV(JNIEnv *env, jclass clazz, jint stage, jint portion, jint variable, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetCombinerInputParameterfvNV(stage, portion, variable, pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: glFinalCombinerInputNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_glFinalCombinerInputNV - (JNIEnv * env, jclass clazz, jint variable, jint input, jint mapping, jint componentUsage) -{ +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_glFinalCombinerInputNV(JNIEnv *env, jclass clazz, jint variable, jint input, jint mapping, jint componentUsage) { glFinalCombinerInputNV(variable, input, mapping, componentUsage); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: nglGetCombinerInputParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerInputParameterfvNV - (JNIEnv * env, jclass clazz, jint stage, jint portion, jint variable, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glGetCombinerInputParameterfvNV(stage, portion, variable, pname, pfParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerOutputNV(JNIEnv *env, jclass clazz, jint stage, jint portion, jint abOutput, jint cdOutput, jint sumOutput, jint scale, jint bias, jboolean abDotProduct, jboolean cdDotProduct, jboolean muxSum) { + glCombinerOutputNV(stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: nglGetCombinerInputParameterivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerInputParameterivNV - (JNIEnv * env, jclass clazz, jint stage, jint portion, jint variable, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glGetCombinerInputParameterivNV(stage, portion, variable, pname, piParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerInputNV(JNIEnv *env, jclass clazz, jint stage, jint portion, jint variable, jint input, jint mapping, jint componentUsage) { + glCombinerInputNV(stage, portion, variable, input, mapping, componentUsage); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: nglGetCombinerOutputParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerOutputParameterfvNV - (JNIEnv * env, jclass clazz, jint stage, jint portion, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glGetCombinerOutputParameterfvNV(stage, portion, pname, pfParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglCombinerParameterivNV(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glCombinerParameterivNV(pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: nglGetCombinerOutputParameterivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerOutputParameterivNV - (JNIEnv * env, jclass clazz, jint stage, jint portion, jint pname, jobject piParams, jint pfParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + pfParams_offset; - glGetCombinerOutputParameterivNV(stage, portion, pname, piParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerParameteriNV(JNIEnv *env, jclass clazz, jint pname, jint param) { + glCombinerParameteriNV(pname, param); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: nglGetFinalCombinerInputParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetFinalCombinerInputParameterfvNV - (JNIEnv * env, jclass clazz, jint variable, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glGetFinalCombinerInputParameterfvNV(variable, pname, pfParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglCombinerParameterfvNV(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glCombinerParameterfvNV(pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners - * Method: nglGetFinalCombinerInputParameterivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetFinalCombinerInputParameterivNV - (JNIEnv * env, jclass clazz, jint variable, jint pname, jobject piParams, jint piParams_offset) -{ - GLint *piParams_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, piParams) + piParams_offset; - glGetFinalCombinerInputParameterivNV(variable, pname, piParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerParameterfNV(JNIEnv *env, jclass clazz, jint pname, jfloat param) { + glCombinerParameterfNV(pname, param); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glCombinerParameterfNV", "(IF)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerParameterfNV, "glCombinerParameterfNV", (void*)&glCombinerParameterfNV}, - {"nglCombinerParameterfvNV", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglCombinerParameterfvNV, "glCombinerParameterfvNV", (void*)&glCombinerParameterfvNV}, - {"glCombinerParameteriNV", "(II)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerParameteriNV, "glCombinerParameteriNV", (void*)&glCombinerParameteriNV}, - {"nglCombinerParameterivNV", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglCombinerParameterivNV, "glCombinerParameterivNV", (void*)&glCombinerParameterivNV}, - {"glCombinerInputNV", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerInputNV, "glCombinerInputNV", (void*)&glCombinerInputNV}, - {"glCombinerOutputNV", "(IIIIIIIZZZ)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerOutputNV, "glCombinerOutputNV", (void*)&glCombinerOutputNV}, - {"glFinalCombinerInputNV", "(IIII)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_glFinalCombinerInputNV, "glFinalCombinerInputNV", (void*)&glFinalCombinerInputNV}, - {"nglGetCombinerInputParameterfvNV", "(IIIILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerInputParameterfvNV, "glGetCombinerInputParameterfvNV", (void*)&glGetCombinerInputParameterfvNV}, - {"nglGetCombinerInputParameterivNV", "(IIIILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerInputParameterivNV, "glGetCombinerInputParameterivNV", (void*)&glGetCombinerInputParameterivNV}, - {"nglGetCombinerOutputParameterfvNV", "(IIILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerOutputParameterfvNV, "glGetCombinerOutputParameterfvNV", (void*)&glGetCombinerOutputParameterfvNV}, - {"nglGetCombinerOutputParameterivNV", "(IIILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerOutputParameterivNV, "glGetCombinerOutputParameterivNV", (void*)&glGetCombinerOutputParameterivNV}, - {"nglGetFinalCombinerInputParameterfvNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetFinalCombinerInputParameterfvNV, "glGetFinalCombinerInputParameterfvNV", (void*)&glGetFinalCombinerInputParameterfvNV}, - {"nglGetFinalCombinerInputParameterivNV", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetFinalCombinerInputParameterivNV, "glGetFinalCombinerInputParameterivNV", (void*)&glGetFinalCombinerInputParameterivNV} + {"nglGetFinalCombinerInputParameterivNV", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetFinalCombinerInputParameterivNV, "glGetFinalCombinerInputParameterivNV", (void *)&glGetFinalCombinerInputParameterivNV}, + {"nglGetFinalCombinerInputParameterfvNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetFinalCombinerInputParameterfvNV, "glGetFinalCombinerInputParameterfvNV", (void *)&glGetFinalCombinerInputParameterfvNV}, + {"nglGetCombinerOutputParameterivNV", "(IIILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerOutputParameterivNV, "glGetCombinerOutputParameterivNV", (void *)&glGetCombinerOutputParameterivNV}, + {"nglGetCombinerOutputParameterfvNV", "(IIILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerOutputParameterfvNV, "glGetCombinerOutputParameterfvNV", (void *)&glGetCombinerOutputParameterfvNV}, + {"nglGetCombinerInputParameterivNV", "(IIIILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerInputParameterivNV, "glGetCombinerInputParameterivNV", (void *)&glGetCombinerInputParameterivNV}, + {"nglGetCombinerInputParameterfvNV", "(IIIILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglGetCombinerInputParameterfvNV, "glGetCombinerInputParameterfvNV", (void *)&glGetCombinerInputParameterfvNV}, + {"glFinalCombinerInputNV", "(IIII)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_glFinalCombinerInputNV, "glFinalCombinerInputNV", (void *)&glFinalCombinerInputNV}, + {"glCombinerOutputNV", "(IIIIIIIZZZ)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerOutputNV, "glCombinerOutputNV", (void *)&glCombinerOutputNV}, + {"glCombinerInputNV", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerInputNV, "glCombinerInputNV", (void *)&glCombinerInputNV}, + {"nglCombinerParameterivNV", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglCombinerParameterivNV, "glCombinerParameterivNV", (void *)&glCombinerParameterivNV}, + {"glCombinerParameteriNV", "(II)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerParameteriNV, "glCombinerParameteriNV", (void *)&glCombinerParameteriNV}, + {"nglCombinerParameterfvNV", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_nglCombinerParameterfvNV, "glCombinerParameterfvNV", (void *)&glCombinerParameterfvNV}, + {"glCombinerParameterfNV", "(IF)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners_glCombinerParameterfNV, "glCombinerParameterfNV", (void *)&glCombinerParameterfNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/nv/org_lwjgl_opengl_NVRegisterCombiners2.c b/src/native/common/nv/org_lwjgl_opengl_NVRegisterCombiners2.c index 85d92b5f..5fd995fd 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVRegisterCombiners2.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVRegisterCombiners2.c @@ -1,81 +1,29 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVRegisterCombiners2 -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glCombinerStageParameterfvNVPROC) (GLenum stage, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glGetCombinerStageParameterfvNVPROC) (GLenum stage, GLenum pname, GLfloat *params); +typedef void (APIENTRY *glGetCombinerStageParameterfvNVPROC) (GLenum stage, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glCombinerStageParameterfvNVPROC) (GLenum stage, GLenum pname, const GLfloat * params); -static glCombinerStageParameterfvNVPROC glCombinerStageParameterfvNV; static glGetCombinerStageParameterfvNVPROC glGetCombinerStageParameterfvNV; +static glCombinerStageParameterfvNVPROC glCombinerStageParameterfvNV; -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners2 - * Method: nglCombinerStageParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners2_nglCombinerStageParameterfvNV - (JNIEnv * env, jclass clazz, jint stage, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glCombinerStageParameterfvNV(stage, pname, pfParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners2_nglGetCombinerStageParameterfvNV(JNIEnv *env, jclass clazz, jint stage, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetCombinerStageParameterfvNV(stage, pname, params_address); } -/* - * Class: org.lwjgl.opengl.NVRegisterCombiners2 - * Method: nglGetCombinerStageParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners2_nglGetCombinerStageParameterfvNV - (JNIEnv * env, jclass clazz, jint stage, jint pname, jobject pfParams, jint pfParams_offset) -{ - GLfloat *pfParams_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, pfParams) + pfParams_offset; - glGetCombinerStageParameterfvNV(stage, pname, pfParams_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners2_nglCombinerStageParameterfvNV(JNIEnv *env, jclass clazz, jint stage, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glCombinerStageParameterfvNV(stage, pname, params_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVRegisterCombiners2_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglCombinerStageParameterfvNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners2_nglCombinerStageParameterfvNV, "glCombinerStageParameterfvNV", (void*)&glCombinerStageParameterfvNV}, - {"nglGetCombinerStageParameterfvNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVRegisterCombiners2_nglGetCombinerStageParameterfvNV, "glGetCombinerStageParameterfvNV", (void*)&glGetCombinerStageParameterfvNV} + {"nglGetCombinerStageParameterfvNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners2_nglGetCombinerStageParameterfvNV, "glGetCombinerStageParameterfvNV", (void *)&glGetCombinerStageParameterfvNV}, + {"nglCombinerStageParameterfvNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVRegisterCombiners2_nglCombinerStageParameterfvNV, "glCombinerStageParameterfvNV", (void *)&glCombinerStageParameterfvNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/nv/org_lwjgl_opengl_NVVertexArrayRange.c b/src/native/common/nv/org_lwjgl_opengl_NVVertexArrayRange.c index 8646ae70..672721a0 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVVertexArrayRange.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVVertexArrayRange.c @@ -1,141 +1,54 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVVertexArrayRange -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef void (APIENTRY * glFlushVertexArrayRangeNVPROC) (void); -typedef void (APIENTRY * glVertexArrayRangeNVPROC) (GLsizei size, const GLvoid *pointer); +typedef void (APIENTRY *glFreeMemoryNVPROC) (GLvoid * pointer); +typedef GLvoid * (APIENTRY *glAllocateMemoryNVPROC) (GLint size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority); +typedef void (APIENTRY *glFlushVertexArrayRangeNVPROC) (); +typedef void (APIENTRY *glVertexArrayRangeNVPROC) (GLsizei size, const GLvoid * pPointer); +static glFreeMemoryNVPROC glFreeMemoryNV; +static glAllocateMemoryNVPROC glAllocateMemoryNV; static glFlushVertexArrayRangeNVPROC glFlushVertexArrayRangeNV; static glVertexArrayRangeNVPROC glVertexArrayRangeNV; -#ifdef _WIN32 - -typedef void * (APIENTRY * wglAllocateMemoryNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority); -typedef void (APIENTRY * wglFreeMemoryNVPROC) (void *pointer); - -static wglAllocateMemoryNVPROC wglAllocateMemoryNV; -static wglFreeMemoryNVPROC wglFreeMemoryNV; - -#endif /* WIN32 */ - -#ifdef _X11 - -typedef void * (APIENTRY * glXAllocateMemoryNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority); -typedef void (APIENTRY * glXFreeMemoryNVPROC) (void *pointer); - -static glXAllocateMemoryNVPROC glXAllocateMemoryNV; -static glXFreeMemoryNVPROC glXFreeMemoryNV; - -#endif /* X11 */ - -/* - * Class: org.lwjgl.opengl.NVVertexArrayRange - * Method: nglVertexArrayRangeNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_nglVertexArrayRangeNV - (JNIEnv * env, jclass clazz, jint size, jobject pPointer, jint pPointer_offset) -{ - GLvoid *pPointer_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, pPointer) + pPointer_offset); - glVertexArrayRangeNV(size, pPointer_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_nglFreeMemoryNV(JNIEnv *env, jclass clazz, jobject pointer, jint pointer_position) { + GLvoid *pointer_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pointer)) + pointer_position)); + glFreeMemoryNV(pointer_address); } -/* - * Class: org.lwjgl.opengl.NVVertexArrayRange - * Method: glFlushVertexArrayRangeNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_glFlushVertexArrayRangeNV - (JNIEnv * env, jclass clazz) -{ +static jobject JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_glAllocateMemoryNV(JNIEnv *env, jclass clazz, jint size, jfloat readFrequency, jfloat writeFrequency, jfloat priority, jint result_size) { + GLvoid * __result = glAllocateMemoryNV(size, readFrequency, writeFrequency, priority); + return safeNewBuffer(env, __result, result_size); +} + +static void JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_glFlushVertexArrayRangeNV(JNIEnv *env, jclass clazz) { glFlushVertexArrayRangeNV(); } -#ifdef _X11 -static jobject JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_glXAllocateMemoryNV - (JNIEnv * env, jclass clazz, jint size, jfloat readFrequency, jfloat writeFrequency, jfloat priority) -{ - void *mem_address = glXAllocateMemoryNV((GLint) size, (GLfloat)readFrequency, (GLfloat)writeFrequency, (GLfloat)priority); - return safeNewBuffer(env, mem_address, size); +static void JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_nglVertexArrayRangeNV(JNIEnv *env, jclass clazz, jint size, jobject pPointer, jint pPointer_position) { + const GLvoid *pPointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pPointer)) + pPointer_position)); + glVertexArrayRangeNV(size, pPointer_address); } -static void JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_glXFreeMemoryNV - (JNIEnv * env, jclass clazz, jobject pointer) -{ - void *address = (void *)(*env)->GetDirectBufferAddress(env, pointer); - glXFreeMemoryNV(address); -} -#endif - -#ifdef _WIN32 -static jobject JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_wglAllocateMemoryNV - (JNIEnv * env, jclass clazz, jint size, jfloat readFrequency, jfloat writeFrequency, jfloat priority) -{ - void *mem_address = wglAllocateMemoryNV((GLint)size, (GLfloat)readFrequency, (GLfloat)writeFrequency, (GLfloat)priority); - return safeNewBuffer(env, mem_address, size); -} - -static void JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_wglFreeMemoryNV - (JNIEnv * env, jclass clazz, jobject pointer) -{ - void *address = (void *)(*env)->GetDirectBufferAddress(env, pointer); - wglFreeMemoryNV(address); -} -#endif - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVVertexArrayRange_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglVertexArrayRangeNV", "(ILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexArrayRange_nglVertexArrayRangeNV, "glVertexArrayRangeNV", (void*)&glVertexArrayRangeNV}, - {"glFlushVertexArrayRangeNV", "()V", (void*)&Java_org_lwjgl_opengl_NVVertexArrayRange_glFlushVertexArrayRangeNV, "glFlushVertexArrayRangeNV", (void*)&glFlushVertexArrayRangeNV}, +#ifdef _WIN32 + {"nglFreeMemoryNV", "(Ljava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexArrayRange_nglFreeMemoryNV, "wglFreeMemoryNV", (void *)&glFreeMemoryNV}, +#endif #ifdef _X11 - {"glXAllocateMemoryNV", "(IFFF)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_NVVertexArrayRange_glXAllocateMemoryNV, "glXAllocateMemoryNV", (void*)&glXAllocateMemoryNV}, - {"glXFreeMemoryNV", "(Ljava/nio/ByteBuffer;)V", (void*)&Java_org_lwjgl_opengl_NVVertexArrayRange_glXFreeMemoryNV, "glXFreeMemoryNV", (void*)&glXFreeMemoryNV}, + {"nglFreeMemoryNV", "(Ljava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexArrayRange_nglFreeMemoryNV, "glXFreeMemoryNV", (void *)&glFreeMemoryNV}, #endif #ifdef _WIN32 - {"wglAllocateMemoryNV", "(IFFF)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_NVVertexArrayRange_wglAllocateMemoryNV, "wglAllocateMemoryNV", (void*)&wglAllocateMemoryNV}, - {"wglFreeMemoryNV", "(Ljava/nio/ByteBuffer;)V", (void*)&Java_org_lwjgl_opengl_NVVertexArrayRange_wglFreeMemoryNV, "wglFreeMemoryNV", (void*)&wglFreeMemoryNV} + {"glAllocateMemoryNV", "(IFFFI)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_NVVertexArrayRange_glAllocateMemoryNV, "wglAllocateMemoryNV", (void *)&glAllocateMemoryNV}, #endif +#ifdef _X11 + {"glAllocateMemoryNV", "(IFFFI)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_NVVertexArrayRange_glAllocateMemoryNV, "glXAllocateMemoryNV", (void *)&glAllocateMemoryNV}, +#endif + {"glFlushVertexArrayRangeNV", "()V", (void *)&Java_org_lwjgl_opengl_NVVertexArrayRange_glFlushVertexArrayRangeNV, "glFlushVertexArrayRangeNV", (void *)&glFlushVertexArrayRangeNV}, + {"nglVertexArrayRangeNV", "(ILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexArrayRange_nglVertexArrayRangeNV, "glVertexArrayRangeNV", (void *)&glVertexArrayRangeNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/nv/org_lwjgl_opengl_NVVertexProgram.c b/src/native/common/nv/org_lwjgl_opengl_NVVertexProgram.c index c1b13900..aef0abba 100644 --- a/src/native/common/nv/org_lwjgl_opengl_NVVertexProgram.c +++ b/src/native/common/nv/org_lwjgl_opengl_NVVertexProgram.c @@ -1,413 +1,225 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.NVVertexProgram -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef void (APIENTRY * glExecuteProgramNVPROC) (GLenum target, GLuint id, const GLfloat *params); -typedef void (APIENTRY * glGetProgramParameterfvNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetTrackMatrixivNVPROC) (GLenum target, GLuint address, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetVertexAttribfvNVPROC) (GLuint index, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetVertexAttribivNVPROC) (GLuint index, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetVertexAttribPointervNVPROC) (GLuint index, GLenum pname, GLvoid **pointer); -typedef void (APIENTRY * glProgramParameter4fNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glProgramParameters4fvNVPROC) (GLenum target, GLuint index, GLuint num, const GLfloat *params); -typedef void (APIENTRY * glTrackMatrixNVPROC) (GLenum target, GLuint address, GLenum matrix, GLenum transform); -typedef void (APIENTRY * glVertexAttribPointerNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glVertexAttrib1sNVPROC) (GLuint index, GLshort x); -typedef void (APIENTRY * glVertexAttrib1fNVPROC) (GLuint index, GLfloat x); -typedef void (APIENTRY * glVertexAttrib2sNVPROC) (GLuint index, GLshort x, GLshort y); -typedef void (APIENTRY * glVertexAttrib2fNVPROC) (GLuint index, GLfloat x, GLfloat y); -typedef void (APIENTRY * glVertexAttrib3sNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glVertexAttrib3fNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glVertexAttrib4sNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (APIENTRY * glVertexAttrib4fNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glVertexAttrib4ubNVPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); -typedef void (APIENTRY * glVertexAttribs1svNVPROC) (GLuint index, GLsizei n, const GLshort *v); -typedef void (APIENTRY * glVertexAttribs1fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); -typedef void (APIENTRY * glVertexAttribs2svNVPROC) (GLuint index, GLsizei n, const GLshort *v); -typedef void (APIENTRY * glVertexAttribs2fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); -typedef void (APIENTRY * glVertexAttribs3svNVPROC) (GLuint index, GLsizei n, const GLshort *v); -typedef void (APIENTRY * glVertexAttribs3fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); -typedef void (APIENTRY * glVertexAttribs4svNVPROC) (GLuint index, GLsizei n, const GLshort *v); -typedef void (APIENTRY * glVertexAttribs4fvNVPROC) (GLuint index, GLsizei n, const GLfloat *v); -typedef void (APIENTRY * glVertexAttribs4ubvNVPROC) (GLuint index, GLsizei n, const GLubyte *v); +typedef void (APIENTRY *glVertexAttribs4fvNVPROC) (GLuint index, GLsizei n, const GLfloat * v); +typedef void (APIENTRY *glVertexAttribs4svNVPROC) (GLuint index, GLsizei n, const GLshort * v); +typedef void (APIENTRY *glVertexAttribs3fvNVPROC) (GLuint index, GLsizei n, const GLfloat * v); +typedef void (APIENTRY *glVertexAttribs3svNVPROC) (GLuint index, GLsizei n, const GLshort * v); +typedef void (APIENTRY *glVertexAttribs2fvNVPROC) (GLuint index, GLsizei n, const GLfloat * v); +typedef void (APIENTRY *glVertexAttribs2svNVPROC) (GLuint index, GLsizei n, const GLshort * v); +typedef void (APIENTRY *glVertexAttribs1fvNVPROC) (GLuint index, GLsizei n, const GLfloat * v); +typedef void (APIENTRY *glVertexAttribs1svNVPROC) (GLuint index, GLsizei n, const GLshort * v); +typedef void (APIENTRY *glVertexAttrib4ubNVPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); +typedef void (APIENTRY *glVertexAttrib4fNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY *glVertexAttrib4sNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (APIENTRY *glVertexAttrib3fNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glVertexAttrib3sNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY *glVertexAttrib2fNVPROC) (GLuint index, GLfloat x, GLfloat y); +typedef void (APIENTRY *glVertexAttrib2sNVPROC) (GLuint index, GLshort x, GLshort y); +typedef void (APIENTRY *glVertexAttrib1fNVPROC) (GLuint index, GLfloat x); +typedef void (APIENTRY *glVertexAttrib1sNVPROC) (GLuint index, GLshort x); +typedef void (APIENTRY *glVertexAttribPointerNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * buffer); +typedef void (APIENTRY *glTrackMatrixNVPROC) (GLenum target, GLuint address, GLenum matrix, GLenum transform); +typedef void (APIENTRY *glProgramParameters4fvNVPROC) (GLenum target, GLuint index, GLuint count, const GLfloat * params); +typedef void (APIENTRY *glProgramParameter4fNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY *glGetVertexAttribPointervNVPROC) (GLuint index, GLenum parameterName, GLvoid ** pointer); +typedef void (APIENTRY *glGetVertexAttribivNVPROC) (GLuint index, GLenum parameterName, GLint * params); +typedef void (APIENTRY *glGetVertexAttribfvNVPROC) (GLuint index, GLenum parameterName, GLfloat * params); +typedef void (APIENTRY *glGetTrackMatrixivNVPROC) (GLenum target, GLuint address, GLenum parameterName, GLint * params); +typedef void (APIENTRY *glGetProgramParameterfvNVPROC) (GLenum target, GLuint index, GLenum parameterName, GLfloat * params); +typedef void (APIENTRY *glExecuteProgramNVPROC) (GLenum target, GLuint id, const GLfloat * params); -static glExecuteProgramNVPROC glExecuteProgramNV; -static glGetProgramParameterfvNVPROC glGetProgramParameterfvNV; -static glGetTrackMatrixivNVPROC glGetTrackMatrixivNV; -static glGetVertexAttribfvNVPROC glGetVertexAttribfvNV; -static glGetVertexAttribivNVPROC glGetVertexAttribivNV; -static glGetVertexAttribPointervNVPROC glGetVertexAttribPointervNV; -static glProgramParameter4fNVPROC glProgramParameter4fNV; -static glProgramParameters4fvNVPROC glProgramParameters4fvNV; -static glTrackMatrixNVPROC glTrackMatrixNV; -static glVertexAttribPointerNVPROC glVertexAttribPointerNV; -static glVertexAttrib1sNVPROC glVertexAttrib1sNV; -static glVertexAttrib1fNVPROC glVertexAttrib1fNV; -static glVertexAttrib2sNVPROC glVertexAttrib2sNV; -static glVertexAttrib2fNVPROC glVertexAttrib2fNV; -static glVertexAttrib3sNVPROC glVertexAttrib3sNV; -static glVertexAttrib3fNVPROC glVertexAttrib3fNV; -static glVertexAttrib4sNVPROC glVertexAttrib4sNV; -static glVertexAttrib4fNVPROC glVertexAttrib4fNV; -static glVertexAttrib4ubNVPROC glVertexAttrib4ubNV; -static glVertexAttribs1svNVPROC glVertexAttribs1svNV; -static glVertexAttribs1fvNVPROC glVertexAttribs1fvNV; -static glVertexAttribs2svNVPROC glVertexAttribs2svNV; -static glVertexAttribs2fvNVPROC glVertexAttribs2fvNV; -static glVertexAttribs3svNVPROC glVertexAttribs3svNV; -static glVertexAttribs3fvNVPROC glVertexAttribs3fvNV; -static glVertexAttribs4svNVPROC glVertexAttribs4svNV; static glVertexAttribs4fvNVPROC glVertexAttribs4fvNV; -static glVertexAttribs4ubvNVPROC glVertexAttribs4ubvNV; +static glVertexAttribs4svNVPROC glVertexAttribs4svNV; +static glVertexAttribs3fvNVPROC glVertexAttribs3fvNV; +static glVertexAttribs3svNVPROC glVertexAttribs3svNV; +static glVertexAttribs2fvNVPROC glVertexAttribs2fvNV; +static glVertexAttribs2svNVPROC glVertexAttribs2svNV; +static glVertexAttribs1fvNVPROC glVertexAttribs1fvNV; +static glVertexAttribs1svNVPROC glVertexAttribs1svNV; +static glVertexAttrib4ubNVPROC glVertexAttrib4ubNV; +static glVertexAttrib4fNVPROC glVertexAttrib4fNV; +static glVertexAttrib4sNVPROC glVertexAttrib4sNV; +static glVertexAttrib3fNVPROC glVertexAttrib3fNV; +static glVertexAttrib3sNVPROC glVertexAttrib3sNV; +static glVertexAttrib2fNVPROC glVertexAttrib2fNV; +static glVertexAttrib2sNVPROC glVertexAttrib2sNV; +static glVertexAttrib1fNVPROC glVertexAttrib1fNV; +static glVertexAttrib1sNVPROC glVertexAttrib1sNV; +static glVertexAttribPointerNVPROC glVertexAttribPointerNV; +static glTrackMatrixNVPROC glTrackMatrixNV; +static glProgramParameters4fvNVPROC glProgramParameters4fvNV; +static glProgramParameter4fNVPROC glProgramParameter4fNV; +static glGetVertexAttribPointervNVPROC glGetVertexAttribPointervNV; +static glGetVertexAttribivNVPROC glGetVertexAttribivNV; +static glGetVertexAttribfvNVPROC glGetVertexAttribfvNV; +static glGetTrackMatrixivNVPROC glGetTrackMatrixivNV; +static glGetProgramParameterfvNVPROC glGetProgramParameterfvNV; +static glExecuteProgramNVPROC glExecuteProgramNV; -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: nglExecuteProgramNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglExecuteProgramNV - (JNIEnv * env, jclass clazz, jint target, jint id, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glExecuteProgramNV(target, id, params_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs4fvNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject v, jint v_position) { + const GLfloat *v_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, v)) + v_position; + glVertexAttribs4fvNV(index, n, v_address); } -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: nglGetProgramParameterfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglGetProgramParameterfvNV - (JNIEnv * env, jclass clazz, jint target, jint index, jint parameterName, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetProgramParameterfvNV(target, index, parameterName, params_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs4svNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject v, jint v_position) { + const GLshort *v_address = ((const GLshort *)(*env)->GetDirectBufferAddress(env, v)) + v_position; + glVertexAttribs4svNV(index, n, v_address); } -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: nglGetTrackMatrixivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglGetTrackMatrixivNV - (JNIEnv * env, jclass clazz, jint target, jint address, jint parameterName, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetTrackMatrixivNV(target, address, parameterName, params_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs3fvNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject v, jint v_position) { + const GLfloat *v_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, v)) + v_position; + glVertexAttribs3fvNV(index, n, v_address); } -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: nglGetVertexAttribfvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglGetVertexAttribfvNV - (JNIEnv * env, jclass clazz, jint index, jint parameterName, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetVertexAttribfvNV(index, parameterName, params_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs3svNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject v, jint v_position) { + const GLshort *v_address = ((const GLshort *)(*env)->GetDirectBufferAddress(env, v)) + v_position; + glVertexAttribs3svNV(index, n, v_address); } -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: nglGetVertexAttribivNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglGetVertexAttribivNV - (JNIEnv * env, jclass clazz, jint index, jint parameterName, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetVertexAttribivNV(index, parameterName, params_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs2fvNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject v, jint v_position) { + const GLfloat *v_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, v)) + v_position; + glVertexAttribs2fvNV(index, n, v_address); } -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glGetVertexAttribPointerNV - */ -static jobject JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glGetVertexAttribPointerNV - (JNIEnv * env, jclass clazz, jint index, jint parameterName, jint size) -{ - void *address; - glGetVertexAttribPointervNV((GLuint)index, (GLuint)parameterName, &address); - - return safeNewBuffer(env, address, size); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs2svNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject v, jint v_position) { + const GLshort *v_address = ((const GLshort *)(*env)->GetDirectBufferAddress(env, v)) + v_position; + glVertexAttribs2svNV(index, n, v_address); } -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glProgramParameter4fNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glProgramParameter4fNV - (JNIEnv * env, jclass clazz, jint target, jint index, jfloat x, jfloat y, jfloat z, jfloat w) -{ - glProgramParameter4fNV(target, index, x, y, z, w); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs1fvNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject v, jint v_position) { + const GLfloat *v_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, v)) + v_position; + glVertexAttribs1fvNV(index, n, v_address); } -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: nglProgramParameters4fvNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglProgramParameters4fvNV - (JNIEnv * env, jclass clazz, jint target, jint index, jint count, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glProgramParameters4fvNV(target, index, count, params_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs1svNV(JNIEnv *env, jclass clazz, jint index, jint n, jobject v, jint v_position) { + const GLshort *v_address = ((const GLshort *)(*env)->GetDirectBufferAddress(env, v)) + v_position; + glVertexAttribs1svNV(index, n, v_address); } -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glTrackMatrixNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glTrackMatrixNV - (JNIEnv * env, jclass clazz, jint target, jint address, jint matrix, jint transform) -{ - glTrackMatrixNV(target, address, matrix, transform); - -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: nglVertexAttribPointerNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribPointerNV - (JNIEnv * env, jclass clazz, jint index, jint size, jint type, jint stride, jobject buffer, jint bufferOffset) -{ - GLvoid *buffer_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, buffer) + bufferOffset); - glVertexAttribPointerNV(index, size, type, stride, buffer_ptr); -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: nglVertexAttribPointerNVVBO - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribPointerNVVBO - (JNIEnv * env, jclass clazz, jint index, jint size, jint type, jint stride, jint bufferOffset) -{ - glVertexAttribPointerNV(index, size, type, stride, (GLvoid *)bufferOffset); -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glVertexAttrib1sNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib1sNV - (JNIEnv * env, jclass clazz, jint index, jshort x) -{ - glVertexAttrib1sNV(index, x); -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glVertexAttrib1fNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib1fNV - (JNIEnv * env, jclass clazz, jint index, jfloat x) -{ - glVertexAttrib1fNV(index, x); -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glVertexAttrib2sNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib2sNV - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y) -{ - glVertexAttrib2sNV(index, x, y); -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glVertexAttrib2fNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib2fNV - (JNIEnv * env, jclass clazz, jint index, jfloat x, jfloat y) -{ - glVertexAttrib2fNV(index, x, y); -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glVertexAttrib3sNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib3sNV - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y, jshort z) -{ - glVertexAttrib3sNV(index, x, y, z); -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glVertexAttrib3fNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib3fNV - (JNIEnv * env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z) -{ - glVertexAttrib3fNV(index, x, y, z); -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glVertexAttrib4sNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4sNV - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y, jshort z, jshort w) -{ - glVertexAttrib4sNV(index, x, y, z, w); -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glVertexAttrib4fNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4fNV - (JNIEnv * env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z, jfloat w) -{ - glVertexAttrib4fNV(index, x, y, z, w); -} - -/* - * Class: org.lwjgl.opengl.NVVertexProgram - * Method: glVertexAttrib4ubNV - */ -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4ubNV - (JNIEnv * env, jclass clazz, jint index, jbyte x, jbyte y, jbyte z, jbyte w) -{ +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4ubNV(JNIEnv *env, jclass clazz, jint index, jbyte x, jbyte y, jbyte z, jbyte w) { glVertexAttrib4ubNV(index, x, y, z, w); } -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs1svNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject v, jint v_offset) -{ - GLshort *v_ptr = (GLshort *)(*env)->GetDirectBufferAddress(env, v) + v_offset; - glVertexAttribs1svNV(index, n, v_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4fNV(JNIEnv *env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z, jfloat w) { + glVertexAttrib4fNV(index, x, y, z, w); } -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs1fvNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject v, jint v_offset) -{ - GLfloat *v_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, v) + v_offset; - glVertexAttribs1fvNV(index, n, v_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4sNV(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y, jshort z, jshort w) { + glVertexAttrib4sNV(index, x, y, z, w); } -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs2svNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject v, jint v_offset) -{ - GLshort *v_ptr = (GLshort *)(*env)->GetDirectBufferAddress(env, v) + v_offset; - glVertexAttribs2svNV(index, n, v_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib3fNV(JNIEnv *env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z) { + glVertexAttrib3fNV(index, x, y, z); } -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs2fvNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject v, jint v_offset) -{ - GLfloat *v_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, v) + v_offset; - glVertexAttribs2fvNV(index, n, v_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib3sNV(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y, jshort z) { + glVertexAttrib3sNV(index, x, y, z); } -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs3svNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject v, jint v_offset) -{ - GLshort *v_ptr = (GLshort *)(*env)->GetDirectBufferAddress(env, v) + v_offset; - glVertexAttribs3svNV(index, n, v_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib2fNV(JNIEnv *env, jclass clazz, jint index, jfloat x, jfloat y) { + glVertexAttrib2fNV(index, x, y); } -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs3fvNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject v, jint v_offset) -{ - GLfloat *v_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, v) + v_offset; - glVertexAttribs3fvNV(index, n, v_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib2sNV(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y) { + glVertexAttrib2sNV(index, x, y); } -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs4svNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject v, jint v_offset) -{ - GLshort *v_ptr = (GLshort *)(*env)->GetDirectBufferAddress(env, v) + v_offset; - glVertexAttribs4svNV(index, n, v_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib1fNV(JNIEnv *env, jclass clazz, jint index, jfloat x) { + glVertexAttrib1fNV(index, x); } -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs4fvNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject v, jint v_offset) -{ - GLfloat *v_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, v) + v_offset; - glVertexAttribs4fvNV(index, n, v_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib1sNV(JNIEnv *env, jclass clazz, jint index, jshort x) { + glVertexAttrib1sNV(index, x); } -static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs4ubvNV - (JNIEnv * env, jclass clazz, jint index, jint n, jobject v, jint v_offset) -{ - GLubyte *v_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, v) + v_offset; - glVertexAttribs4ubvNV(index, n, v_ptr); +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribPointerNV(JNIEnv *env, jclass clazz, jint index, jint size, jint type, jint stride, jobject buffer, jint buffer_position) { + const GLvoid *buffer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, buffer)) + buffer_position)); + glVertexAttribPointerNV(index, size, type, stride, buffer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribPointerNVBO(JNIEnv *env, jclass clazz, jint index, jint size, jint type, jint stride, jint buffer_buffer_offset) { + const GLvoid *buffer_address = ((const GLvoid *)offsetToPointer(buffer_buffer_offset)); + glVertexAttribPointerNV(index, size, type, stride, buffer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glTrackMatrixNV(JNIEnv *env, jclass clazz, jint target, jint address, jint matrix, jint transform) { + glTrackMatrixNV(target, address, matrix, transform); +} + +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglProgramParameters4fvNV(JNIEnv *env, jclass clazz, jint target, jint index, jint count, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glProgramParameters4fvNV(target, index, count, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_glProgramParameter4fNV(JNIEnv *env, jclass clazz, jint target, jint index, jfloat x, jfloat y, jfloat z, jfloat w) { + glProgramParameter4fNV(target, index, x, y, z, w); +} + +static jobject JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglGetVertexAttribPointervNV(JNIEnv *env, jclass clazz, jint index, jint parameterName, jint result_size) { + GLvoid * __result; + glGetVertexAttribPointervNV(index, parameterName, &__result); + return safeNewBuffer(env, __result, result_size); +} + +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglGetVertexAttribivNV(JNIEnv *env, jclass clazz, jint index, jint parameterName, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetVertexAttribivNV(index, parameterName, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglGetVertexAttribfvNV(JNIEnv *env, jclass clazz, jint index, jint parameterName, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetVertexAttribfvNV(index, parameterName, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglGetTrackMatrixivNV(JNIEnv *env, jclass clazz, jint target, jint address, jint parameterName, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetTrackMatrixivNV(target, address, parameterName, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglGetProgramParameterfvNV(JNIEnv *env, jclass clazz, jint target, jint index, jint parameterName, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetProgramParameterfvNV(target, index, parameterName, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_nglExecuteProgramNV(JNIEnv *env, jclass clazz, jint target, jint id, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glExecuteProgramNV(target, id, params_address); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_NVVertexProgram_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglExecuteProgramNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglExecuteProgramNV, "glExecuteProgramNV", (void*)&glExecuteProgramNV}, - {"nglGetProgramParameterfvNV", "(IIILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglGetProgramParameterfvNV, "glGetProgramParameterfvNV", (void*)&glGetProgramParameterfvNV}, - {"nglGetTrackMatrixivNV", "(IIILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglGetTrackMatrixivNV, "glGetTrackMatrixivNV", (void*)&glGetTrackMatrixivNV}, - {"nglGetVertexAttribfvNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglGetVertexAttribfvNV, "glGetVertexAttribfvNV", (void*)&glGetVertexAttribfvNV}, - {"nglGetVertexAttribivNV", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglGetVertexAttribivNV, "glGetVertexAttribivNV", (void*)&glGetVertexAttribivNV}, - {"glGetVertexAttribPointerNV", "(III)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glGetVertexAttribPointerNV, "glGetVertexAttribPointervNV", (void*)&glGetVertexAttribPointervNV}, - {"glProgramParameter4fNV", "(IIFFFF)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glProgramParameter4fNV, "glProgramParameter4fNV", (void*)&glProgramParameter4fNV}, - {"nglProgramParameters4fvNV", "(IIILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglProgramParameters4fvNV, "glProgramParameters4fvNV", (void*)&glProgramParameters4fvNV}, - {"glTrackMatrixNV", "(IIII)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glTrackMatrixNV, "glTrackMatrixNV", (void*)&glTrackMatrixNV}, - {"nglVertexAttribPointerNV", "(IIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribPointerNV, "glVertexAttribPointerNV", (void*)&glVertexAttribPointerNV}, - {"nglVertexAttribPointerNVVBO", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribPointerNVVBO, NULL, NULL}, - {"glVertexAttrib1sNV", "(IS)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib1sNV, "glVertexAttrib1sNV", (void*)&glVertexAttrib1sNV}, - {"glVertexAttrib1fNV", "(IF)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib1fNV, "glVertexAttrib1fNV", (void*)&glVertexAttrib1fNV}, - {"glVertexAttrib2sNV", "(ISS)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib2sNV, "glVertexAttrib2sNV", (void*)&glVertexAttrib2sNV}, - {"glVertexAttrib2fNV", "(IFF)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib2fNV, "glVertexAttrib2fNV", (void*)&glVertexAttrib2fNV}, - {"glVertexAttrib3sNV", "(ISSS)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib3sNV, "glVertexAttrib3sNV", (void*)&glVertexAttrib3sNV}, - {"glVertexAttrib3fNV", "(IFFF)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib3fNV, "glVertexAttrib3fNV", (void*)&glVertexAttrib3fNV}, - {"glVertexAttrib4sNV", "(ISSSS)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4sNV, "glVertexAttrib4sNV", (void*)&glVertexAttrib4sNV}, - {"glVertexAttrib4fNV", "(IFFFF)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4fNV, "glVertexAttrib4fNV", (void*)&glVertexAttrib4fNV}, - {"glVertexAttrib4ubNV", "(IBBBB)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4ubNV, "glVertexAttrib4ubNV", (void*)&glVertexAttrib4ubNV}, - {"nglVertexAttribs1svNV", "(IILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs1svNV, "glVertexAttribs1svNV", (void*)&glVertexAttribs1svNV}, - {"nglVertexAttribs1fvNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs1fvNV, "glVertexAttribs1fvNV", (void*)&glVertexAttribs1fvNV}, - {"nglVertexAttribs2svNV", "(IILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs2svNV, "glVertexAttribs2svNV", (void*)&glVertexAttribs2svNV}, - {"nglVertexAttribs2fvNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs2fvNV, "glVertexAttribs2fvNV", (void*)&glVertexAttribs2fvNV}, - {"nglVertexAttribs3svNV", "(IILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs3svNV, "glVertexAttribs3svNV", (void*)&glVertexAttribs3svNV}, - {"nglVertexAttribs3fvNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs3fvNV, "glVertexAttribs3fvNV", (void*)&glVertexAttribs3fvNV}, - {"nglVertexAttribs4svNV", "(IILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs4svNV, "glVertexAttribs4svNV", (void*)&glVertexAttribs4svNV}, - {"nglVertexAttribs4fvNV", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs4fvNV, "glVertexAttribs4fvNV", (void*)&glVertexAttribs4fvNV}, - {"nglVertexAttribs4ubvNV", "(IILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs4ubvNV, "glVertexAttribs4ubvNV", (void*)&glVertexAttribs4ubvNV} + {"nglVertexAttribs4fvNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs4fvNV, "glVertexAttribs4fvNV", (void *)&glVertexAttribs4fvNV}, + {"nglVertexAttribs4svNV", "(IILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs4svNV, "glVertexAttribs4svNV", (void *)&glVertexAttribs4svNV}, + {"nglVertexAttribs3fvNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs3fvNV, "glVertexAttribs3fvNV", (void *)&glVertexAttribs3fvNV}, + {"nglVertexAttribs3svNV", "(IILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs3svNV, "glVertexAttribs3svNV", (void *)&glVertexAttribs3svNV}, + {"nglVertexAttribs2fvNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs2fvNV, "glVertexAttribs2fvNV", (void *)&glVertexAttribs2fvNV}, + {"nglVertexAttribs2svNV", "(IILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs2svNV, "glVertexAttribs2svNV", (void *)&glVertexAttribs2svNV}, + {"nglVertexAttribs1fvNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs1fvNV, "glVertexAttribs1fvNV", (void *)&glVertexAttribs1fvNV}, + {"nglVertexAttribs1svNV", "(IILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribs1svNV, "glVertexAttribs1svNV", (void *)&glVertexAttribs1svNV}, + {"glVertexAttrib4ubNV", "(IBBBB)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4ubNV, "glVertexAttrib4ubNV", (void *)&glVertexAttrib4ubNV}, + {"glVertexAttrib4fNV", "(IFFFF)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4fNV, "glVertexAttrib4fNV", (void *)&glVertexAttrib4fNV}, + {"glVertexAttrib4sNV", "(ISSSS)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib4sNV, "glVertexAttrib4sNV", (void *)&glVertexAttrib4sNV}, + {"glVertexAttrib3fNV", "(IFFF)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib3fNV, "glVertexAttrib3fNV", (void *)&glVertexAttrib3fNV}, + {"glVertexAttrib3sNV", "(ISSS)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib3sNV, "glVertexAttrib3sNV", (void *)&glVertexAttrib3sNV}, + {"glVertexAttrib2fNV", "(IFF)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib2fNV, "glVertexAttrib2fNV", (void *)&glVertexAttrib2fNV}, + {"glVertexAttrib2sNV", "(ISS)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib2sNV, "glVertexAttrib2sNV", (void *)&glVertexAttrib2sNV}, + {"glVertexAttrib1fNV", "(IF)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib1fNV, "glVertexAttrib1fNV", (void *)&glVertexAttrib1fNV}, + {"glVertexAttrib1sNV", "(IS)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glVertexAttrib1sNV, "glVertexAttrib1sNV", (void *)&glVertexAttrib1sNV}, + {"nglVertexAttribPointerNV", "(IIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribPointerNV, "glVertexAttribPointerNV", (void *)&glVertexAttribPointerNV}, + {"nglVertexAttribPointerNVBO", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglVertexAttribPointerNVBO, "glVertexAttribPointerNV", (void *)&glVertexAttribPointerNV}, + {"glTrackMatrixNV", "(IIII)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glTrackMatrixNV, "glTrackMatrixNV", (void *)&glTrackMatrixNV}, + {"nglProgramParameters4fvNV", "(IIILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglProgramParameters4fvNV, "glProgramParameters4fvNV", (void *)&glProgramParameters4fvNV}, + {"glProgramParameter4fNV", "(IIFFFF)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_glProgramParameter4fNV, "glProgramParameter4fNV", (void *)&glProgramParameter4fNV}, + {"nglGetVertexAttribPointervNV", "(III)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglGetVertexAttribPointervNV, "glGetVertexAttribPointervNV", (void *)&glGetVertexAttribPointervNV}, + {"nglGetVertexAttribivNV", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglGetVertexAttribivNV, "glGetVertexAttribivNV", (void *)&glGetVertexAttribivNV}, + {"nglGetVertexAttribfvNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglGetVertexAttribfvNV, "glGetVertexAttribfvNV", (void *)&glGetVertexAttribfvNV}, + {"nglGetTrackMatrixivNV", "(IIILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglGetTrackMatrixivNV, "glGetTrackMatrixivNV", (void *)&glGetTrackMatrixivNV}, + {"nglGetProgramParameterfvNV", "(IIILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglGetProgramParameterfvNV, "glGetProgramParameterfvNV", (void *)&glGetProgramParameterfvNV}, + {"nglExecuteProgramNV", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_NVVertexProgram_nglExecuteProgramNV, "glExecuteProgramNV", (void *)&glExecuteProgramNV} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/org_lwjgl_openal_AL10.c b/src/native/common/org_lwjgl_openal_AL10.c index 04116256..327b1d7d 100644 --- a/src/native/common/org_lwjgl_openal_AL10.c +++ b/src/native/common/org_lwjgl_openal_AL10.c @@ -1,797 +1,391 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ -/** - * $Id$ - * - * This is the actual JNI implementation of the OpenAL core. It handles - * whatever is needed for proper OpenAL support via using Java. - * - * @author Brian Matzon - * @version $Revision$ - */ - -/* OpenAL includes */ +#include #include "checkALerror.h" #include "extal.h" -typedef ALboolean (ALAPIENTRY *alIsExtensionPresentPROC)( ALubyte* fname ); -typedef ALvoid (ALAPIENTRY *alEnablePROC)( ALenum capability ); -typedef ALvoid (ALAPIENTRY *alDisablePROC)( ALenum capability ); -typedef ALboolean (ALAPIENTRY *alIsEnabledPROC)( ALenum capability ); -//typedef ALvoid (ALAPIENTRY *alHintPROC)( ALenum target, ALenum mode ); -typedef ALboolean (ALAPIENTRY *alGetBooleanPROC)( ALenum param ); -typedef ALint (ALAPIENTRY *alGetIntegerPROC)( ALenum param ); -typedef ALfloat (ALAPIENTRY *alGetFloatPROC)( ALenum param ); -//typedef ALvoid (ALAPIENTRY *alGetBooleanvPROC)( ALenum param, ALboolean* data ); -typedef ALvoid (ALAPIENTRY *alGetIntegervPROC)( ALenum param, ALint* data ); -typedef ALvoid (ALAPIENTRY *alGetFloatvPROC)( ALenum param, ALfloat* data ); -typedef ALenum (ALAPIENTRY *alGetEnumValuePROC)( ALubyte* ename ); -typedef ALvoid (ALAPIENTRY *alListeneriPROC)( ALenum param, ALint value ); -typedef ALvoid (ALAPIENTRY *alListenerfPROC)( ALenum param, ALfloat value ); -typedef ALvoid (ALAPIENTRY *alListener3fPROC)( ALenum param, ALfloat v1, ALfloat v2, ALfloat v3 ); -typedef ALvoid (ALAPIENTRY *alListenerfvPROC)( ALenum param, ALfloat* values ); -typedef ALvoid (ALAPIENTRY *alGetListeneriPROC)( ALenum param, ALint* value ); -typedef ALvoid (ALAPIENTRY *alGetListenerfPROC)( ALenum param, ALfloat* value ); -//typedef ALvoid (ALAPIENTRY *alGetListener3fPROC)( ALenum param, ALfloat* v1, ALfloat* v2, ALfloat* v3 ); -typedef ALvoid (ALAPIENTRY *alGetListenerfvPROC)( ALenum param, ALfloat* values ); -typedef ALvoid (ALAPIENTRY *alGenSourcesPROC)( ALsizei n, ALuint* sources ); -typedef ALvoid (ALAPIENTRY *alDeleteSourcesPROC)( ALsizei n, ALuint* sources ); -typedef ALboolean (ALAPIENTRY *alIsSourcePROC)( ALuint id ); -typedef ALvoid (ALAPIENTRY *alSourceiPROC)( ALuint source, ALenum param, ALint value ); -typedef ALvoid (ALAPIENTRY *alSourcefPROC)( ALuint source, ALenum param, ALfloat value ); -typedef ALvoid (ALAPIENTRY *alSource3fPROC)( ALuint source, ALenum param, ALfloat v1, ALfloat v2, ALfloat v3 ); -typedef ALvoid (ALAPIENTRY *alSourcefvPROC)( ALuint source, ALenum param, ALfloat* values ); -typedef ALvoid (ALAPIENTRY *alGetSourceiPROC)( ALuint source, ALenum param, ALint* value ); -typedef ALvoid (ALAPIENTRY *alGetSourcefPROC)( ALuint source, ALenum param, ALfloat* value ); -//typedef ALvoid (ALAPIENTRY *alGetSource3fPROC)( ALuint source, ALenum param, ALfloat* v1, ALfloat* v2, ALfloat* v3 ); -typedef ALvoid (ALAPIENTRY *alGetSourcefvPROC)( ALuint source, ALenum param, ALfloat* values ); -typedef ALvoid (ALAPIENTRY *alSourcePlayvPROC)( ALsizei n, ALuint *sources ); -typedef ALvoid (ALAPIENTRY *alSourcePausevPROC)( ALsizei n, ALuint *sources ); -typedef ALvoid (ALAPIENTRY *alSourceStopvPROC)( ALsizei n, ALuint *sources ); -typedef ALvoid (ALAPIENTRY *alSourceRewindvPROC)(ALsizei n,ALuint *sources); -typedef ALvoid (ALAPIENTRY *alSourcePlayPROC)( ALuint source ); -typedef ALvoid (ALAPIENTRY *alSourcePausePROC)( ALuint source ); -typedef ALvoid (ALAPIENTRY *alSourceStopPROC)( ALuint source ); -typedef ALvoid (ALAPIENTRY *alSourceRewindPROC)( ALuint source ); -typedef ALvoid (ALAPIENTRY *alGenBuffersPROC)( ALsizei n, ALuint* buffers ); -typedef ALvoid (ALAPIENTRY *alDeleteBuffersPROC)( ALsizei n, ALuint* buffers ); -typedef ALboolean (ALAPIENTRY *alIsBufferPROC)( ALuint buffer ); -typedef ALvoid (ALAPIENTRY *alBufferDataPROC)( ALuint buffer, - ALenum format, - ALvoid* data, - ALsizei size, - ALsizei freq ); -typedef ALvoid (ALAPIENTRY *alGetBufferiPROC)( ALuint buffer, ALenum param, ALint* value ); -typedef ALvoid (ALAPIENTRY *alGetBufferfPROC)( ALuint buffer, ALenum param, ALfloat* value ); -typedef ALvoid (ALAPIENTRY *alSourceQueueBuffersPROC)( ALuint source, ALsizei n, ALuint* buffers ); -typedef ALvoid (ALAPIENTRY *alSourceUnqueueBuffersPROC)( ALuint source, ALsizei n, ALuint* buffers ); -typedef ALvoid (ALAPIENTRY *alDistanceModelPROC)( ALenum value ); -typedef ALvoid (ALAPIENTRY *alDopplerFactorPROC)( ALfloat value ); -typedef ALvoid (ALAPIENTRY *alDopplerVelocityPROC)( ALfloat value ); +typedef ALvoid (ALAPIENTRY *alDopplerVelocityPROC) (ALfloat value); +typedef ALvoid (ALAPIENTRY *alDopplerFactorPROC) (ALfloat value); +typedef ALvoid (ALAPIENTRY *alDistanceModelPROC) (ALenum value); +typedef ALvoid (ALAPIENTRY *alSourceUnqueueBuffersPROC) (ALuint source, ALsizei n, ALuint * buffers); +typedef ALvoid (ALAPIENTRY *alSourceQueueBuffersPROC) (ALuint source, ALsizei n, ALuint * buffers); +typedef ALvoid (ALAPIENTRY *alGetBufferfPROC) (ALuint buffer, ALenum pname, ALfloat* value); +typedef ALvoid (ALAPIENTRY *alGetBufferiPROC) (ALuint buffer, ALenum pname, ALint* value); +typedef ALvoid (ALAPIENTRY *alBufferDataPROC) (ALuint buffer, ALenum format, ALvoid * data, ALsizei size, ALsizei freq); +typedef ALboolean (ALAPIENTRY *alIsBufferPROC) (ALuint buffer); +typedef ALvoid (ALAPIENTRY *alDeleteBuffersPROC) (ALsizei n, ALuint * buffers); +typedef ALvoid (ALAPIENTRY *alGenBuffersPROC) (ALsizei n, ALuint * buffers); +typedef ALvoid (ALAPIENTRY *alSourceRewindPROC) (ALuint source); +typedef ALvoid (ALAPIENTRY *alSourceStopPROC) (ALuint source); +typedef ALvoid (ALAPIENTRY *alSourcePausePROC) (ALuint source); +typedef ALvoid (ALAPIENTRY *alSourcePlayPROC) (ALuint source); +typedef ALvoid (ALAPIENTRY *alSourceRewindvPROC) (ALsizei n, ALuint * sources); +typedef ALvoid (ALAPIENTRY *alSourceStopvPROC) (ALsizei n, ALuint * sources); +typedef ALvoid (ALAPIENTRY *alSourcePausevPROC) (ALsizei n, ALuint * sources); +typedef ALvoid (ALAPIENTRY *alSourcePlayvPROC) (ALsizei n, ALuint * sources); +typedef ALvoid (ALAPIENTRY *alGetSourcefvPROC) (ALuint source, ALenum pname, ALfloat * floatdata); +typedef ALvoid (ALAPIENTRY *alGetSourcefPROC) (ALuint source, ALenum pname, ALfloat* value); +typedef ALvoid (ALAPIENTRY *alGetSourceiPROC) (ALuint source, ALenum pname, ALint* value); +typedef ALvoid (ALAPIENTRY *alSource3fPROC) (ALuint source, ALenum pname, ALfloat v1, ALfloat v2, ALfloat v3); +typedef ALvoid (ALAPIENTRY *alSourcefvPROC) (ALuint source, ALenum pname, ALfloat * value); +typedef ALvoid (ALAPIENTRY *alSourcefPROC) (ALuint source, ALenum pname, ALfloat value); +typedef ALvoid (ALAPIENTRY *alSourceiPROC) (ALuint source, ALenum pname, ALint value); +typedef ALboolean (ALAPIENTRY *alIsSourcePROC) (ALuint id); +typedef ALvoid (ALAPIENTRY *alDeleteSourcesPROC) (ALsizei n, ALuint * sources); +typedef ALvoid (ALAPIENTRY *alGenSourcesPROC) (ALsizei n, ALuint * sources); +typedef ALvoid (ALAPIENTRY *alGetListenerfvPROC) (ALenum pname, ALfloat * floatdata); +typedef ALfloat (ALAPIENTRY *alGetListenerfPROC) (ALenum pname); +typedef ALint (ALAPIENTRY *alGetListeneriPROC) (ALenum pname); +typedef ALvoid (ALAPIENTRY *alListener3fPROC) (ALenum pname, ALfloat v1, ALfloat v2, ALfloat v3); +typedef ALvoid (ALAPIENTRY *alListenerfvPROC) (ALenum pname, ALfloat * value); +typedef ALvoid (ALAPIENTRY *alListenerfPROC) (ALenum pname, ALfloat value); +typedef ALvoid (ALAPIENTRY *alListeneriPROC) (ALenum pname, ALint value); +typedef ALenum (ALAPIENTRY *alGetEnumValuePROC) (ALubyte * ename); +typedef ALboolean (ALAPIENTRY *alIsExtensionPresentPROC) (ALubyte * fname); +typedef ALenum (ALAPIENTRY *alGetErrorPROC) (); +typedef ALubyte * (ALAPIENTRY *alGetStringPROC) (ALenum pname); +typedef ALvoid (ALAPIENTRY *alGetFloatvPROC) (ALenum pname, ALfloat * data); +typedef ALvoid (ALAPIENTRY *alGetIntegervPROC) (ALenum pname, ALint * data); +typedef ALfloat (ALAPIENTRY *alGetFloatPROC) (ALenum pname); +typedef ALint (ALAPIENTRY *alGetIntegerPROC) (ALenum pname); +typedef ALboolean (ALAPIENTRY *alGetBooleanPROC) (ALenum pname); +typedef ALboolean (ALAPIENTRY *alIsEnabledPROC) (ALenum capability); +typedef ALvoid (ALAPIENTRY *alDisablePROC) (ALenum capability); +typedef ALvoid (ALAPIENTRY *alEnablePROC) (ALint capability); -alGetStringPROC alGetString = NULL; -alGetErrorPROC alGetError = NULL; - -static alIsExtensionPresentPROC alIsExtensionPresent; -static alEnablePROC alEnable; -static alDisablePROC alDisable; -static alIsEnabledPROC alIsEnabled; -//static alHintPROC alHint; -static alGetBooleanPROC alGetBoolean; -static alGetIntegerPROC alGetInteger; -static alGetFloatPROC alGetFloat; -//static alGetBooleanvPROC alGetBooleanv; -static alGetIntegervPROC alGetIntegerv; -static alGetFloatvPROC alGetFloatv; -static alGetEnumValuePROC alGetEnumValue; -static alListeneriPROC alListeneri; -static alListenerfPROC alListenerf; -static alListener3fPROC alListener3f; -static alListenerfvPROC alListenerfv; -static alGetListeneriPROC alGetListeneri; -static alGetListenerfPROC alGetListenerf; -//static alGetListener3fPROC alGetListener3f; -static alGetListenerfvPROC alGetListenerfv; -static alGenSourcesPROC alGenSources; -static alDeleteSourcesPROC alDeleteSources; -static alIsSourcePROC alIsSource; -static alSourceiPROC alSourcei; -static alSourcefPROC alSourcef; +static alDopplerVelocityPROC alDopplerVelocity; +static alDopplerFactorPROC alDopplerFactor; +static alDistanceModelPROC alDistanceModel; +static alSourceUnqueueBuffersPROC alSourceUnqueueBuffers; +static alSourceQueueBuffersPROC alSourceQueueBuffers; +static alGetBufferfPROC alGetBufferf; +static alGetBufferiPROC alGetBufferi; +static alBufferDataPROC alBufferData; +static alIsBufferPROC alIsBuffer; +static alDeleteBuffersPROC alDeleteBuffers; +static alGenBuffersPROC alGenBuffers; +static alSourceRewindPROC alSourceRewind; +static alSourceStopPROC alSourceStop; +static alSourcePausePROC alSourcePause; +static alSourcePlayPROC alSourcePlay; +static alSourceRewindvPROC alSourceRewindv; +static alSourceStopvPROC alSourceStopv; +static alSourcePausevPROC alSourcePausev; +static alSourcePlayvPROC alSourcePlayv; +static alGetSourcefvPROC alGetSourcefv; +static alGetSourcefPROC alGetSourcef; +static alGetSourceiPROC alGetSourcei; static alSource3fPROC alSource3f; static alSourcefvPROC alSourcefv; -static alGetSourceiPROC alGetSourcei; -static alGetSourcefPROC alGetSourcef; -//static alGetSource3fPROC alGetSource3f; -static alGetSourcefvPROC alGetSourcefv; -static alSourcePlayvPROC alSourcePlayv; -static alSourcePausevPROC alSourcePausev; -static alSourceStopvPROC alSourceStopv; -static alSourceRewindvPROC alSourceRewindv; -static alSourcePlayPROC alSourcePlay; -static alSourcePausePROC alSourcePause; -static alSourceStopPROC alSourceStop; -static alSourceRewindPROC alSourceRewind; -static alGenBuffersPROC alGenBuffers; -static alDeleteBuffersPROC alDeleteBuffers; -static alIsBufferPROC alIsBuffer; -static alBufferDataPROC alBufferData; -static alGetBufferiPROC alGetBufferi; -static alGetBufferfPROC alGetBufferf; -static alSourceQueueBuffersPROC alSourceQueueBuffers; -static alSourceUnqueueBuffersPROC alSourceUnqueueBuffers; -static alDistanceModelPROC alDistanceModel; -static alDopplerFactorPROC alDopplerFactor; -static alDopplerVelocityPROC alDopplerVelocity; +static alSourcefPROC alSourcef; +static alSourceiPROC alSourcei; +static alIsSourcePROC alIsSource; +static alDeleteSourcesPROC alDeleteSources; +static alGenSourcesPROC alGenSources; +static alGetListenerfvPROC alGetListenerfv; +static alGetListenerfPROC alGetListenerf; +static alGetListeneriPROC alGetListeneri; +static alListener3fPROC alListener3f; +static alListenerfvPROC alListenerfv; +static alListenerfPROC alListenerf; +static alListeneriPROC alListeneri; +static alGetEnumValuePROC alGetEnumValue; +static alIsExtensionPresentPROC alIsExtensionPresent; +static alGetErrorPROC alGetError; +static alGetStringPROC alGetString; +static alGetFloatvPROC alGetFloatv; +static alGetIntegervPROC alGetIntegerv; +static alGetFloatPROC alGetFloat; +static alGetIntegerPROC alGetInteger; +static alGetBooleanPROC alGetBoolean; +static alIsEnabledPROC alIsEnabled; +static alDisablePROC alDisable; +static alEnablePROC alEnable; -/** - * This function enables a feature of the OpenAL driver. - * - * C Specification: - * ALvoid alEnable(ALenum capability); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alEnable (JNIEnv *env, jclass clazz, jint capability) { - alEnable((ALenum) capability); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalDopplerVelocity(JNIEnv *env, jclass clazz, jfloat value) { + alDopplerVelocity(value); } -/** - * This function disables a feature of the OpenAL driver. - * - * C Specification: - * ALvoid alDisable(ALenum capability); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alDisable (JNIEnv *env, jclass clazz, jint capability) { - alDisable((ALenum) capability); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalDopplerFactor(JNIEnv *env, jclass clazz, jfloat value) { + alDopplerFactor(value); } -/** - * This function returns a boolean indicating if a specific feature is enabled in the OpenAL driver. - * - * C Specification: - * Alboolean alIsEnabled(ALenum capability); - */ -static jboolean JNICALL Java_org_lwjgl_openal_AL10_alIsEnabled (JNIEnv *env, jclass clazz, jint capability) { - jboolean result = (jboolean) alIsEnabled((ALenum) capability); - - CHECK_AL_ERROR - return result; +static void JNICALL Java_org_lwjgl_openal_AL10_nalDistanceModel(JNIEnv *env, jclass clazz, jint value) { + alDistanceModel(value); } -/** - * This function Enables a feature of the OpenAL driver. - * - * C Specification - * ALvoid alHint(ALenum target, ALenum mode); - */ -/*static void JNICALL Java_org_lwjgl_openal_AL10_alHint (JNIEnv *env, jclass clazz, jint target, jint mode) { - alHint((ALint)target, (ALint)mode); - //cannot link with above statement - return; -}*/ - - -/** - * This function returns a boolean OpenAL state. - * - * C Specification: - * Alboolean alGetBoolean(ALenum pname); - */ -static jboolean JNICALL Java_org_lwjgl_openal_AL10_alGetBoolean (JNIEnv *env, jclass clazz, jint pname) { - jboolean result = (jboolean) alGetBoolean((ALenum) pname); - - CHECK_AL_ERROR - return result; +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourceUnqueueBuffers(JNIEnv *env, jclass clazz, jint source, jint n, jobject buffers, jint buffers_position) { + ALuint *buffers_address = ((ALuint *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + alSourceUnqueueBuffers(source, n, buffers_address); } -/** - * This function returns an integer OpenAL state. - * - * C Specification: - * Alint alGetInteger(ALenum pname); - */ -static jint JNICALL Java_org_lwjgl_openal_AL10_alGetInteger (JNIEnv *env, jclass clazz, jint pname) { - jint result = (jint) alGetInteger((ALenum) pname); - - CHECK_AL_ERROR - return result; +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourceQueueBuffers(JNIEnv *env, jclass clazz, jint source, jint n, jobject buffers, jint buffers_position) { + ALuint *buffers_address = ((ALuint *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + alSourceQueueBuffers(source, n, buffers_address); } -/** - * This function retrieves a integer OpenAL state. - * - * C Specification: - * ALvoid nalGetIntegerv(ALenum pname,ALint *data); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalGetIntegerv (JNIEnv *env, jclass clazz, jint pname, jobject data, int offset) { - alGetIntegerv((ALenum) pname, offset + (ALint*) (*env)->GetDirectBufferAddress(env, data)); - CHECK_AL_ERROR +static jfloat JNICALL Java_org_lwjgl_openal_AL10_nalGetBufferf(JNIEnv *env, jclass clazz, jint buffer, jint pname) { + ALfloat __result; + alGetBufferf(buffer, pname, &__result); + return __result; } -/** - * This function returns a floating point OpenAL state. - * - * C Specification: - * ALfloat alGetFloat(ALenum pname); - */ -static jfloat JNICALL Java_org_lwjgl_openal_AL10_alGetFloat (JNIEnv *env, jclass clazz, jint pname) { - jfloat result = (jfloat) alGetFloat((ALenum) pname); - - CHECK_AL_ERROR - return result; +static jint JNICALL Java_org_lwjgl_openal_AL10_nalGetBufferi(JNIEnv *env, jclass clazz, jint buffer, jint pname) { + ALint __result; + alGetBufferi(buffer, pname, &__result); + return __result; } -/** - * This function retrieves a floating point OpenAL state. - * - * C Specification: - * ALvoid alGetFloatv(ALenum pname,ALfloat *data); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalGetFloatv (JNIEnv *env, jclass clazz, jint pname, jobject data, int offset) { - alGetFloatv((ALenum) pname, offset + (ALfloat*) (*env)->GetDirectBufferAddress(env, data)); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalBufferData(JNIEnv *env, jclass clazz, jint buffer, jint format, jobject data, jint data_position, jint size, jint freq) { + ALvoid *data_address = ((ALvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + alBufferData(buffer, format, data_address, size, freq); } -/** - * This function retrieves an OpenAL string property. - * - * C Specification: - * ALubyte * alGetString(ALenum pname); - */ -static jstring JNICALL Java_org_lwjgl_openal_AL10_alGetString (JNIEnv *env, jclass clazz, jint param) { - jstring string = NewStringNative(env, (char*) alGetString(param)); - CHECK_AL_ERROR - return string; +static jboolean JNICALL Java_org_lwjgl_openal_AL10_nalIsBuffer(JNIEnv *env, jclass clazz, jint buffer) { + ALboolean __result = alIsBuffer(buffer); + return __result; } -/** - * This function returns the current error state and then clears the error state. - * - * C Specification: - * ALenum alGetError(ALvoid); - */ -static jint JNICALL Java_org_lwjgl_openal_AL10_alGetError (JNIEnv *env, jclass clazz) { - jint result = (jint) alGetError(); - - // Don't think we should be checking for errors here..? -// CHECK_AL_ERROR - return result; +static void JNICALL Java_org_lwjgl_openal_AL10_nalDeleteBuffers(JNIEnv *env, jclass clazz, jint n, jobject buffers, jint buffers_position) { + ALuint *buffers_address = ((ALuint *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + alDeleteBuffers(n, buffers_address); } -/** - * This function tests if a specific extension is available for the OpenAL driver. - * - * C Specification: - * ALboolean alIsExtensionPresent(ALubyte *extName); - */ -static jboolean JNICALL Java_org_lwjgl_openal_AL10_alIsExtensionPresent (JNIEnv *env, jclass clazz, jstring fname) { - ALubyte* functionname = (ALubyte*) GetStringNativeChars(env, fname); - jboolean result = (jboolean) alIsExtensionPresent(functionname); - free(functionname); - - CHECK_AL_ERROR - return result; +static void JNICALL Java_org_lwjgl_openal_AL10_nalGenBuffers(JNIEnv *env, jclass clazz, jint n, jobject buffers, jint buffers_position) { + ALuint *buffers_address = ((ALuint *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + alGenBuffers(n, buffers_address); } -/** - * This function returns the enumeration value of an OpenAL enum described by a string. - * - * C Specification: - * ALenum alGetEnumValue(ALubyte *enumName); - */ -static jint JNICALL Java_org_lwjgl_openal_AL10_alGetEnumValue (JNIEnv *env, jclass clazz, jstring ename) { - ALubyte* functionname = (ALubyte*) GetStringNativeChars(env, ename); - jint result = (jint) alGetEnumValue(functionname); - free(functionname); - - CHECK_AL_ERROR - return result; +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourceRewind(JNIEnv *env, jclass clazz, jint source) { + alSourceRewind(source); } -/** - * This function sets an integer property of the listener. - * - * C Specification: - * ALvoid alListeneri(ALenum pname,ALint value); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alListeneri (JNIEnv *env, jclass clazz, jint pname, jint value) { - alListeneri((ALenum) pname, (ALint) value); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourceStop(JNIEnv *env, jclass clazz, jint source) { + alSourceStop(source); } -/** - * This function sets a floating point property for the listener. - * - * C Specification: - * ALvoid alListenerf(ALenum pname,ALfloat value); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alListenerf (JNIEnv *env, jclass clazz, jint pname, jfloat value) { - alListenerf((ALenum) pname, (ALfloat) value); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourcePause(JNIEnv *env, jclass clazz, jint source) { + alSourcePause(source); } -/* - * Class: org_lwjgl_openal_AL10 - * Method: nalListenerf - * Signature: (ILjava/nio/FloatBuffer;I)V - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalListenerfv (JNIEnv *env, jclass clazz, jint pname, jobject values, jint offset) { - alListenerfv((ALenum) pname, offset + (ALfloat*) (*env)->GetDirectBufferAddress(env, values)); +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourcePlay(JNIEnv *env, jclass clazz, jint source) { + alSourcePlay(source); } -/** - * This function sets a floating point property for the listener. - * - * C Specification: - * ALvoid alListener3f(ALenum pname,ALfloat v1,ALfloat v2,ALfloat v3); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alListener3f (JNIEnv *env, jclass clazz, jint pname, jfloat v1, jfloat v2, jfloat v3) { - alListener3f((ALenum) pname, (ALfloat) v1, (ALfloat) v2, (ALfloat) v3); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourceRewindv(JNIEnv *env, jclass clazz, jint n, jobject sources, jint sources_position) { + ALuint *sources_address = ((ALuint *)(*env)->GetDirectBufferAddress(env, sources)) + sources_position; + alSourceRewindv(n, sources_address); } - -/** - * This function retrieves an integer property of the listener. - * - * C Specification: - * ALvoid alGetListeneri(ALenum pname,ALint *value); - */ -static jint JNICALL Java_org_lwjgl_openal_AL10_alGetListeneri (JNIEnv *env, jclass clazz, jint pname) { - ALint value = 0; - alGetListeneri((ALenum) pname, &value); - CHECK_AL_ERROR - return value; +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourceStopv(JNIEnv *env, jclass clazz, jint n, jobject sources, jint sources_position) { + ALuint *sources_address = ((ALuint *)(*env)->GetDirectBufferAddress(env, sources)) + sources_position; + alSourceStopv(n, sources_address); } -/** - * This function retrieves a floating point property of the listener. - * - * C Specification: - * ALvoid alGetListenerf(ALenum pname,ALfloat *value); - */ -static jfloat JNICALL Java_org_lwjgl_openal_AL10_alGetListenerf (JNIEnv *env, jclass clazz, jint pname) { - ALfloat value = 0.0f; - alGetListenerf((ALenum) pname, &value); - CHECK_AL_ERROR - return value; +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourcePausev(JNIEnv *env, jclass clazz, jint n, jobject sources, jint sources_position) { + ALuint *sources_address = ((ALuint *)(*env)->GetDirectBufferAddress(env, sources)) + sources_position; + alSourcePausev(n, sources_address); } -/** - * This function retrieves a floating point-vector property of the listener. - * - * C Specification: - * ALvoid alGetListenerfv(ALenum pname,ALfloat *values); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalGetListenerfv (JNIEnv *env, jclass clazz, jint pname, jobject values, jint offset) { - alGetListenerfv((ALenum) pname, offset + (ALfloat*) (*env)->GetDirectBufferAddress(env, values)); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourcePlayv(JNIEnv *env, jclass clazz, jint n, jobject sources, jint sources_position) { + ALuint *sources_address = ((ALuint *)(*env)->GetDirectBufferAddress(env, sources)) + sources_position; + alSourcePlayv(n, sources_address); } -/** - * This function generates one or more sources. - * - * C Specification: - * ALvoid alGenSources(ALsizei n,ALuint *sources); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalGenSources (JNIEnv *env, jclass clazz, jint n, jobject sources, jint offset) { - alGenSources(n, offset + (ALuint*) (*env)->GetDirectBufferAddress(env, sources)); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalGetSourcefv(JNIEnv *env, jclass clazz, jint source, jint pname, jobject floatdata, jint floatdata_position) { + ALfloat *floatdata_address = ((ALfloat *)(*env)->GetDirectBufferAddress(env, floatdata)) + floatdata_position; + alGetSourcefv(source, pname, floatdata_address); } -/** - * This function deletes one or more sources. - * - * C Specification: - * ALvoid alDeleteSources(ALsizei n,ALuint *sources); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalDeleteSources (JNIEnv *env, jclass clazz, jint n, jobject sources, jint offset) { - alDeleteSources(n, offset + (ALuint*) (*env)->GetDirectBufferAddress(env, sources)); - CHECK_AL_ERROR +static jfloat JNICALL Java_org_lwjgl_openal_AL10_nalGetSourcef(JNIEnv *env, jclass clazz, jint source, jint pname) { + ALfloat __result; + alGetSourcef(source, pname, &__result); + return __result; } -/** - * This function tests if a source name is valid. - * - * C Specification: - * Alboolean alIsSource(ALuint source); - */ -static jboolean JNICALL Java_org_lwjgl_openal_AL10_alIsSource (JNIEnv *env, jclass clazz, jint source) { - jboolean result = (jboolean) alIsSource((ALuint) source); - - CHECK_AL_ERROR - return result; +static jint JNICALL Java_org_lwjgl_openal_AL10_nalGetSourcei(JNIEnv *env, jclass clazz, jint source, jint pname) { + ALint __result; + alGetSourcei(source, pname, &__result); + return __result; } -/** - * This function sets an integer property of a source. - * - * C Specification: - * ALvoid alSourcei(ALuint source,ALenum pname,ALint value); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alSourcei (JNIEnv *env, jclass clazz, jint source, jint pname, jint value) { - alSourcei((ALuint) source, (ALenum) pname, (ALint) value); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalSource3f(JNIEnv *env, jclass clazz, jint source, jint pname, jfloat v1, jfloat v2, jfloat v3) { + alSource3f(source, pname, v1, v2, v3); } -/** - * This function sets a floating point property of a source. - * - * C Specification: - * ALvoid alSourcef(ALuint source,ALenum pname,ALfloat value); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alSourcef (JNIEnv *env, jclass clazz, jint source, jint pname, jfloat value) { - alSourcef((ALuint) source, (ALenum) pname, (ALfloat) value); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourcefv(JNIEnv *env, jclass clazz, jint source, jint pname, jobject value, jint value_position) { + ALfloat *value_address = ((ALfloat *)(*env)->GetDirectBufferAddress(env, value)) + value_position; + alSourcefv(source, pname, value_address); } -/* - * Class: org_lwjgl_openal_AL10 - * Method: nalSourcefv - * Signature: (IILjava/nio/FloatBuffer;I)V - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalSourcefv (JNIEnv *env, jclass clazz, jint source, jint pname, jobject values, jint offset) { - alSourcefv((ALuint) source, (ALenum) pname, offset + (ALfloat*) (*env)->GetDirectBufferAddress(env, values)); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourcef(JNIEnv *env, jclass clazz, jint source, jint pname, jfloat value) { + alSourcef(source, pname, value); } - -/** - * This function sets a source property requiring three floating point values. - * C Specification: - * ALvoid alSource3f(ALuint source,ALenum pname,ALfloat v1,ALfloat v2,ALfloat v3); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alSource3f (JNIEnv *env, jclass clazz, jint source, jint pname, jfloat v1, jfloat v2, jfloat v3) { - alSource3f((ALuint) source, (ALenum) pname, (ALfloat) v1, (ALfloat) v2, (ALfloat) v3); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalSourcei(JNIEnv *env, jclass clazz, jint source, jint pname, jint value) { + alSourcei(source, pname, value); } - -/** - * This function retrieves an integer property of a source. - * C Specification: - * ALvoid alGetSourcei(ALuint source,ALenum pname,ALint *value); - */ -static jint JNICALL Java_org_lwjgl_openal_AL10_alGetSourcei (JNIEnv *env, jclass clazz, jint source, jint pname) { - ALint value = 0; - alGetSourcei((ALuint) source, (ALenum) pname, &value); - CHECK_AL_ERROR - return value; +static jboolean JNICALL Java_org_lwjgl_openal_AL10_nalIsSource(JNIEnv *env, jclass clazz, jint id) { + ALboolean __result = alIsSource(id); + return __result; } -/** - * This function retrieves a floating point property of a source. - * - * C Specification: - * ALvoid alGetSourcef(ALuint source,ALenum pname,ALfloat *value); - */ -static jfloat JNICALL Java_org_lwjgl_openal_AL10_alGetSourcef (JNIEnv *env, jclass clazz, jint source, jint pname) { - ALfloat value = 0.0f; - alGetSourcef((ALuint) source, (ALenum) pname, &value); - CHECK_AL_ERROR - return value; +static void JNICALL Java_org_lwjgl_openal_AL10_nalDeleteSources(JNIEnv *env, jclass clazz, jint n, jobject sources, jint sources_position) { + ALuint *sources_address = ((ALuint *)(*env)->GetDirectBufferAddress(env, sources)) + sources_position; + alDeleteSources(n, sources_address); } -/** - * This function retrieves a floating point-vector property of a source. - * - * C Specification: - * ALvoid alGetSourcefv(ALuint source,ALenum pname,ALfloat *values); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalGetSourcefv (JNIEnv *env, jclass clazz, jint source, jint pname, jobject values, jint offset) { - alGetSourcefv((ALuint) source, (ALenum) pname, offset + (ALfloat*) (*env)->GetDirectBufferAddress(env, values)); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalGenSources(JNIEnv *env, jclass clazz, jint n, jobject sources, jint sources_position) { + ALuint *sources_address = ((ALuint *)(*env)->GetDirectBufferAddress(env, sources)) + sources_position; + alGenSources(n, sources_address); } -/** - * This function plays a set of sources. - * - * C Specification: - * ALvoid alSourcePlayv(ALsizei n,ALuint *sources); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalSourcePlayv (JNIEnv *env, jclass clazz, jint n, jobject sources, jint offset) { - alSourcePlayv(n, offset + (ALuint*) (*env)->GetDirectBufferAddress(env, sources)); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalGetListenerfv(JNIEnv *env, jclass clazz, jint pname, jobject floatdata, jint floatdata_position) { + ALfloat *floatdata_address = ((ALfloat *)(*env)->GetDirectBufferAddress(env, floatdata)) + floatdata_position; + alGetListenerfv(pname, floatdata_address); } -/** - * This function pauses a set of sources. - * - * C Specification: - * ALvoid alSourcePausev(ALsizei n,ALuint *sources); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalSourcePausev (JNIEnv *env, jclass clazz, jint n, jobject sources, jint offset) { - alSourcePausev(n, offset + (ALuint*) (*env)->GetDirectBufferAddress(env, sources)); - CHECK_AL_ERROR +static jfloat JNICALL Java_org_lwjgl_openal_AL10_nalGetListenerf(JNIEnv *env, jclass clazz, jint pname) { + ALfloat __result = alGetListenerf(pname); + return __result; } -/** - * This function stops a set of sources. - * - * C Specification: - * ALvoid alSourceStopv(ALsizei n,ALuint *sources); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalSourceStopv (JNIEnv *env, jclass clazz, jint n, jobject sources, jint offset) { - alSourceStopv(n, offset + (ALuint*) (*env)->GetDirectBufferAddress(env, sources)); - CHECK_AL_ERROR +static jint JNICALL Java_org_lwjgl_openal_AL10_nalGetListeneri(JNIEnv *env, jclass clazz, jint pname) { + ALint __result = alGetListeneri(pname); + return __result; } -/** - * This function stops a set of sources and sets all their states to AL_INITIAL. - * - * C Specification: - * ALvoid alSourceRewindv(ALsizei n,ALuint *sources); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalSourceRewindv (JNIEnv *env, jclass clazz, jint n, jobject sources, jint offset) { - alSourceRewindv(n, offset + (ALuint*) (*env)->GetDirectBufferAddress(env, sources)); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalListener3f(JNIEnv *env, jclass clazz, jint pname, jfloat v1, jfloat v2, jfloat v3) { + alListener3f(pname, v1, v2, v3); } -/** - * This function plays a source. - * - * C Specification: - * ALvoid alSourcePlay(ALuint source); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alSourcePlay (JNIEnv *env, jclass clazz, jint source) { - alSourcePlay((ALuint) source); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalListenerfv(JNIEnv *env, jclass clazz, jint pname, jobject value, jint value_position) { + ALfloat *value_address = ((ALfloat *)(*env)->GetDirectBufferAddress(env, value)) + value_position; + alListenerfv(pname, value_address); } -/* - * This function pauses a source. - * - * C Specification: - * ALvoid alSourcePause(ALuint source); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alSourcePause (JNIEnv *env, jclass clazz, jint source) { - alSourcePause((ALuint) source); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalListenerf(JNIEnv *env, jclass clazz, jint pname, jfloat value) { + alListenerf(pname, value); } -/** - * This function stops a source. - * - * C Specification: - * ALvoid alSourceStop(ALuint source); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alSourceStop (JNIEnv *env, jclass clazz, jint source) { - alSourceStop((ALuint) source); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalListeneri(JNIEnv *env, jclass clazz, jint pname, jint value) { + alListeneri(pname, value); } -/** - * This function stops the source and sets its state to AL_INITIAL. - * - * C Specification: - * ALvoid alSourceRewind(ALuint source); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alSourceRewind (JNIEnv *env, jclass clazz, jint source) { - alSourceRewind((ALuint) source); - CHECK_AL_ERROR +static jint JNICALL Java_org_lwjgl_openal_AL10_nalGetEnumValue(JNIEnv *env, jclass clazz, jobject ename) { + ALubyte *ename_address = ((ALubyte *)GetStringNativeChars(env, ename)); + ALenum __result = alGetEnumValue(ename_address); + free(ename_address); + return __result; } -/** - * This function generates one or more buffers. - * - * C Specification: - * ALvoid alGenBuffers(ALsizei n,ALuint *buffers); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalGenBuffers (JNIEnv *env, jclass clazz, jint n, jobject buffers, jint offset) { - alGenBuffers(n, offset + (ALuint*) (*env)->GetDirectBufferAddress(env, buffers)); - CHECK_AL_ERROR +static jboolean JNICALL Java_org_lwjgl_openal_AL10_nalIsExtensionPresent(JNIEnv *env, jclass clazz, jobject fname) { + ALubyte *fname_address = ((ALubyte *)GetStringNativeChars(env, fname)); + ALboolean __result = alIsExtensionPresent(fname_address); + free(fname_address); + return __result; } -/** - * This function deletes one or more buffers. - * - * C Specification: - * ALvoid alDeleteBuffers(ALsizei n,ALuint *buffers); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalDeleteBuffers (JNIEnv *env, jclass clazz, jint n, jobject buffers, jint offset) { - alDeleteBuffers(n, offset + (ALuint*) (*env)->GetDirectBufferAddress(env, buffers)); - CHECK_AL_ERROR +static jint JNICALL Java_org_lwjgl_openal_AL10_alGetError(JNIEnv *env, jclass clazz) { + ALenum __result = alGetError(); + return __result; } -/** - * This function tests if a buffer name is valid. - * - * C Specification: - * Alboolean alIsBuffer(ALuint buffer); - */ -static jboolean JNICALL Java_org_lwjgl_openal_AL10_alIsBuffer (JNIEnv *env, jclass clazz, jint buffer) { - jboolean result = (jboolean) alIsBuffer((ALuint) buffer); - - CHECK_AL_ERROR - return result; +static jobject JNICALL Java_org_lwjgl_openal_AL10_alGetString(JNIEnv *env, jclass clazz, jint pname) { + ALubyte * __result = alGetString(pname); + return NewStringNative(env, __result); } -/** - * This function fills a buffer with audio data. - * - * C Specification: - * ALvoid alBufferData(ALuint buffer,ALenum format,ALvoid *data,ALsizei size,ALsizei freq); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalBufferData (JNIEnv *env, jclass clazz, jint buffer, jint format, jobject data, jint offset, jint size, jint freq) { - alBufferData(buffer, format, (void*) (offset + (ALubyte *)(*env)->GetDirectBufferAddress(env, data)), size, freq); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalGetFloatv(JNIEnv *env, jclass clazz, jint pname, jobject data, jint data_position) { + ALfloat *data_address = ((ALfloat *)(*env)->GetDirectBufferAddress(env, data)) + data_position; + alGetFloatv(pname, data_address); } -/** - * This function retrieves an integer property of a buffer. - * - * C Specification: - * ALvoid alGetBufferi(ALuint buffer,ALenum pname,ALint *value); - */ -static jint JNICALL Java_org_lwjgl_openal_AL10_alGetBufferi (JNIEnv *env, jclass clazz, jint buffer, jint pname) { - ALint value = 0; - alGetBufferi((ALuint) buffer, (ALenum) pname, &value); - CHECK_AL_ERROR - return value; +static void JNICALL Java_org_lwjgl_openal_AL10_nalGetIntegerv(JNIEnv *env, jclass clazz, jint pname, jobject data, jint data_position) { + ALint *data_address = ((ALint *)(*env)->GetDirectBufferAddress(env, data)) + data_position; + alGetIntegerv(pname, data_address); } -/** - * This function retrieves a floating point property of a buffer. - * - * C Specification: - * ALvoid alGetBufferf(ALuint buffer,ALenum pname,ALfloat *value); - */ -static jfloat JNICALL Java_org_lwjgl_openal_AL10_alGetBufferf (JNIEnv *env, jclass clazz, jint buffer, jint pname) { - ALfloat value = 0.0f; - alGetBufferf((ALuint) buffer, (ALenum) pname, &value); - CHECK_AL_ERROR - return value; +static jfloat JNICALL Java_org_lwjgl_openal_AL10_nalGetFloat(JNIEnv *env, jclass clazz, jint pname) { + ALfloat __result = alGetFloat(pname); + return __result; } -/** - * This function queues a set of buffers on a source. - * - * C Specification: - * ALvoid alSourceQueueBuffers( ALuint source, ALsizei n, ALuint* buffers ); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalSourceQueueBuffers (JNIEnv *env, jclass clazz, jint source, jint n, jobject buffers, jint offset) { - alSourceQueueBuffers((ALuint) source, (ALsizei) n, offset + (ALuint*) (*env)->GetDirectBufferAddress(env, buffers)); - CHECK_AL_ERROR +static jint JNICALL Java_org_lwjgl_openal_AL10_nalGetInteger(JNIEnv *env, jclass clazz, jint pname) { + ALint __result = alGetInteger(pname); + return __result; } -/** - * This function unqueues a set of buffers attached to a source. - * - * C Specification: - * ALvoid alSourceUnqueueBuffers( ALuint source, ALsizei n, ALuint* buffers ); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_nalSourceUnqueueBuffers (JNIEnv *env, jclass clazz, jint source, jint n, jobject buffers, jint offset) { - alSourceUnqueueBuffers((ALuint) source, (ALsizei) n, offset + (ALuint*) (*env)->GetDirectBufferAddress(env, buffers)); - CHECK_AL_ERROR +static jboolean JNICALL Java_org_lwjgl_openal_AL10_nalGetBoolean(JNIEnv *env, jclass clazz, jint pname) { + ALboolean __result = alGetBoolean(pname); + return __result; } -/** - * This function selects the OpenAL distance model. - * - * C Specification: - * ALvoid alDistanceModel( ALenum value ); - */ - -static void JNICALL Java_org_lwjgl_openal_AL10_alDistanceModel (JNIEnv *env, jclass clazz, jint value) { - alDistanceModel((ALenum) value); - CHECK_AL_ERROR +static jboolean JNICALL Java_org_lwjgl_openal_AL10_nalIsEnabled(JNIEnv *env, jclass clazz, jint capability) { + ALboolean __result = alIsEnabled(capability); + return __result; } -/** - * This function selects the OpenAL Doppler factor value. - * - * C Specification: - * ALvoid alDopplerFactor( ALfloat value ); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alDopplerFactor (JNIEnv *env, jclass clazz, jfloat value) { - alDopplerFactor((ALfloat) value); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalDisable(JNIEnv *env, jclass clazz, jint capability) { + alDisable(capability); } -/** - * This function selects the OpenAL Doppler velocity value. - * - * C Specification: - * ALvoid alDopplerVelocity( ALfloat value ); - */ -static void JNICALL Java_org_lwjgl_openal_AL10_alDopplerVelocity (JNIEnv *env, jclass clazz, jfloat value) { - alDopplerVelocity((ALfloat) value); - CHECK_AL_ERROR +static void JNICALL Java_org_lwjgl_openal_AL10_nalEnable(JNIEnv *env, jclass clazz, jint capability) { + alEnable(capability); } -/** - * Loads the basic OpenAL functions - * - * @return true if all methods were loaded, false if one of the methods could not be loaded - */ -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_openal_AL10_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"alEnable", "(I)V", (void*)&Java_org_lwjgl_openal_AL10_alEnable, "alEnable", (void*)&alEnable}, - {"alDisable", "(I)V", (void*)&Java_org_lwjgl_openal_AL10_alDisable, "alDisable", (void*)&alDisable}, - {"alIsEnabled", "(I)Z", (void*)&Java_org_lwjgl_openal_AL10_alIsEnabled, "alIsEnabled", (void*)&alIsEnabled}, -// {"alHint", "(II)V", (void*)Java_org_lwjgl_openal_AL10_alHint, "alHint", (void*)alHint}, - {"alGetBoolean", "(I)Z", (void*)&Java_org_lwjgl_openal_AL10_alGetBoolean, "alGetBoolean", (void*)&alGetBoolean}, - {"alGetInteger", "(I)I", (void*)&Java_org_lwjgl_openal_AL10_alGetInteger, "alGetInteger", (void*)&alGetInteger}, - {"alGetFloat", "(I)F", (void*)&Java_org_lwjgl_openal_AL10_alGetFloat, "alGetFloat", (void*)&alGetFloat}, - {"nalGetIntegerv", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalGetIntegerv, "alGetIntegerv", (void*)&alGetIntegerv}, - {"nalGetFloatv", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalGetFloatv, "alGetFloatv", (void*)&alGetFloatv}, - {"alGetString", "(I)Ljava/lang/String;", (void*)&Java_org_lwjgl_openal_AL10_alGetString, "alGetString", (void*)&alGetString}, - {"alGetError", "()I", (void*)&Java_org_lwjgl_openal_AL10_alGetError, "alGetError", (void*)&alGetError}, - {"alIsExtensionPresent", "(Ljava/lang/String;)Z", (void*)&Java_org_lwjgl_openal_AL10_alIsExtensionPresent, "alIsExtensionPresent", (void*)&alIsExtensionPresent}, - {"alGetEnumValue", "(Ljava/lang/String;)I", (void*)&Java_org_lwjgl_openal_AL10_alGetEnumValue, "alGetEnumValue", (void*)&alGetEnumValue}, - {"alListeneri", "(II)V", (void*)&Java_org_lwjgl_openal_AL10_alListeneri, "alListeneri", (void*)&alListeneri}, - {"alListenerf", "(IF)V", (void*)&Java_org_lwjgl_openal_AL10_alListenerf, "alListenerf", (void*)&alListenerf}, - {"nalListenerfv", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalListenerfv, "alListenerfv", (void*)&alListenerfv}, - {"alListener3f", "(IFFF)V", (void*)&Java_org_lwjgl_openal_AL10_alListener3f, "alListener3f", (void*)&alListener3f}, - {"alGetListeneri", "(I)I", (void*)&Java_org_lwjgl_openal_AL10_alGetListeneri, "alGetListeneri", (void*)&alGetListeneri}, - {"alGetListenerf", "(I)F", (void*)&Java_org_lwjgl_openal_AL10_alGetListenerf, "alGetListenerf", (void*)&alGetListenerf}, - {"nalGetListenerfv", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalGetListenerfv, "alGetListenerfv", (void*)&alGetListenerfv}, - {"nalGenSources", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalGenSources, "alGenSources", (void*)&alGenSources}, - {"nalDeleteSources", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalDeleteSources, "alDeleteSources", (void*)&alDeleteSources}, - {"alIsSource", "(I)Z", (void*)&Java_org_lwjgl_openal_AL10_alIsSource, "alIsSource", (void*)&alIsSource}, - {"alSourcei", "(III)V", (void*)&Java_org_lwjgl_openal_AL10_alSourcei, "alSourcei", (void*)&alSourcei}, - {"alSourcef", "(IIF)V", (void*)&Java_org_lwjgl_openal_AL10_alSourcef, "alSourcef", (void*)&alSourcef}, - {"nalSourcefv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalSourcefv, "alSourcefv", (void*)&alSourcefv}, - {"alSource3f", "(IIFFF)V", (void*)&Java_org_lwjgl_openal_AL10_alSource3f, "alSource3f", (void*)&alSource3f}, - {"alGetSourcei", "(II)I", (void*)&Java_org_lwjgl_openal_AL10_alGetSourcei, "alGetSourcei", (void*)&alGetSourcei}, - {"alGetSourcef", "(II)F", (void*)&Java_org_lwjgl_openal_AL10_alGetSourcef, "alGetSourcef", (void*)&alGetSourcef}, - {"nalGetSourcefv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalGetSourcefv, "alGetSourcefv", (void*)&alGetSourcefv}, - {"alSourcePlay", "(I)V", (void*)&Java_org_lwjgl_openal_AL10_alSourcePlay, "alSourcePlay", (void*)&alSourcePlay}, - {"nalSourcePlayv", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalSourcePlayv, "alSourcePlayv", (void*)&alSourcePlayv}, - {"alSourcePause", "(I)V", (void*)&Java_org_lwjgl_openal_AL10_alSourcePause, "alSourcePause", (void*)&alSourcePause}, - {"nalSourcePausev", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalSourcePausev, "alSourcePausev", (void*)&alSourcePausev}, - {"alSourceStop", "(I)V", (void*)&Java_org_lwjgl_openal_AL10_alSourceStop, "alSourceStop", (void*)&alSourceStop}, - {"nalSourceStopv", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalSourceStopv, "alSourceStopv", (void*)&alSourceStopv}, - {"alSourceRewind", "(I)V", (void*)&Java_org_lwjgl_openal_AL10_alSourceRewind, "alSourceRewind", (void*)&alSourceRewind}, - {"nalSourceRewindv", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalSourceRewindv, "alSourceRewindv", (void*)&alSourceRewindv}, - {"nalGenBuffers", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalGenBuffers, "alGenBuffers", (void*)&alGenBuffers}, - {"nalDeleteBuffers", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalDeleteBuffers, "alDeleteBuffers", (void*)&alDeleteBuffers}, - {"alIsBuffer", "(I)Z", (void*)&Java_org_lwjgl_openal_AL10_alIsBuffer, "alIsBuffer", (void*)&alIsBuffer}, - {"nalBufferData", "(IILjava/nio/Buffer;III)V", (void*)&Java_org_lwjgl_openal_AL10_nalBufferData, "alBufferData", (void*)&alBufferData}, - {"alGetBufferi", "(II)I", (void*)&Java_org_lwjgl_openal_AL10_alGetBufferi, "alGetBufferi", (void*)&alGetBufferi}, - {"alGetBufferf", "(II)F", (void*)&Java_org_lwjgl_openal_AL10_alGetBufferf, "alGetBufferf", (void*)&alGetBufferf}, - {"nalSourceQueueBuffers", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalSourceQueueBuffers, "alSourceQueueBuffers", (void*)&alSourceQueueBuffers}, - {"nalSourceUnqueueBuffers", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_openal_AL10_nalSourceUnqueueBuffers, "alSourceUnqueueBuffers", (void*)&alSourceUnqueueBuffers}, - {"alDistanceModel", "(I)V", (void*)&Java_org_lwjgl_openal_AL10_alDistanceModel, "alDistanceModel", (void*)&alDistanceModel}, - {"alDopplerFactor", "(F)V", (void*)&Java_org_lwjgl_openal_AL10_alDopplerFactor, "alDopplerFactor", (void*)&alDopplerFactor}, - {"alDopplerVelocity", "(F)V", (void*)&Java_org_lwjgl_openal_AL10_alDopplerVelocity, "alDopplerVelocity", (void*)&alDopplerVelocity} + {"nalDopplerVelocity", "(F)V", (void *)&Java_org_lwjgl_openal_AL10_nalDopplerVelocity, "alDopplerVelocity", (void *)&alDopplerVelocity}, + {"nalDopplerFactor", "(F)V", (void *)&Java_org_lwjgl_openal_AL10_nalDopplerFactor, "alDopplerFactor", (void *)&alDopplerFactor}, + {"nalDistanceModel", "(I)V", (void *)&Java_org_lwjgl_openal_AL10_nalDistanceModel, "alDistanceModel", (void *)&alDistanceModel}, + {"nalSourceUnqueueBuffers", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourceUnqueueBuffers, "alSourceUnqueueBuffers", (void *)&alSourceUnqueueBuffers}, + {"nalSourceQueueBuffers", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourceQueueBuffers, "alSourceQueueBuffers", (void *)&alSourceQueueBuffers}, + {"nalGetBufferf", "(II)F", (void *)&Java_org_lwjgl_openal_AL10_nalGetBufferf, "alGetBufferf", (void *)&alGetBufferf}, + {"nalGetBufferi", "(II)I", (void *)&Java_org_lwjgl_openal_AL10_nalGetBufferi, "alGetBufferi", (void *)&alGetBufferi}, + {"nalBufferData", "(IILjava/nio/Buffer;III)V", (void *)&Java_org_lwjgl_openal_AL10_nalBufferData, "alBufferData", (void *)&alBufferData}, + {"nalIsBuffer", "(I)Z", (void *)&Java_org_lwjgl_openal_AL10_nalIsBuffer, "alIsBuffer", (void *)&alIsBuffer}, + {"nalDeleteBuffers", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalDeleteBuffers, "alDeleteBuffers", (void *)&alDeleteBuffers}, + {"nalGenBuffers", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalGenBuffers, "alGenBuffers", (void *)&alGenBuffers}, + {"nalSourceRewind", "(I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourceRewind, "alSourceRewind", (void *)&alSourceRewind}, + {"nalSourceStop", "(I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourceStop, "alSourceStop", (void *)&alSourceStop}, + {"nalSourcePause", "(I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourcePause, "alSourcePause", (void *)&alSourcePause}, + {"nalSourcePlay", "(I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourcePlay, "alSourcePlay", (void *)&alSourcePlay}, + {"nalSourceRewindv", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourceRewindv, "alSourceRewindv", (void *)&alSourceRewindv}, + {"nalSourceStopv", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourceStopv, "alSourceStopv", (void *)&alSourceStopv}, + {"nalSourcePausev", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourcePausev, "alSourcePausev", (void *)&alSourcePausev}, + {"nalSourcePlayv", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourcePlayv, "alSourcePlayv", (void *)&alSourcePlayv}, + {"nalGetSourcefv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalGetSourcefv, "alGetSourcefv", (void *)&alGetSourcefv}, + {"nalGetSourcef", "(II)F", (void *)&Java_org_lwjgl_openal_AL10_nalGetSourcef, "alGetSourcef", (void *)&alGetSourcef}, + {"nalGetSourcei", "(II)I", (void *)&Java_org_lwjgl_openal_AL10_nalGetSourcei, "alGetSourcei", (void *)&alGetSourcei}, + {"nalSource3f", "(IIFFF)V", (void *)&Java_org_lwjgl_openal_AL10_nalSource3f, "alSource3f", (void *)&alSource3f}, + {"nalSourcefv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourcefv, "alSourcefv", (void *)&alSourcefv}, + {"nalSourcef", "(IIF)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourcef, "alSourcef", (void *)&alSourcef}, + {"nalSourcei", "(III)V", (void *)&Java_org_lwjgl_openal_AL10_nalSourcei, "alSourcei", (void *)&alSourcei}, + {"nalIsSource", "(I)Z", (void *)&Java_org_lwjgl_openal_AL10_nalIsSource, "alIsSource", (void *)&alIsSource}, + {"nalDeleteSources", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalDeleteSources, "alDeleteSources", (void *)&alDeleteSources}, + {"nalGenSources", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalGenSources, "alGenSources", (void *)&alGenSources}, + {"nalGetListenerfv", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalGetListenerfv, "alGetListenerfv", (void *)&alGetListenerfv}, + {"nalGetListenerf", "(I)F", (void *)&Java_org_lwjgl_openal_AL10_nalGetListenerf, "alGetListenerf", (void *)&alGetListenerf}, + {"nalGetListeneri", "(I)I", (void *)&Java_org_lwjgl_openal_AL10_nalGetListeneri, "alGetListeneri", (void *)&alGetListeneri}, + {"nalListener3f", "(IFFF)V", (void *)&Java_org_lwjgl_openal_AL10_nalListener3f, "alListener3f", (void *)&alListener3f}, + {"nalListenerfv", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalListenerfv, "alListenerfv", (void *)&alListenerfv}, + {"nalListenerf", "(IF)V", (void *)&Java_org_lwjgl_openal_AL10_nalListenerf, "alListenerf", (void *)&alListenerf}, + {"nalListeneri", "(II)V", (void *)&Java_org_lwjgl_openal_AL10_nalListeneri, "alListeneri", (void *)&alListeneri}, + {"nalGetEnumValue", "(Ljava/lang/String;)I", (void *)&Java_org_lwjgl_openal_AL10_nalGetEnumValue, "alGetEnumValue", (void *)&alGetEnumValue}, + {"nalIsExtensionPresent", "(Ljava/lang/String;)Z", (void *)&Java_org_lwjgl_openal_AL10_nalIsExtensionPresent, "alIsExtensionPresent", (void *)&alIsExtensionPresent}, + {"alGetError", "()I", (void *)&Java_org_lwjgl_openal_AL10_alGetError, "alGetError", (void *)&alGetError}, + {"alGetString", "(I)Ljava/lang/String;", (void *)&Java_org_lwjgl_openal_AL10_alGetString, "alGetString", (void *)&alGetString}, + {"nalGetFloatv", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalGetFloatv, "alGetFloatv", (void *)&alGetFloatv}, + {"nalGetIntegerv", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_openal_AL10_nalGetIntegerv, "alGetIntegerv", (void *)&alGetIntegerv}, + {"nalGetFloat", "(I)F", (void *)&Java_org_lwjgl_openal_AL10_nalGetFloat, "alGetFloat", (void *)&alGetFloat}, + {"nalGetInteger", "(I)I", (void *)&Java_org_lwjgl_openal_AL10_nalGetInteger, "alGetInteger", (void *)&alGetInteger}, + {"nalGetBoolean", "(I)Z", (void *)&Java_org_lwjgl_openal_AL10_nalGetBoolean, "alGetBoolean", (void *)&alGetBoolean}, + {"nalIsEnabled", "(I)Z", (void *)&Java_org_lwjgl_openal_AL10_nalIsEnabled, "alIsEnabled", (void *)&alIsEnabled}, + {"nalDisable", "(I)V", (void *)&Java_org_lwjgl_openal_AL10_nalDisable, "alDisable", (void *)&alDisable}, + {"nalEnable", "(I)V", (void *)&Java_org_lwjgl_openal_AL10_nalEnable, "alEnable", (void *)&alEnable} }; int num_functions = NUMFUNCTIONS(functions); extal_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif diff --git a/src/native/common/org_lwjgl_opengl_GL11.c b/src/native/common/org_lwjgl_opengl_GL11.c index be4f912f..a1454b68 100644 --- a/src/native/common/org_lwjgl_opengl_GL11.c +++ b/src/native/common/org_lwjgl_opengl_GL11.c @@ -1,355 +1,296 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/** - * $Id$ - * - * Core OpenGL functions. - * - * @author cix_foo - * @version $Revision$ - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glAccumPROC) (GLenum op, GLfloat value); -typedef void (APIENTRY * glAlphaFuncPROC) (GLenum func, GLclampf ref); -//typedef GLboolean (APIENTRY * glAreTexturesResidentPROC) (GLsizei n, const GLuint *textures, GLboolean *residences); -typedef void (APIENTRY * glArrayElementPROC) (GLint i); -typedef void (APIENTRY * glBeginPROC) (GLenum mode); -typedef void (APIENTRY * glBindTexturePROC) (GLenum target, GLuint texture); -typedef void (APIENTRY * glBitmapPROC) (GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap); -typedef void (APIENTRY * glBlendFuncPROC) (GLenum sfactor, GLenum dfactor); -typedef void (APIENTRY * glCallListPROC) (GLuint list); -typedef void (APIENTRY * glCallListsPROC) (GLsizei n, GLenum type, const GLvoid *lists); -typedef void (APIENTRY * glClearPROC) (GLbitfield mask); -typedef void (APIENTRY * glClearAccumPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); -typedef void (APIENTRY * glClearColorPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); -typedef void (APIENTRY * glClearDepthPROC) (GLclampd depth); -typedef void (APIENTRY * glClearIndexPROC) (GLfloat c); -typedef void (APIENTRY * glClearStencilPROC) (GLint s); -typedef void (APIENTRY * glClipPlanePROC) (GLenum plane, const GLdouble *equation); -typedef void (APIENTRY * glColor3bPROC) (GLbyte red, GLbyte green, GLbyte blue); -typedef void (APIENTRY * glColor3fPROC) (GLfloat red, GLfloat green, GLfloat blue); -typedef void (APIENTRY * glColor3ubPROC) (GLubyte red, GLubyte green, GLubyte blue); -typedef void (APIENTRY * glColor4bPROC) (GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha); -typedef void (APIENTRY * glColor4fPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); -typedef void (APIENTRY * glColor4ubPROC) (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha); -typedef void (APIENTRY * glColorMaskPROC) (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); -typedef void (APIENTRY * glColorMaterialPROC) (GLenum face, GLenum mode); -typedef void (APIENTRY * glColorPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glCopyPixelsPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum type); -typedef void (APIENTRY * glCopyTexImage1DPROC) (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border); -typedef void (APIENTRY * glCopyTexImage2DPROC) (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); -typedef void (APIENTRY * glCopyTexSubImage1DPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); -typedef void (APIENTRY * glCopyTexSubImage2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (APIENTRY * glCullFacePROC) (GLenum mode); -typedef void (APIENTRY * glDeleteListsPROC) (GLuint list, GLsizei range); -typedef void (APIENTRY * glDeleteTexturesPROC) (GLsizei n, const GLuint *textures); -typedef void (APIENTRY * glDepthFuncPROC) (GLenum func); -typedef void (APIENTRY * glDepthMaskPROC) (GLboolean flag); -typedef void (APIENTRY * glDepthRangePROC) (GLclampd zNear, GLclampd zFar); -typedef void (APIENTRY * glDisablePROC) (GLenum cap); -typedef void (APIENTRY * glDisableClientStatePROC) (GLenum array); -typedef void (APIENTRY * glDrawArraysPROC) (GLenum mode, GLint first, GLsizei count); -typedef void (APIENTRY * glDrawBufferPROC) (GLenum mode); -typedef void (APIENTRY * glDrawElementsPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices); -typedef void (APIENTRY * glDrawPixelsPROC) (GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRY * glEdgeFlagPROC) (GLboolean flag); -typedef void (APIENTRY * glEdgeFlagPointerPROC) (GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glEnablePROC) (GLenum cap); -typedef void (APIENTRY * glEnableClientStatePROC) (GLenum array); -typedef void (APIENTRY * glEndPROC) (void); -typedef void (APIENTRY * glEndListPROC) (void); -typedef void (APIENTRY * glEvalCoord1fPROC) (GLfloat u); -typedef void (APIENTRY * glEvalCoord2fPROC) (GLfloat u, GLfloat v); -typedef void (APIENTRY * glEvalMesh1PROC) (GLenum mode, GLint i1, GLint i2); -typedef void (APIENTRY * glEvalMesh2PROC) (GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2); -typedef void (APIENTRY * glEvalPoint1PROC) (GLint i); -typedef void (APIENTRY * glEvalPoint2PROC) (GLint i, GLint j); -typedef void (APIENTRY * glFeedbackBufferPROC) (GLsizei size, GLenum type, GLfloat *buffer); -typedef void (APIENTRY * glFinishPROC) (void); -typedef void (APIENTRY * glFlushPROC) (void); -typedef void (APIENTRY * glFogfPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glFogfvPROC) (GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glFogiPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glFogivPROC) (GLenum pname, const GLint *params); -typedef void (APIENTRY * glFrontFacePROC) (GLenum mode); -typedef void (APIENTRY * glFrustumPROC) (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); -typedef GLuint (APIENTRY * glGenListsPROC) (GLsizei range); -typedef void (APIENTRY * glGenTexturesPROC) (GLsizei n, GLuint *textures); -typedef void (APIENTRY * glGetBooleanvPROC) (GLenum pname, GLboolean *params); -typedef void (APIENTRY * glGetClipPlanePROC) (GLenum plane, GLdouble *equation); -typedef void (APIENTRY * glGetDoublevPROC) (GLenum pname, GLdouble *params); -typedef GLenum (APIENTRY * glGetErrorPROC) (void); -typedef void (APIENTRY * glGetFloatvPROC) (GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetIntegervPROC) (GLenum pname, GLint *params); -typedef void (APIENTRY * glGetLightfvPROC) (GLenum light, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetLightivPROC) (GLenum light, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetMapfvPROC) (GLenum target, GLenum query, GLfloat *v); -typedef void (APIENTRY * glGetMapivPROC) (GLenum target, GLenum query, GLint *v); -typedef void (APIENTRY * glGetMaterialfvPROC) (GLenum face, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetMaterialivPROC) (GLenum face, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetPixelMapfvPROC) (GLenum map, GLfloat *values); -typedef void (APIENTRY * glGetPixelMapuivPROC) (GLenum map, GLuint *values); -typedef void (APIENTRY * glGetPixelMapusvPROC) (GLenum map, GLushort *values); -typedef void (APIENTRY * glGetPointervPROC) (GLenum pname, GLvoid* *params); -typedef void (APIENTRY * glGetPolygonStipplePROC) (GLubyte *mask); -typedef const GLubyte * (APIENTRY * glGetStringPROC) (GLenum name); -typedef void (APIENTRY * glGetTexEnvfvPROC) (GLenum target, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetTexEnvivPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetTexGenfvPROC) (GLenum coord, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetTexGenivPROC) (GLenum coord, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetTexImagePROC) (GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels); -typedef void (APIENTRY * glGetTexLevelParameterfvPROC) (GLenum target, GLint level, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetTexLevelParameterivPROC) (GLenum target, GLint level, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetTexParameterfvPROC) (GLenum target, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetTexParameterivPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glHintPROC) (GLenum target, GLenum mode); -typedef void (APIENTRY * glInitNamesPROC) (void); -typedef void (APIENTRY * glInterleavedArraysPROC) (GLenum format, GLsizei stride, const GLvoid *pointer); -typedef GLboolean (APIENTRY * glIsEnabledPROC) (GLenum cap); -typedef GLboolean (APIENTRY * glIsListPROC) (GLuint list); -typedef GLboolean (APIENTRY * glIsTexturePROC) (GLuint texture); -typedef void (APIENTRY * glLightModelfPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glLightModelfvPROC) (GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glLightModeliPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glLightModelivPROC) (GLenum pname, const GLint *params); -typedef void (APIENTRY * glLightfPROC) (GLenum light, GLenum pname, GLfloat param); -typedef void (APIENTRY * glLightfvPROC) (GLenum light, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glLightiPROC) (GLenum light, GLenum pname, GLint param); -typedef void (APIENTRY * glLightivPROC) (GLenum light, GLenum pname, const GLint *params); -typedef void (APIENTRY * glLineStipplePROC) (GLint factor, GLushort pattern); -typedef void (APIENTRY * glLineWidthPROC) (GLfloat width); -typedef void (APIENTRY * glListBasePROC) (GLuint base); -typedef void (APIENTRY * glLoadIdentityPROC) (void); -typedef void (APIENTRY * glLoadMatrixfPROC) (const GLfloat *m); -typedef void (APIENTRY * glLoadNamePROC) (GLuint name); -typedef void (APIENTRY * glLogicOpPROC) (GLenum opcode); -typedef void (APIENTRY * glMap1fPROC) (GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points); -typedef void (APIENTRY * glMap2fPROC) (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points); -typedef void (APIENTRY * glMapGrid1fPROC) (GLint un, GLfloat u1, GLfloat u2); -typedef void (APIENTRY * glMapGrid2fPROC) (GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2); -typedef void (APIENTRY * glMaterialfPROC) (GLenum face, GLenum pname, GLfloat param); -typedef void (APIENTRY * glMaterialfvPROC) (GLenum face, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glMaterialiPROC) (GLenum face, GLenum pname, GLint param); -typedef void (APIENTRY * glMaterialivPROC) (GLenum face, GLenum pname, const GLint *params); -typedef void (APIENTRY * glMatrixModePROC) (GLenum mode); -typedef void (APIENTRY * glMultMatrixfPROC) (const GLfloat *m); -typedef void (APIENTRY * glNewListPROC) (GLuint list, GLenum mode); -typedef void (APIENTRY * glNormal3bPROC) (GLbyte nx, GLbyte ny, GLbyte nz); -typedef void (APIENTRY * glNormal3fPROC) (GLfloat nx, GLfloat ny, GLfloat nz); -typedef void (APIENTRY * glNormal3iPROC) (GLint nx, GLint ny, GLint nz); -typedef void (APIENTRY * glNormalPointerPROC) (GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glOrthoPROC) (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); -typedef void (APIENTRY * glPassThroughPROC) (GLfloat token); -typedef void (APIENTRY * glPixelMapfvPROC) (GLenum map, GLsizei mapsize, const GLfloat *values); -typedef void (APIENTRY * glPixelMapuivPROC) (GLenum map, GLsizei mapsize, const GLuint *values); -typedef void (APIENTRY * glPixelMapusvPROC) (GLenum map, GLsizei mapsize, const GLushort *values); -typedef void (APIENTRY * glPixelStorefPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glPixelStoreiPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glPixelTransferfPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glPixelTransferiPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glPixelZoomPROC) (GLfloat xfactor, GLfloat yfactor); -typedef void (APIENTRY * glPointSizePROC) (GLfloat size); -typedef void (APIENTRY * glPolygonModePROC) (GLenum face, GLenum mode); -typedef void (APIENTRY * glPolygonOffsetPROC) (GLfloat factor, GLfloat units); -typedef void (APIENTRY * glPolygonStipplePROC) (const GLubyte *mask); -typedef void (APIENTRY * glPopAttribPROC) (void); -typedef void (APIENTRY * glPopClientAttribPROC) (void); -typedef void (APIENTRY * glPopMatrixPROC) (void); -typedef void (APIENTRY * glPopNamePROC) (void); -//typedef void (APIENTRY * glPrioritizeTexturesPROC) (GLsizei n, const GLuint *textures, const GLclampf *priorities); -typedef void (APIENTRY * glPushAttribPROC) (GLbitfield mask); -typedef void (APIENTRY * glPushClientAttribPROC) (GLbitfield mask); -typedef void (APIENTRY * glPushMatrixPROC) (void); -typedef void (APIENTRY * glPushNamePROC) (GLuint name); -typedef void (APIENTRY * glRasterPos2fPROC) (GLfloat x, GLfloat y); -typedef void (APIENTRY * glRasterPos2iPROC) (GLint x, GLint y); -typedef void (APIENTRY * glRasterPos3fPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glRasterPos3iPROC) (GLint x, GLint y, GLint z); -typedef void (APIENTRY * glRasterPos4fPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glRasterPos4iPROC) (GLint x, GLint y, GLint z, GLint w); -typedef void (APIENTRY * glReadBufferPROC) (GLenum mode); -typedef void (APIENTRY * glReadPixelsPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels); -typedef void (APIENTRY * glRectfPROC) (GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2); -typedef void (APIENTRY * glRectiPROC) (GLint x1, GLint y1, GLint x2, GLint y2); -typedef GLint (APIENTRY * glRenderModePROC) (GLenum mode); -typedef void (APIENTRY * glRotatefPROC) (GLfloat angle, GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glScalefPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glScissorPROC) (GLint x, GLint y, GLsizei width, GLsizei height); -typedef void (APIENTRY * glSelectBufferPROC) (GLsizei size, GLuint *buffer); -typedef void (APIENTRY * glShadeModelPROC) (GLenum mode); -typedef void (APIENTRY * glStencilFuncPROC) (GLenum func, GLint ref, GLuint mask); -typedef void (APIENTRY * glStencilMaskPROC) (GLuint mask); -typedef void (APIENTRY * glStencilOpPROC) (GLenum fail, GLenum zfail, GLenum zpass); -typedef void (APIENTRY * glTexCoord1fPROC) (GLfloat s); -typedef void (APIENTRY * glTexCoord2fPROC) (GLfloat s, GLfloat t); -typedef void (APIENTRY * glTexCoord3fPROC) (GLfloat s, GLfloat t, GLfloat r); -typedef void (APIENTRY * glTexCoord4fPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat q); -typedef void (APIENTRY * glTexCoordPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glTexEnvfPROC) (GLenum target, GLenum pname, GLfloat param); -typedef void (APIENTRY * glTexEnvfvPROC) (GLenum target, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glTexEnviPROC) (GLenum target, GLenum pname, GLint param); -typedef void (APIENTRY * glTexEnvivPROC) (GLenum target, GLenum pname, const GLint *params); -typedef void (APIENTRY * glTexGenfPROC) (GLenum coord, GLenum pname, GLfloat param); -typedef void (APIENTRY * glTexGenfvPROC) (GLenum coord, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glTexGeniPROC) (GLenum coord, GLenum pname, GLint param); -typedef void (APIENTRY * glTexGenivPROC) (GLenum coord, GLenum pname, const GLint *params); -typedef void (APIENTRY * glTexImage1DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRY * glTexImage2DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRY * glTexParameterfPROC) (GLenum target, GLenum pname, GLfloat param); -typedef void (APIENTRY * glTexParameterfvPROC) (GLenum target, GLenum pname, const GLfloat *params); -typedef void (APIENTRY * glTexParameteriPROC) (GLenum target, GLenum pname, GLint param); -typedef void (APIENTRY * glTexParameterivPROC) (GLenum target, GLenum pname, const GLint *params); -typedef void (APIENTRY * glTexSubImage1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRY * glTexSubImage2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRY * glTranslatefPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glVertex2fPROC) (GLfloat x, GLfloat y); -typedef void (APIENTRY * glVertex2iPROC) (GLint x, GLint y); -typedef void (APIENTRY * glVertex3fPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glVertex3iPROC) (GLint x, GLint y, GLint z); -typedef void (APIENTRY * glVertex4fPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glVertex4iPROC) (GLint x, GLint y, GLint z, GLint w); -typedef void (APIENTRY * glVertexPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glViewportPROC) (GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (APIENTRY *glViewportPROC) (GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (APIENTRY *glStencilMaskPROC) (GLuint mask); +typedef void (APIENTRY *glStencilOpPROC) (GLenum fail, GLenum zfail, GLenum zpass); +typedef void (APIENTRY *glTexCoord4fPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat q); +typedef void (APIENTRY *glTexCoord3fPROC) (GLfloat s, GLfloat t, GLfloat r); +typedef void (APIENTRY *glTexCoord2fPROC) (GLfloat s, GLfloat t); +typedef void (APIENTRY *glTexCoord1fPROC) (GLfloat s); +typedef void (APIENTRY *glTexCoordPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); +typedef void (APIENTRY *glTexEnvivPROC) (GLenum target, GLenum pname, const GLint * params); +typedef void (APIENTRY *glTexEnvfvPROC) (GLenum target, GLenum pname, const GLfloat * params); +typedef void (APIENTRY *glTexEnviPROC) (GLenum target, GLenum pname, GLint param); +typedef void (APIENTRY *glTexEnvfPROC) (GLenum target, GLenum pname, GLfloat param); +typedef void (APIENTRY *glTexGenivPROC) (GLenum coord, GLenum pname, const GLint * params); +typedef void (APIENTRY *glTexGeniPROC) (GLenum coord, GLenum pname, GLint param); +typedef void (APIENTRY *glTexGenfvPROC) (GLenum coord, GLenum pname, const GLfloat * params); +typedef void (APIENTRY *glTexGenfPROC) (GLenum coord, GLenum pname, GLfloat param); +typedef void (APIENTRY *glTexParameterivPROC) (GLenum target, GLenum pname, const GLint * param); +typedef void (APIENTRY *glTexParameterfvPROC) (GLenum target, GLenum pname, const GLfloat * param); +typedef void (APIENTRY *glTexParameteriPROC) (GLenum target, GLenum pname, GLint param); +typedef void (APIENTRY *glTexParameterfPROC) (GLenum target, GLenum pname, GLfloat param); +typedef void (APIENTRY *glTexSubImage2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels); +typedef void (APIENTRY *glTexSubImage1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid * pixels); +typedef void (APIENTRY *glTexImage2DPROC) (GLenum target, GLint level, GLint internalformat, GLint width, GLint height, GLint border, GLenum format, GLenum type, const GLvoid * pixels); +typedef void (APIENTRY *glTexImage1DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid * pixels); +typedef void (APIENTRY *glTranslatefPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glVertex4iPROC) (GLint x, GLint y, GLint z, GLint w); +typedef void (APIENTRY *glVertex4fPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY *glVertex3iPROC) (GLint x, GLint y, GLint z); +typedef void (APIENTRY *glVertex3fPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glVertex2iPROC) (GLint x, GLint y); +typedef void (APIENTRY *glVertex2fPROC) (GLfloat x, GLfloat y); +typedef void (APIENTRY *glVertexPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); +typedef void (APIENTRY *glStencilFuncPROC) (GLenum func, GLint ref, GLuint mask); +typedef void (APIENTRY *glPopAttribPROC) (); +typedef void (APIENTRY *glPushAttribPROC) (GLbitfield mask); +typedef void (APIENTRY *glPopClientAttribPROC) (); +typedef void (APIENTRY *glPushClientAttribPROC) (GLbitfield mask); +typedef void (APIENTRY *glPopMatrixPROC) (); +typedef void (APIENTRY *glPushMatrixPROC) (); +typedef void (APIENTRY *glPopNamePROC) (); +typedef void (APIENTRY *glPushNamePROC) (GLuint name); +typedef void (APIENTRY *glRasterPos4iPROC) (GLint x, GLint y, GLint z, GLint w); +typedef void (APIENTRY *glRasterPos4fPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY *glRasterPos3iPROC) (GLint x, GLint y, GLint z); +typedef void (APIENTRY *glRasterPos3fPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glRasterPos2iPROC) (GLint x, GLint y); +typedef void (APIENTRY *glRasterPos2fPROC) (GLfloat x, GLfloat y); +typedef void (APIENTRY *glReadBufferPROC) (GLenum mode); +typedef void (APIENTRY *glReadPixelsPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * pixels); +typedef void (APIENTRY *glRectiPROC) (GLint x1, GLint y1, GLint x2, GLint y2); +typedef void (APIENTRY *glRectfPROC) (GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2); +typedef GLint (APIENTRY *glRenderModePROC) (GLenum mode); +typedef void (APIENTRY *glRotatefPROC) (GLfloat angle, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glScalefPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glScissorPROC) (GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (APIENTRY *glSelectBufferPROC) (GLsizei size, GLuint * buffer); +typedef void (APIENTRY *glShadeModelPROC) (GLenum mode); +typedef void (APIENTRY *glMultMatrixfPROC) (const GLfloat * m); +typedef void (APIENTRY *glEndListPROC) (); +typedef void (APIENTRY *glNewListPROC) (GLuint list, GLenum mode); +typedef void (APIENTRY *glNormal3iPROC) (GLint nx, GLint ny, GLint nz); +typedef void (APIENTRY *glNormal3fPROC) (GLfloat nx, GLfloat ny, GLfloat nz); +typedef void (APIENTRY *glNormal3bPROC) (GLbyte nx, GLbyte ny, GLbyte nz); +typedef void (APIENTRY *glNormalPointerPROC) (GLenum type, GLsizei stride, const GLvoid * pointer); +typedef void (APIENTRY *glOrthoPROC) (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); +typedef void (APIENTRY *glPassThroughPROC) (GLfloat token); +typedef void (APIENTRY *glPixelMapusvPROC) (GLenum map, GLsizei mapsize, const GLushort * values); +typedef void (APIENTRY *glPixelMapuivPROC) (GLenum map, GLsizei mapsize, const GLuint * values); +typedef void (APIENTRY *glPixelMapfvPROC) (GLenum map, GLsizei mapsize, const GLfloat * values); +typedef void (APIENTRY *glPixelStoreiPROC) (GLenum pname, GLint param); +typedef void (APIENTRY *glPixelStorefPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY *glPixelTransferiPROC) (GLenum pname, GLint param); +typedef void (APIENTRY *glPixelTransferfPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY *glPixelZoomPROC) (GLfloat xfactor, GLfloat yfactor); +typedef void (APIENTRY *glPointSizePROC) (GLfloat size); +typedef void (APIENTRY *glPolygonModePROC) (GLenum face, GLenum mode); +typedef void (APIENTRY *glPolygonOffsetPROC) (GLfloat factor, GLfloat units); +typedef void (APIENTRY *glPolygonStipplePROC) (const GLubyte * mask); +typedef void (APIENTRY *glMatrixModePROC) (GLenum mode); +typedef GLboolean (APIENTRY *glIsTexturePROC) (GLuint texture); +typedef void (APIENTRY *glLightivPROC) (GLenum light, GLenum pname, const GLint * params); +typedef void (APIENTRY *glLightfvPROC) (GLenum light, GLenum pname, const GLfloat * params); +typedef void (APIENTRY *glLightiPROC) (GLenum light, GLenum pname, GLint param); +typedef void (APIENTRY *glLightfPROC) (GLenum light, GLenum pname, GLfloat param); +typedef void (APIENTRY *glLightModelivPROC) (GLenum pname, const GLint * params); +typedef void (APIENTRY *glLightModelfvPROC) (GLenum pname, const GLfloat * params); +typedef void (APIENTRY *glLightModeliPROC) (GLenum pname, GLint param); +typedef void (APIENTRY *glLightModelfPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY *glLineStipplePROC) (GLint factor, GLushort pattern); +typedef void (APIENTRY *glLineWidthPROC) (GLfloat width); +typedef void (APIENTRY *glListBasePROC) (GLuint base); +typedef void (APIENTRY *glLoadIdentityPROC) (); +typedef void (APIENTRY *glLoadMatrixfPROC) (const GLfloat * m); +typedef void (APIENTRY *glLoadNamePROC) (GLuint name); +typedef void (APIENTRY *glLogicOpPROC) (GLenum opcode); +typedef void (APIENTRY *glMap1fPROC) (GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat * points); +typedef void (APIENTRY *glMap2fPROC) (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat * points); +typedef void (APIENTRY *glMapGrid2fPROC) (GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2); +typedef void (APIENTRY *glMapGrid1fPROC) (GLint un, GLfloat u1, GLfloat u2); +typedef void (APIENTRY *glMaterialivPROC) (GLenum face, GLenum pname, const GLint * params); +typedef void (APIENTRY *glMaterialfvPROC) (GLenum face, GLenum pname, const GLfloat * params); +typedef void (APIENTRY *glMaterialiPROC) (GLenum face, GLenum pname, GLint param); +typedef void (APIENTRY *glMaterialfPROC) (GLenum face, GLenum pname, GLfloat param); +typedef GLboolean (APIENTRY *glIsListPROC) (GLuint list); +typedef void (APIENTRY *glGetPolygonStipplePROC) (GLubyte * mask); +typedef const GLubyte * (APIENTRY *glGetStringPROC) (GLint name); +typedef void (APIENTRY *glGetTexEnvfvPROC) (GLenum coord, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetTexEnvivPROC) (GLenum coord, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetTexGenfvPROC) (GLenum coord, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetTexGenivPROC) (GLenum coord, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetTexImagePROC) (GLenum target, GLint level, GLenum format, GLenum type, GLvoid * pixels); +typedef void (APIENTRY *glGetTexLevelParameterivPROC) (GLenum target, GLint level, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetTexLevelParameterfvPROC) (GLenum target, GLint level, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetTexParameterivPROC) (GLenum target, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetTexParameterfvPROC) (GLenum target, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glHintPROC) (GLenum target, GLenum mode); +typedef void (APIENTRY *glInitNamesPROC) (); +typedef void (APIENTRY *glInterleavedArraysPROC) (GLenum format, GLsizei stride, const GLvoid * pointer); +typedef GLboolean (APIENTRY *glIsEnabledPROC) (GLenum cap); +typedef void (APIENTRY *glGetPointervPROC) (GLenum pname, GLvoid ** result); +typedef void (APIENTRY *glFinishPROC) (); +typedef void (APIENTRY *glFlushPROC) (); +typedef void (APIENTRY *glFogivPROC) (GLenum pname, const GLint * params); +typedef void (APIENTRY *glFogfvPROC) (GLenum pname, const GLfloat * params); +typedef void (APIENTRY *glFogiPROC) (GLenum pname, GLint param); +typedef void (APIENTRY *glFogfPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY *glFrontFacePROC) (GLenum mode); +typedef void (APIENTRY *glFrustumPROC) (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); +typedef GLuint (APIENTRY *glGenListsPROC) (GLsizei range); +typedef void (APIENTRY *glGenTexturesPROC) (GLsizei n, GLuint * textures); +typedef void (APIENTRY *glGetIntegervPROC) (GLenum pname, GLint * params); +typedef void (APIENTRY *glGetFloatvPROC) (GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetDoublevPROC) (GLenum pname, GLdouble * params); +typedef void (APIENTRY *glGetBooleanvPROC) (GLenum pname, GLboolean * params); +typedef void (APIENTRY *glGetClipPlanePROC) (GLenum plane, GLdouble * equation); +typedef GLint (APIENTRY *glGetErrorPROC) (); +typedef void (APIENTRY *glGetLightivPROC) (GLenum light, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetLightfvPROC) (GLenum light, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetMapivPROC) (GLenum target, GLenum query, GLint * v); +typedef void (APIENTRY *glGetMapfvPROC) (GLenum target, GLenum query, GLfloat * v); +typedef void (APIENTRY *glGetMaterialivPROC) (GLenum face, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetMaterialfvPROC) (GLenum face, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetPixelMapusvPROC) (GLenum map, GLushort * values); +typedef void (APIENTRY *glGetPixelMapuivPROC) (GLenum map, GLuint * values); +typedef void (APIENTRY *glGetPixelMapfvPROC) (GLenum map, GLfloat * values); +typedef void (APIENTRY *glFeedbackBufferPROC) (GLsizei size, GLenum type, GLfloat * buffer); +typedef void (APIENTRY *glDepthFuncPROC) (GLenum func); +typedef void (APIENTRY *glDepthMaskPROC) (GLboolean flag); +typedef void (APIENTRY *glDepthRangePROC) (GLclampd zNear, GLclampd zFar); +typedef void (APIENTRY *glDrawArraysPROC) (GLenum mode, GLint first, GLsizei count); +typedef void (APIENTRY *glDrawBufferPROC) (GLenum mode); +typedef void (APIENTRY *glDrawElementsPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid * indices); +typedef void (APIENTRY *glDrawPixelsPROC) (GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels); +typedef void (APIENTRY *glEdgeFlagPROC) (GLboolean flag); +typedef void (APIENTRY *glEdgeFlagPointerPROC) (GLint stride, const GLvoid * pointer); +typedef void (APIENTRY *glDisablePROC) (GLenum cap); +typedef void (APIENTRY *glEnablePROC) (GLenum cap); +typedef void (APIENTRY *glDisableClientStatePROC) (GLenum cap); +typedef void (APIENTRY *glEnableClientStatePROC) (GLenum cap); +typedef void (APIENTRY *glEvalCoord2fPROC) (GLfloat u, GLfloat v); +typedef void (APIENTRY *glEvalCoord1fPROC) (GLfloat u); +typedef void (APIENTRY *glEvalMesh2PROC) (GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2); +typedef void (APIENTRY *glEvalMesh1PROC) (GLenum mode, GLint i1, GLint i2); +typedef void (APIENTRY *glEvalPoint2PROC) (GLint i, GLint j); +typedef void (APIENTRY *glEvalPoint1PROC) (GLint i); +typedef void (APIENTRY *glClearIndexPROC) (GLfloat c); +typedef void (APIENTRY *glClearStencilPROC) (GLint s); +typedef void (APIENTRY *glClipPlanePROC) (GLenum plane, const GLdouble * equation); +typedef void (APIENTRY *glColor4ubPROC) (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha); +typedef void (APIENTRY *glColor4fPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); +typedef void (APIENTRY *glColor4bPROC) (GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha); +typedef void (APIENTRY *glColor3ubPROC) (GLubyte red, GLubyte green, GLubyte blue); +typedef void (APIENTRY *glColor3fPROC) (GLfloat red, GLfloat green, GLfloat blue); +typedef void (APIENTRY *glColor3bPROC) (GLbyte red, GLbyte green, GLbyte blue); +typedef void (APIENTRY *glColorMaskPROC) (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); +typedef void (APIENTRY *glColorMaterialPROC) (GLenum face, GLenum mode); +typedef void (APIENTRY *glColorPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); +typedef void (APIENTRY *glCopyPixelsPROC) (GLint x, GLint y, GLint width, GLint height, GLint type); +typedef void (APIENTRY *glCopyTexImage1DPROC) (GLenum target, GLint level, GLint internalFormat, GLint x, GLint y, GLsizei width, GLint border); +typedef void (APIENTRY *glCopyTexImage2DPROC) (GLenum target, GLint level, GLint internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); +typedef void (APIENTRY *glCopyTexSubImage1DPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); +typedef void (APIENTRY *glCopyTexSubImage2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (APIENTRY *glCullFacePROC) (GLenum mode); +typedef void (APIENTRY *glDeleteTexturesPROC) (GLsizei n, const GLuint * textures); +typedef void (APIENTRY *glDeleteListsPROC) (GLuint list, GLsizei range); +typedef void (APIENTRY *glClearDepthPROC) (GLclampd depth); +typedef void (APIENTRY *glArrayElementPROC) (GLint i); +typedef void (APIENTRY *glEndPROC) (); +typedef void (APIENTRY *glBeginPROC) (GLenum mode); +typedef void (APIENTRY *glBindTexturePROC) (GLenum target, GLuint texture); +typedef void (APIENTRY *glBitmapPROC) (GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte * bitmap); +typedef void (APIENTRY *glBlendFuncPROC) (GLenum sfactor, GLenum dfactor); +typedef void (APIENTRY *glCallListPROC) (GLuint list); +typedef void (APIENTRY *glCallListsPROC) (GLsizei n, GLenum type, const GLvoid * lists); +typedef void (APIENTRY *glClearPROC) (GLbitfield mask); +typedef void (APIENTRY *glClearAccumPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); +typedef void (APIENTRY *glClearColorPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); +typedef void (APIENTRY *glAlphaFuncPROC) (GLenum func, GLclampf ref); +typedef void (APIENTRY *glAccumPROC) (GLenum op, GLfloat value); -static glAccumPROC glAccum; -static glAlphaFuncPROC glAlphaFunc; -//static glAreTexturesResidentPROC glAreTexturesResident; -static glArrayElementPROC glArrayElement; -static glBeginPROC glBegin; -static glBindTexturePROC glBindTexture; -static glBitmapPROC glBitmap; -static glBlendFuncPROC glBlendFunc; -static glCallListPROC glCallList; -static glCallListsPROC glCallLists; -static glClearPROC glClear; -static glClearAccumPROC glClearAccum; -static glClearColorPROC glClearColor; -static glClearDepthPROC glClearDepth; -static glClearIndexPROC glClearIndex; -static glClearStencilPROC glClearStencil; -static glClipPlanePROC glClipPlane; -static glColor3bPROC glColor3b; -static glColor3fPROC glColor3f; -static glColor3ubPROC glColor3ub; -static glColor4bPROC glColor4b; -static glColor4fPROC glColor4f; -static glColor4ubPROC glColor4ub; -static glColorMaskPROC glColorMask; -static glColorMaterialPROC glColorMaterial; -static glColorPointerPROC glColorPointer; -static glCopyPixelsPROC glCopyPixels; -static glCopyTexImage1DPROC glCopyTexImage1D; -static glCopyTexImage2DPROC glCopyTexImage2D; -static glCopyTexSubImage1DPROC glCopyTexSubImage1D; -static glCopyTexSubImage2DPROC glCopyTexSubImage2D; -static glCullFacePROC glCullFace; -static glDeleteListsPROC glDeleteLists; -static glDeleteTexturesPROC glDeleteTextures; -static glDepthFuncPROC glDepthFunc; -static glDepthMaskPROC glDepthMask; -static glDepthRangePROC glDepthRange; -static glDisablePROC glDisable; -static glDisableClientStatePROC glDisableClientState; -static glDrawArraysPROC glDrawArrays; -static glDrawBufferPROC glDrawBuffer; -static glDrawElementsPROC glDrawElements; -static glDrawPixelsPROC glDrawPixels; -static glEdgeFlagPROC glEdgeFlag; -static glEdgeFlagPointerPROC glEdgeFlagPointer; -static glEnablePROC glEnable; -static glEnableClientStatePROC glEnableClientState; -static glEndPROC glEnd; +static glViewportPROC glViewport; +static glStencilMaskPROC glStencilMask; +static glStencilOpPROC glStencilOp; +static glTexCoord4fPROC glTexCoord4f; +static glTexCoord3fPROC glTexCoord3f; +static glTexCoord2fPROC glTexCoord2f; +static glTexCoord1fPROC glTexCoord1f; +static glTexCoordPointerPROC glTexCoordPointer; +static glTexEnvivPROC glTexEnviv; +static glTexEnvfvPROC glTexEnvfv; +static glTexEnviPROC glTexEnvi; +static glTexEnvfPROC glTexEnvf; +static glTexGenivPROC glTexGeniv; +static glTexGeniPROC glTexGeni; +static glTexGenfvPROC glTexGenfv; +static glTexGenfPROC glTexGenf; +static glTexParameterivPROC glTexParameteriv; +static glTexParameterfvPROC glTexParameterfv; +static glTexParameteriPROC glTexParameteri; +static glTexParameterfPROC glTexParameterf; +static glTexSubImage2DPROC glTexSubImage2D; +static glTexSubImage1DPROC glTexSubImage1D; +static glTexImage2DPROC glTexImage2D; +static glTexImage1DPROC glTexImage1D; +static glTranslatefPROC glTranslatef; +static glVertex4iPROC glVertex4i; +static glVertex4fPROC glVertex4f; +static glVertex3iPROC glVertex3i; +static glVertex3fPROC glVertex3f; +static glVertex2iPROC glVertex2i; +static glVertex2fPROC glVertex2f; +static glVertexPointerPROC glVertexPointer; +static glStencilFuncPROC glStencilFunc; +static glPopAttribPROC glPopAttrib; +static glPushAttribPROC glPushAttrib; +static glPopClientAttribPROC glPopClientAttrib; +static glPushClientAttribPROC glPushClientAttrib; +static glPopMatrixPROC glPopMatrix; +static glPushMatrixPROC glPushMatrix; +static glPopNamePROC glPopName; +static glPushNamePROC glPushName; +static glRasterPos4iPROC glRasterPos4i; +static glRasterPos4fPROC glRasterPos4f; +static glRasterPos3iPROC glRasterPos3i; +static glRasterPos3fPROC glRasterPos3f; +static glRasterPos2iPROC glRasterPos2i; +static glRasterPos2fPROC glRasterPos2f; +static glReadBufferPROC glReadBuffer; +static glReadPixelsPROC glReadPixels; +static glRectiPROC glRecti; +static glRectfPROC glRectf; +static glRenderModePROC glRenderMode; +static glRotatefPROC glRotatef; +static glScalefPROC glScalef; +static glScissorPROC glScissor; +static glSelectBufferPROC glSelectBuffer; +static glShadeModelPROC glShadeModel; +static glMultMatrixfPROC glMultMatrixf; static glEndListPROC glEndList; -static glEvalCoord1fPROC glEvalCoord1f; -static glEvalCoord2fPROC glEvalCoord2f; -static glEvalMesh1PROC glEvalMesh1; -static glEvalMesh2PROC glEvalMesh2; -static glEvalPoint1PROC glEvalPoint1; -static glEvalPoint2PROC glEvalPoint2; -static glFeedbackBufferPROC glFeedbackBuffer; -static glFinishPROC glFinish; -static glFlushPROC glFlush; -static glFogfPROC glFogf; -static glFogfvPROC glFogfv; -static glFogiPROC glFogi; -static glFogivPROC glFogiv; -static glFrontFacePROC glFrontFace; -static glFrustumPROC glFrustum; -static glGenListsPROC glGenLists; -static glGenTexturesPROC glGenTextures; -static glGetBooleanvPROC glGetBooleanv; -static glGetClipPlanePROC glGetClipPlane; -static glGetDoublevPROC glGetDoublev; -static glGetErrorPROC glGetError; -static glGetFloatvPROC glGetFloatv; -static glGetIntegervPROC glGetIntegerv; -static glGetLightfvPROC glGetLightfv; -static glGetLightivPROC glGetLightiv; -static glGetMapfvPROC glGetMapfv; -static glGetMapivPROC glGetMapiv; -static glGetMaterialfvPROC glGetMaterialfv; -static glGetMaterialivPROC glGetMaterialiv; -static glGetPixelMapfvPROC glGetPixelMapfv; -static glGetPixelMapuivPROC glGetPixelMapuiv; -static glGetPixelMapusvPROC glGetPixelMapusv; -static glGetPointervPROC glGetPointerv; -static glGetPolygonStipplePROC glGetPolygonStipple; -static glGetStringPROC glGetString; -static glGetTexEnvfvPROC glGetTexEnvfv; -static glGetTexEnvivPROC glGetTexEnviv; -static glGetTexGenfvPROC glGetTexGenfv; -static glGetTexGenivPROC glGetTexGeniv; -static glGetTexImagePROC glGetTexImage; -static glGetTexLevelParameterfvPROC glGetTexLevelParameterfv; -static glGetTexLevelParameterivPROC glGetTexLevelParameteriv; -static glGetTexParameterfvPROC glGetTexParameterfv; -static glGetTexParameterivPROC glGetTexParameteriv; -static glHintPROC glHint; -static glInitNamesPROC glInitNames; -static glInterleavedArraysPROC glInterleavedArrays; -static glIsEnabledPROC glIsEnabled; -static glIsListPROC glIsList; +static glNewListPROC glNewList; +static glNormal3iPROC glNormal3i; +static glNormal3fPROC glNormal3f; +static glNormal3bPROC glNormal3b; +static glNormalPointerPROC glNormalPointer; +static glOrthoPROC glOrtho; +static glPassThroughPROC glPassThrough; +static glPixelMapusvPROC glPixelMapusv; +static glPixelMapuivPROC glPixelMapuiv; +static glPixelMapfvPROC glPixelMapfv; +static glPixelStoreiPROC glPixelStorei; +static glPixelStorefPROC glPixelStoref; +static glPixelTransferiPROC glPixelTransferi; +static glPixelTransferfPROC glPixelTransferf; +static glPixelZoomPROC glPixelZoom; +static glPointSizePROC glPointSize; +static glPolygonModePROC glPolygonMode; +static glPolygonOffsetPROC glPolygonOffset; +static glPolygonStipplePROC glPolygonStipple; +static glMatrixModePROC glMatrixMode; static glIsTexturePROC glIsTexture; -static glLightModelfPROC glLightModelf; -static glLightModelfvPROC glLightModelfv; -static glLightModeliPROC glLightModeli; -static glLightModelivPROC glLightModeliv; -static glLightfPROC glLightf; +static glLightivPROC glLightiv; static glLightfvPROC glLightfv; static glLightiPROC glLighti; -static glLightivPROC glLightiv; +static glLightfPROC glLightf; +static glLightModelivPROC glLightModeliv; +static glLightModelfvPROC glLightModelfv; +static glLightModeliPROC glLightModeli; +static glLightModelfPROC glLightModelf; static glLineStipplePROC glLineStipple; static glLineWidthPROC glLineWidth; static glListBasePROC glListBase; @@ -359,2576 +300,1320 @@ static glLoadNamePROC glLoadName; static glLogicOpPROC glLogicOp; static glMap1fPROC glMap1f; static glMap2fPROC glMap2f; -static glMapGrid1fPROC glMapGrid1f; static glMapGrid2fPROC glMapGrid2f; -static glMaterialfPROC glMaterialf; +static glMapGrid1fPROC glMapGrid1f; +static glMaterialivPROC glMaterialiv; static glMaterialfvPROC glMaterialfv; static glMaterialiPROC glMateriali; -static glMaterialivPROC glMaterialiv; -static glMatrixModePROC glMatrixMode; -static glMultMatrixfPROC glMultMatrixf; -static glNewListPROC glNewList; -static glNormal3bPROC glNormal3b; -static glNormal3fPROC glNormal3f; -static glNormal3iPROC glNormal3i; -static glNormalPointerPROC glNormalPointer; -static glOrthoPROC glOrtho; -static glPassThroughPROC glPassThrough; -static glPixelMapfvPROC glPixelMapfv; -static glPixelMapuivPROC glPixelMapuiv; -static glPixelMapusvPROC glPixelMapusv; -static glPixelStorefPROC glPixelStoref; -static glPixelStoreiPROC glPixelStorei; -static glPixelTransferfPROC glPixelTransferf; -static glPixelTransferiPROC glPixelTransferi; -static glPixelZoomPROC glPixelZoom; -static glPointSizePROC glPointSize; -static glPolygonModePROC glPolygonMode; -static glPolygonOffsetPROC glPolygonOffset; -static glPolygonStipplePROC glPolygonStipple; -static glPopAttribPROC glPopAttrib; -static glPopClientAttribPROC glPopClientAttrib; -static glPopMatrixPROC glPopMatrix; -static glPopNamePROC glPopName; -//static glPrioritizeTexturesPROC glPrioritizeTextures; -static glPushAttribPROC glPushAttrib; -static glPushClientAttribPROC glPushClientAttrib; -static glPushMatrixPROC glPushMatrix; -static glPushNamePROC glPushName; -static glRasterPos2fPROC glRasterPos2f; -static glRasterPos2iPROC glRasterPos2i; -static glRasterPos3fPROC glRasterPos3f; -static glRasterPos3iPROC glRasterPos3i; - -static glRasterPos4fPROC glRasterPos4f; -static glRasterPos4iPROC glRasterPos4i; -static glReadBufferPROC glReadBuffer; -static glReadPixelsPROC glReadPixels; -static glRectfPROC glRectf; -static glRectiPROC glRecti; -static glRenderModePROC glRenderMode; -static glRotatefPROC glRotatef; -static glScalefPROC glScalef; -static glScissorPROC glScissor; -static glSelectBufferPROC glSelectBuffer; -static glShadeModelPROC glShadeModel; -static glStencilFuncPROC glStencilFunc; -static glStencilMaskPROC glStencilMask; -static glStencilOpPROC glStencilOp; -static glTexCoord1fPROC glTexCoord1f; -static glTexCoord2fPROC glTexCoord2f; -static glTexCoord3fPROC glTexCoord3f; -static glTexCoord4fPROC glTexCoord4f; -static glTexCoordPointerPROC glTexCoordPointer; -static glTexEnvfPROC glTexEnvf; -static glTexEnvfvPROC glTexEnvfv; -static glTexEnviPROC glTexEnvi; -static glTexEnvivPROC glTexEnviv; -static glTexGenfPROC glTexGenf; -static glTexGenfvPROC glTexGenfv; -static glTexGeniPROC glTexGeni; -static glTexGenivPROC glTexGeniv; -static glTexImage1DPROC glTexImage1D; -static glTexImage2DPROC glTexImage2D; -static glTexParameterfPROC glTexParameterf; -static glTexParameterfvPROC glTexParameterfv; -static glTexParameteriPROC glTexParameteri; -static glTexParameterivPROC glTexParameteriv; -static glTexSubImage1DPROC glTexSubImage1D; -static glTexSubImage2DPROC glTexSubImage2D; -static glTranslatefPROC glTranslatef; -static glVertex2fPROC glVertex2f; -static glVertex2iPROC glVertex2i; -static glVertex3fPROC glVertex3f; -static glVertex3iPROC glVertex3i; -static glVertex4fPROC glVertex4f; -static glVertex4iPROC glVertex4i; -static glVertexPointerPROC glVertexPointer; -static glViewportPROC glViewport; - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glAccum - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glAccum(JNIEnv * env, jclass clazz, jint p0, jfloat p1) -{ - glAccum((GLint) p0, (GLfloat) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glAlphaFunc - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glAlphaFunc(JNIEnv * env, jclass clazz, jint p0, jfloat p1) -{ - glAlphaFunc((GLint) p0, (GLfloat) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glClearColor - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glClearColor(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2, jfloat p3) -{ - glClearColor((GLfloat) p0, (GLfloat) p1, (GLfloat) p2, (GLfloat) p3); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glClearAccum - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glClearAccum(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2, jfloat p3) -{ - glClearAccum((GLfloat) p0, (GLfloat) p1, (GLfloat) p2, (GLfloat) p3); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glClear - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glClear(JNIEnv * env, jclass clazz, jint p0) -{ - glClear((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glCallLists - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglCallLists(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject lists_buffer, jint lists_offset) -{ - GLbyte *lists = (GLbyte *)(*env)->GetDirectBufferAddress(env, lists_buffer); - glCallLists((GLint) p0, (GLint) p1, (const void *)(lists + lists_offset)); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glCallList - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glCallList(JNIEnv * env, jclass clazz, jint p0) -{ - glCallList((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glBlendFunc - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glBlendFunc(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glBlendFunc((GLint) p0, (GLint) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glBitmap - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglBitmap(JNIEnv * env, jclass clazz, jint p0, jint p1, jfloat p2, jfloat p3, jfloat p4, jfloat p5, jobject image_buffer, jint image_offset) -{ - const GLubyte *image = (const GLubyte *)(*env)->GetDirectBufferAddress(env, image_buffer); - glBitmap((GLint) p0, (GLint) p1, (GLfloat) p2, (GLfloat) p3, (GLfloat) p4, (GLfloat) p5, image + image_offset); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glBitmap - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglBitmapBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jfloat p2, jfloat p3, jfloat p4, jfloat p5, jint buffer_offset) -{ - glBitmap((GLint) p0, (GLint) p1, (GLfloat) p2, (GLfloat) p3, (GLfloat) p4, (GLfloat) p5, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glBindTexture - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glBindTexture(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glBindTexture((GLint) p0, (GLint) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glBegin - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glBegin(JNIEnv * env, jclass clazz, jint p0) -{ - glBegin((GLint) p0); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEnd - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEnd(JNIEnv * env, jclass clazz) -{ - glEnd(); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glArrayElement - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glArrayElement(JNIEnv * env, jclass clazz, jint p0) -{ - glArrayElement((GLint) p0); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glClearDepth - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glClearDepth(JNIEnv * env, jclass clazz, jdouble p0) -{ - glClearDepth((GLdouble) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDeleteLists - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glDeleteLists(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glDeleteLists((GLuint) p0, (GLint) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDeleteTextures - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglDeleteTextures(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - const GLuint *address = (const GLuint *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glDeleteTextures((GLint) p0, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glCullFace - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glCullFace(JNIEnv * env, jclass clazz, jint p0) -{ - glCullFace((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glCopyTexSubImage2D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glCopyTexSubImage2D(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6, jint p7) -{ - glCopyTexSubImage2D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6, (GLint) p7); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glCopyTexSubImage1D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glCopyTexSubImage1D(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5) -{ - glCopyTexSubImage1D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glCopyTexImage2D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glCopyTexImage2D(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6, jint p7) -{ - glCopyTexImage2D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6, (GLint) p7); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glCopyTexImage1D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glCopyTexImage1D(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6) -{ - glCopyTexImage1D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glCopyPixels - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glCopyPixels(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4) -{ - glCopyPixels((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglColorPointer - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglColorPointer(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jobject buffer, jint buffer_offset) -{ - const GLbyte *address = (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer); - glColorPointer((GLint) p0, (GLint) p1, (GLint) p2, (const void *) (address + buffer_offset)); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglColorPointerVBO - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglColorPointerVBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint buffer_offset) -{ - glColorPointer((GLint) p0, (GLint) p1, (GLint) p2, offsetToPointer(buffer_offset)); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glColorMaterial - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glColorMaterial(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glColorMaterial((GLint) p0, (GLint) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glColorMask - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glColorMask(JNIEnv * env, jclass clazz, jboolean p0, jboolean p1, jboolean p2, jboolean p3) -{ - glColorMask((GLboolean) p0, (GLboolean) p1, (GLboolean) p2, (GLboolean) p3); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glColor3b - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glColor3b(JNIEnv * env, jclass clazz, jbyte p0, jbyte p1, jbyte p2) -{ - glColor3b((GLbyte) p0, (GLbyte) p1, (GLbyte) p2); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glColor3f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glColor3f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2) -{ - glColor3f((GLfloat) p0, (GLfloat) p1, (GLfloat) p2); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glColor3ub - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glColor3ub(JNIEnv * env, jclass clazz, jbyte p0, jbyte p1, jbyte p2) -{ - glColor3ub((GLbyte) p0, (GLbyte) p1, (GLbyte) p2); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glColor4b - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glColor4b(JNIEnv * env, jclass clazz, jbyte p0, jbyte p1, jbyte p2, jbyte p3) -{ - glColor4b((GLbyte) p0, (GLbyte) p1, (GLbyte) p2, (GLbyte) p3); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glColor4f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glColor4f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2, jfloat p3) -{ - glColor4f((GLfloat) p0, (GLfloat) p1, (GLfloat) p2, (GLfloat) p3); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glColor4ub - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glColor4ub(JNIEnv * env, jclass clazz, jbyte p0, jbyte p1, jbyte p2, jbyte p3) -{ - glColor4ub((GLbyte) p0, (GLbyte) p1, (GLbyte) p2, (GLbyte) p3); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glClipPlane - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglClipPlane(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - const GLdouble *address = offset + (const GLdouble *)(*env)->GetDirectBufferAddress(env, buffer); - glClipPlane((GLint) p0, address + offset); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glClearStencil - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glClearStencil(JNIEnv * env, jclass clazz, jint p0) -{ - glClearStencil((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glClearIndex - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glClearIndex(JNIEnv * env, jclass clazz, jfloat p0) -{ - glClearIndex((GLfloat) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEvalPoint1 - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalPoint1(JNIEnv * env, jclass clazz, jint p0) -{ - glEvalPoint1((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEvalPoint2 - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalPoint2(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glEvalPoint2((GLint) p0, (GLint) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEvalMesh1 - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalMesh1(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glEvalMesh1((GLint) p0, (GLint) p1, (GLint) p2); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEvalMesh2 - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalMesh2(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4) -{ - glEvalMesh2((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEvalCoord1f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalCoord1f(JNIEnv * env, jclass clazz, jfloat p0) -{ - glEvalCoord1f((GLfloat) p0); - +static glMaterialfPROC glMaterialf; +static glIsListPROC glIsList; +static glGetPolygonStipplePROC glGetPolygonStipple; +static glGetStringPROC glGetString; +static glGetTexEnvfvPROC glGetTexEnvfv; +static glGetTexEnvivPROC glGetTexEnviv; +static glGetTexGenfvPROC glGetTexGenfv; +static glGetTexGenivPROC glGetTexGeniv; +static glGetTexImagePROC glGetTexImage; +static glGetTexLevelParameterivPROC glGetTexLevelParameteriv; +static glGetTexLevelParameterfvPROC glGetTexLevelParameterfv; +static glGetTexParameterivPROC glGetTexParameteriv; +static glGetTexParameterfvPROC glGetTexParameterfv; +static glHintPROC glHint; +static glInitNamesPROC glInitNames; +static glInterleavedArraysPROC glInterleavedArrays; +static glIsEnabledPROC glIsEnabled; +static glGetPointervPROC glGetPointerv; +static glFinishPROC glFinish; +static glFlushPROC glFlush; +static glFogivPROC glFogiv; +static glFogfvPROC glFogfv; +static glFogiPROC glFogi; +static glFogfPROC glFogf; +static glFrontFacePROC glFrontFace; +static glFrustumPROC glFrustum; +static glGenListsPROC glGenLists; +static glGenTexturesPROC glGenTextures; +static glGetIntegervPROC glGetIntegerv; +static glGetFloatvPROC glGetFloatv; +static glGetDoublevPROC glGetDoublev; +static glGetBooleanvPROC glGetBooleanv; +static glGetClipPlanePROC glGetClipPlane; +static glGetErrorPROC glGetError; +static glGetLightivPROC glGetLightiv; +static glGetLightfvPROC glGetLightfv; +static glGetMapivPROC glGetMapiv; +static glGetMapfvPROC glGetMapfv; +static glGetMaterialivPROC glGetMaterialiv; +static glGetMaterialfvPROC glGetMaterialfv; +static glGetPixelMapusvPROC glGetPixelMapusv; +static glGetPixelMapuivPROC glGetPixelMapuiv; +static glGetPixelMapfvPROC glGetPixelMapfv; +static glFeedbackBufferPROC glFeedbackBuffer; +static glDepthFuncPROC glDepthFunc; +static glDepthMaskPROC glDepthMask; +static glDepthRangePROC glDepthRange; +static glDrawArraysPROC glDrawArrays; +static glDrawBufferPROC glDrawBuffer; +static glDrawElementsPROC glDrawElements; +static glDrawPixelsPROC glDrawPixels; +static glEdgeFlagPROC glEdgeFlag; +static glEdgeFlagPointerPROC glEdgeFlagPointer; +static glDisablePROC glDisable; +static glEnablePROC glEnable; +static glDisableClientStatePROC glDisableClientState; +static glEnableClientStatePROC glEnableClientState; +static glEvalCoord2fPROC glEvalCoord2f; +static glEvalCoord1fPROC glEvalCoord1f; +static glEvalMesh2PROC glEvalMesh2; +static glEvalMesh1PROC glEvalMesh1; +static glEvalPoint2PROC glEvalPoint2; +static glEvalPoint1PROC glEvalPoint1; +static glClearIndexPROC glClearIndex; +static glClearStencilPROC glClearStencil; +static glClipPlanePROC glClipPlane; +static glColor4ubPROC glColor4ub; +static glColor4fPROC glColor4f; +static glColor4bPROC glColor4b; +static glColor3ubPROC glColor3ub; +static glColor3fPROC glColor3f; +static glColor3bPROC glColor3b; +static glColorMaskPROC glColorMask; +static glColorMaterialPROC glColorMaterial; +static glColorPointerPROC glColorPointer; +static glCopyPixelsPROC glCopyPixels; +static glCopyTexImage1DPROC glCopyTexImage1D; +static glCopyTexImage2DPROC glCopyTexImage2D; +static glCopyTexSubImage1DPROC glCopyTexSubImage1D; +static glCopyTexSubImage2DPROC glCopyTexSubImage2D; +static glCullFacePROC glCullFace; +static glDeleteTexturesPROC glDeleteTextures; +static glDeleteListsPROC glDeleteLists; +static glClearDepthPROC glClearDepth; +static glArrayElementPROC glArrayElement; +static glEndPROC glEnd; +static glBeginPROC glBegin; +static glBindTexturePROC glBindTexture; +static glBitmapPROC glBitmap; +static glBlendFuncPROC glBlendFunc; +static glCallListPROC glCallList; +static glCallListsPROC glCallLists; +static glClearPROC glClear; +static glClearAccumPROC glClearAccum; +static glClearColorPROC glClearColor; +static glAlphaFuncPROC glAlphaFunc; +static glAccumPROC glAccum; + +static void JNICALL Java_org_lwjgl_opengl_GL11_glViewport(JNIEnv *env, jclass clazz, jint x, jint y, jint width, jint height) { + glViewport(x, y, width, height); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glStencilMask(JNIEnv *env, jclass clazz, jint mask) { + glStencilMask(mask); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glStencilOp(JNIEnv *env, jclass clazz, jint fail, jint zfail, jint zpass) { + glStencilOp(fail, zfail, zpass); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEvalCoord2f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalCoord2f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1) -{ - glEvalCoord2f((GLfloat) p0, (GLfloat) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEnableClientState - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEnableClientState(JNIEnv * env, jclass clazz, jint p0) -{ - glEnableClientState((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDisableClientState - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glDisableClientState(JNIEnv * env, jclass clazz, jint p0) -{ - glDisableClientState((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEnable - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEnable(JNIEnv * env, jclass clazz, jint p0) -{ - glEnable((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDisable - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glDisable(JNIEnv * env, jclass clazz, jint p0) -{ - glDisable((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglEdgeFlagPointer - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglEdgeFlagPointer(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - const GLbyte *address = offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer); - glEdgeFlagPointer((GLint) p0, (const void *)address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglEdgeFlagPointerVBO - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglEdgeFlagPointerVBO(JNIEnv * env, jclass clazz, jint p0, jint buffer_offset) -{ - glEdgeFlagPointer((GLint) p0, offsetToPointer(buffer_offset)); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEdgeFlag - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEdgeFlag(JNIEnv * env, jclass clazz, jboolean p0) -{ - glEdgeFlag((GLboolean) p0); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDrawPixels - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglDrawPixels(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jobject buffer, jint offset) -{ - const GLbyte *address = (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer); - glDrawPixels((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (const void *)(address + offset)); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDrawPixels - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglDrawPixelsBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint buffer_offset) -{ - glDrawPixels((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglDrawElements - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglDrawElements(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jobject buffer, jint offset) -{ - const GLbyte *address = (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer); - glDrawElements((GLint) p0, (GLint) p1, (GLint) p2, (const void *)(address + offset)); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglDrawElementsVBO - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglDrawElementsVBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint buffer_offset) -{ - glDrawElements((GLint) p0, (GLint) p1, (GLint) p2, offsetToPointer(buffer_offset)); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDrawBuffer - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glDrawBuffer(JNIEnv * env, jclass clazz, jint p0) -{ - glDrawBuffer((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDrawArrays - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glDrawArrays(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glDrawArrays((GLint) p0, (GLint) p1, (GLint) p2); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDepthRange - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glDepthRange(JNIEnv * env, jclass clazz, jdouble p0, jdouble p1) -{ - glDepthRange((GLdouble) p0, (GLdouble) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDepthMask - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glDepthMask(JNIEnv * env, jclass clazz, jboolean p0) -{ - glDepthMask((GLboolean) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glDepthFunc - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glDepthFunc(JNIEnv * env, jclass clazz, jint p0) -{ - glDepthFunc((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glFeedbackBuffer - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglFeedbackBuffer(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glFeedbackBuffer((GLint) p0, (GLint) p1, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetPixelMapfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapfv(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetPixelMapfv((GLint) p0, address); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetPixelMapfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapfvBO(JNIEnv * env, jclass clazz, jint p0, jint buffer_offset) -{ - glGetPixelMapfv((GLint) p0, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetPixelMapuiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapuiv(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - GLuint *address = offset + (GLuint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetPixelMapuiv((GLint) p0, address); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetPixelMapuiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapuivBO(JNIEnv * env, jclass clazz, jint p0, jint buffer_offset) -{ - glGetPixelMapuiv((GLint) p0, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_GL11_glTexCoord4f(JNIEnv *env, jclass clazz, jfloat s, jfloat t, jfloat r, jfloat q) { + glTexCoord4f(s, t, r, q); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetPixelMapusv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapusv(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - GLushort *address = (GLushort *)(*env)->GetDirectBufferAddress(env, buffer); - glGetPixelMapusv((GLint) p0, address); +static void JNICALL Java_org_lwjgl_opengl_GL11_glTexCoord3f(JNIEnv *env, jclass clazz, jfloat s, jfloat t, jfloat r) { + glTexCoord3f(s, t, r); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetPixelMapusv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapusvBO(JNIEnv * env, jclass clazz, jint p0, jint buffer_offset) -{ - glGetPixelMapusv((GLint) p0, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_GL11_glTexCoord2f(JNIEnv *env, jclass clazz, jfloat s, jfloat t) { + glTexCoord2f(s, t); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetMaterialfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetMaterialfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetMaterialfv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glTexCoord1f(JNIEnv *env, jclass clazz, jfloat s) { + glTexCoord1f(s); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetMaterialiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetMaterialiv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetMaterialiv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexCoordPointer(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jobject pointer, jint pointer_position) { + const GLvoid *pointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pointer)) + pointer_position)); + glTexCoordPointer(size, type, stride, pointer_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetMapfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetMapfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetMapfv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexCoordPointerBO(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jint pointer_buffer_offset) { + const GLvoid *pointer_address = ((const GLvoid *)offsetToPointer(pointer_buffer_offset)); + glTexCoordPointer(size, type, stride, pointer_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetMapiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetMapiv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetMapiv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexEnviv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glTexEnviv(target, pname, params_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetLightfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetLightfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetLightfv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexEnvfv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glTexEnvfv(target, pname, params_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetLightiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetLightiv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetLightiv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glTexEnvi(JNIEnv *env, jclass clazz, jint target, jint pname, jint param) { + glTexEnvi(target, pname, param); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetError - */ -static jint JNICALL Java_org_lwjgl_opengl_GL11_glGetError(JNIEnv * env, jclass clazz) -{ - jint ret = (jint) glGetError(); - - return ret; +static void JNICALL Java_org_lwjgl_opengl_GL11_glTexEnvf(JNIEnv *env, jclass clazz, jint target, jint pname, jfloat param) { + glTexEnvf(target, pname, param); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetClipPlane - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetClipPlane(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - GLdouble *address = offset + (GLdouble *)(*env)->GetDirectBufferAddress(env, buffer); - glGetClipPlane((GLint) p0, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexGeniv(JNIEnv *env, jclass clazz, jint coord, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glTexGeniv(coord, pname, params_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetBooleanv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetBooleanv(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - GLubyte *address = offset + (GLubyte *)(*env)->GetDirectBufferAddress(env, buffer); - glGetBooleanv((GLint) p0, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glTexGeni(JNIEnv *env, jclass clazz, jint coord, jint pname, jint param) { + glTexGeni(coord, pname, param); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetDoublev - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetDoublev(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - GLdouble *address = offset + (GLdouble *)(*env)->GetDirectBufferAddress(env, buffer); - glGetDoublev((GLint) p0, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexGenfv(JNIEnv *env, jclass clazz, jint coord, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glTexGenfv(coord, pname, params_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetFloatv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetFloatv(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetFloatv((GLint) p0, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glTexGenf(JNIEnv *env, jclass clazz, jint coord, jint pname, jfloat param) { + glTexGenf(coord, pname, param); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetIntegerv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetIntegerv(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetIntegerv((GLint) p0, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexParameteriv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject param, jint param_position) { + const GLint *param_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, param)) + param_position; + glTexParameteriv(target, pname, param_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGenTextures - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGenTextures(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - GLuint *address = offset + (GLuint *)(*env)->GetDirectBufferAddress(env, buffer); - glGenTextures((GLint) p0, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexParameterfv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject param, jint param_position) { + const GLfloat *param_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, param)) + param_position; + glTexParameterfv(target, pname, param_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGenLists - */ -static jint JNICALL Java_org_lwjgl_opengl_GL11_glGenLists(JNIEnv * env, jclass clazz, jint p0) -{ - jint ret = (jint) glGenLists((GLint) p0); - - return ret; +static void JNICALL Java_org_lwjgl_opengl_GL11_glTexParameteri(JNIEnv *env, jclass clazz, jint target, jint pname, jint param) { + glTexParameteri(target, pname, param); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glFrustum - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glFrustum(JNIEnv * env, jclass clazz, jdouble p0, jdouble p1, jdouble p2, jdouble p3, jdouble p4, jdouble p5) -{ - glFrustum((GLdouble) p0, (GLdouble) p1, (GLdouble) p2, (GLdouble) p3, (GLdouble) p4, (GLdouble) p5); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glTexParameterf(JNIEnv *env, jclass clazz, jint target, jint pname, jfloat param) { + glTexParameterf(target, pname, param); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glFrontFace - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glFrontFace(JNIEnv * env, jclass clazz, jint p0) -{ - glFrontFace((GLint) p0); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexSubImage2D(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint type, jobject pixels, jint pixels_position) { + const GLvoid *pixels_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pixels)) + pixels_position)); + glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glFogf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glFogf(JNIEnv * env, jclass clazz, jint p0, jfloat p1) -{ - glFogf((GLint) p0, (GLfloat) p1); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexSubImage2DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint type, jint pixels_buffer_offset) { + const GLvoid *pixels_address = ((const GLvoid *)offsetToPointer(pixels_buffer_offset)); + glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glFogi - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glFogi(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glFogi((GLint) p0, (GLint) p1); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexSubImage1D(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint width, jint format, jint type, jobject pixels, jint pixels_position) { + const GLvoid *pixels_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pixels)) + pixels_position)); + glTexSubImage1D(target, level, xoffset, width, format, type, pixels_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glFogfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglFogfv(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glFogfv((GLint) p0, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexSubImage1DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint width, jint format, jint type, jint pixels_buffer_offset) { + const GLvoid *pixels_address = ((const GLvoid *)offsetToPointer(pixels_buffer_offset)); + glTexSubImage1D(target, level, xoffset, width, format, type, pixels_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glFogiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglFogiv(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - const GLint *address = offset + (const GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glFogiv((GLint) p0, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage2D(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint format, jint type, jobject pixels, jint pixels_position) { + const GLvoid *pixels_address = ((const GLvoid *)(((char *)safeGetBufferAddress(env, pixels)) + pixels_position)); + glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glFlush - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glFlush(JNIEnv * env, jclass clazz) -{ - glFlush(); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage2DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint format, jint type, jint pixels_buffer_offset) { + const GLvoid *pixels_address = ((const GLvoid *)offsetToPointer(pixels_buffer_offset)); + glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glFinish - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glFinish(JNIEnv * env, jclass clazz) -{ - glFinish(); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage1D(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint border, jint format, jint type, jobject pixels, jint pixels_position) { + const GLvoid *pixels_address = ((const GLvoid *)(((char *)safeGetBufferAddress(env, pixels)) + pixels_position)); + glTexImage1D(target, level, internalformat, width, border, format, type, pixels_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetPointerv - */ -static jobject JNICALL Java_org_lwjgl_opengl_GL11_glGetPointerv(JNIEnv * env, jclass clazz, jint p0, int size) -{ - void *pointer; - glGetPointerv((GLint) p0, &pointer); - - return safeNewBuffer(env, pointer, size); +static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage1DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint border, jint format, jint type, jint pixels_buffer_offset) { + const GLvoid *pixels_address = ((const GLvoid *)offsetToPointer(pixels_buffer_offset)); + glTexImage1D(target, level, internalformat, width, border, format, type, pixels_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glIsEnabled - */ -static jboolean JNICALL Java_org_lwjgl_opengl_GL11_glIsEnabled(JNIEnv * env, jclass clazz, jint p0) -{ - jboolean ret = (jboolean) glIsEnabled((GLint) p0); - - return ret; +static void JNICALL Java_org_lwjgl_opengl_GL11_glTranslatef(JNIEnv *env, jclass clazz, jfloat x, jfloat y, jfloat z) { + glTranslatef(x, y, z); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglInterleavedArrays - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglInterleavedArrays(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glInterleavedArrays((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex4i(JNIEnv *env, jclass clazz, jint x, jint y, jint z, jint w) { + glVertex4i(x, y, z, w); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglInterleavedArraysVBO - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglInterleavedArraysVBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint buffer_offset) -{ - glInterleavedArrays((GLint) p0, (GLint) p1, offsetToPointer(buffer_offset)); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex4f(JNIEnv *env, jclass clazz, jfloat x, jfloat y, jfloat z, jfloat w) { + glVertex4f(x, y, z, w); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glInitNames - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glInitNames(JNIEnv * env, jclass clazz) -{ - glInitNames(); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex3i(JNIEnv *env, jclass clazz, jint x, jint y, jint z) { + glVertex3i(x, y, z); } - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glHint - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glHint(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glHint((GLint) p0, (GLint) p1); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex3f(JNIEnv *env, jclass clazz, jfloat x, jfloat y, jfloat z) { + glVertex3f(x, y, z); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetTexParameterfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexParameterfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetTexParameterfv((GLint) p0, (GLint) p1, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetTexParameteriv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexParameteriv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetTexParameteriv((GLint) p0, (GLint) p1, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetTexLevelParameterfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexLevelParameterfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetTexLevelParameterfv((GLint) p0, (GLint) p1, (GLint) p2, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetTexLevelParameteriv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexLevelParameteriv(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetTexLevelParameteriv((GLint) p0, (GLint) p1, (GLint) p2, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetTexImage - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexImage(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jobject buffer, jint offset) -{ - void *address = (void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glGetTexImage((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, address); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetTexImage - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexImageBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint buffer_offset) -{ - glGetTexImage((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex2i(JNIEnv *env, jclass clazz, jint x, jint y) { + glVertex2i(x, y); } -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexGenfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetTexGenfv((GLint) p0, (GLint) p1, address); - -} - -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexGeniv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetTexGeniv((GLint) p0, (GLint) p1, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetTexEnvfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexEnvfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glGetTexEnvfv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex2f(JNIEnv *env, jclass clazz, jfloat x, jfloat y) { + glVertex2f(x, y); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetTexEnviv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexEnviv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glGetTexEnviv((GLint) p0, (GLint) p1, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetString - */ -static jstring JNICALL Java_org_lwjgl_opengl_GL11_glGetString(JNIEnv * env, jclass clazz, jint p0) -{ - const GLubyte * string = glGetString((GLenum) p0); - return NewStringNative(env, string); +static void JNICALL Java_org_lwjgl_opengl_GL11_nglVertexPointer(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jobject pointer, jint pointer_position) { + const GLvoid *pointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pointer)) + pointer_position)); + glVertexPointer(size, type, stride, pointer_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetPolygonStipple - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPolygonStipple(JNIEnv * env, jclass clazz, jobject buffer, jint offset) -{ - GLubyte *address = offset + (GLubyte *)(*env)->GetDirectBufferAddress(env, buffer); - glGetPolygonStipple(address); +static void JNICALL Java_org_lwjgl_opengl_GL11_nglVertexPointerBO(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jint pointer_buffer_offset) { + const GLvoid *pointer_address = ((const GLvoid *)offsetToPointer(pointer_buffer_offset)); + glVertexPointer(size, type, stride, pointer_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glGetPolygonStipple - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPolygonStippleBO(JNIEnv * env, jclass clazz, jint buffer_offset) -{ - glGetPolygonStipple(offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glIsList - */ -static jboolean JNICALL Java_org_lwjgl_opengl_GL11_glIsList(JNIEnv * env, jclass clazz, jint p0) -{ - jboolean ret = (jboolean) glIsList((GLint) p0); - - return ret; -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glMaterialf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glMaterialf(JNIEnv * env, jclass clazz, jint p0, jint p1, jfloat p2) -{ - glMaterialf((GLint) p0, (GLint) p1, (GLfloat) p2); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glMateriali - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glMateriali(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glMateriali((GLint) p0, (GLint) p1, (GLint) p2); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glMaterialfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglMaterialfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glMaterialfv((GLint) p0, (GLint) p1, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glMaterialiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglMaterialiv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLint *address = offset + (const GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glMaterialiv((GLint) p0, (GLint) p1, address); - -} - - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glMapGrid1f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glMapGrid1f(JNIEnv * env, jclass clazz, jint p0, jfloat p1, jfloat p2) -{ - glMapGrid1f((GLint) p0, (GLfloat) p1, (GLfloat) p2); - -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glMapGrid2f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glMapGrid2f(JNIEnv * env, jclass clazz, jint p0, jfloat p1, jfloat p2, jint p3, jfloat p4, jfloat p5) -{ - glMapGrid2f((GLint) p0, (GLfloat) p1, (GLfloat) p2, (GLint) p3, (GLfloat) p4, (GLfloat) p5); - -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glMap2f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglMap2f(JNIEnv * env, jclass clazz, jint p0, jfloat p1, jfloat p2, jint p3, jint p4, jfloat p5, jfloat p6, jint p7, jint p8, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glMap2f((GLint) p0, (GLfloat) p1, (GLfloat) p2, (GLint) p3, (GLint) p4, (GLfloat) p5, (GLfloat) p6, (GLint) p7, (GLint) p8, address); - -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glMap1f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglMap1f(JNIEnv * env, jclass clazz, jint p0, jfloat p1, jfloat p2, jint p3, jint p4, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glMap1f((GLint) p0, (GLfloat) p1, (GLfloat) p2, (GLint) p3, (GLint) p4, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLogicOp - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glLogicOp(JNIEnv * env, jclass clazz, jint p0) -{ - glLogicOp((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLoadName - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glLoadName(JNIEnv * env, jclass clazz, jint p0) -{ - glLoadName((GLint) p0); - -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLoadMatrixf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglLoadMatrixf(JNIEnv * env, jclass clazz, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glLoadMatrixf(address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLoadIdentity - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glLoadIdentity(JNIEnv * env, jclass clazz) -{ - glLoadIdentity(); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glListBase - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glListBase(JNIEnv * env, jclass clazz, jint p0) -{ - glListBase((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLineWidth - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glLineWidth(JNIEnv * env, jclass clazz, jfloat p0) -{ - glLineWidth((GLfloat) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLineStipple - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glLineStipple(JNIEnv * env, jclass clazz, jint p0, jshort p1) -{ - glLineStipple((GLint) p0, (GLshort) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLightModelf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glLightModelf(JNIEnv * env, jclass clazz, jint p0, jfloat p1) -{ - glLightModelf((GLint) p0, (GLfloat) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLightModeli - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glLightModeli(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glLightModeli((GLint) p0, (GLint) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLightModelfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglLightModelfv(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glLightModelfv((GLint) p0, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLightModeliv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglLightModeliv(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - const GLint *address = offset + (const GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glLightModeliv((GLint) p0, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLightf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glLightf(JNIEnv * env, jclass clazz, jint p0, jint p1, jfloat p2) -{ - glLightf((GLint) p0, (GLint) p1, (GLfloat) p2); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLighti - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glLighti(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glLighti((GLint) p0, (GLint) p1, (GLint) p2); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLightfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglLightfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glLightfv((GLint) p0, (GLint) p1, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glLightiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglLightiv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLint *address = offset + (const GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glLightiv((GLint) p0, (GLint) p1, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glIsTexture - */ -static jboolean JNICALL Java_org_lwjgl_opengl_GL11_glIsTexture(JNIEnv * env, jclass clazz, jint p0) -{ - jboolean ret = (jboolean) glIsTexture((GLint) p0); - - return ret; -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glMatrixMode - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glMatrixMode(JNIEnv * env, jclass clazz, jint p0) -{ - glMatrixMode((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPolygonStipple - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglPolygonStipple(JNIEnv * env, jclass clazz, jobject buffer, jint offset) -{ - const GLubyte *address = offset + (const GLubyte *)(*env)->GetDirectBufferAddress(env, buffer); - glPolygonStipple(address); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPolygonStipple - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglPolygonStippleBO(JNIEnv * env, jclass clazz, jint buffer_offset) -{ - glPolygonStipple(offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPolygonOffset - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPolygonOffset(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1) -{ - glPolygonOffset((GLfloat) p0, (GLfloat) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPolygonMode - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPolygonMode(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glPolygonMode((GLint) p0, (GLint) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPointSize - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPointSize(JNIEnv * env, jclass clazz, jfloat p0) -{ - glPointSize((GLfloat) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelZoom - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPixelZoom(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1) -{ - glPixelZoom((GLfloat) p0, (GLfloat) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelTransferf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPixelTransferf(JNIEnv * env, jclass clazz, jint p0, jfloat p1) -{ - glPixelTransferf((GLint) p0, (GLfloat) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelTransferi - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPixelTransferi(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glPixelTransferi((GLint) p0, (GLint) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelStoref - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPixelStoref(JNIEnv * env, jclass clazz, jint p0, jfloat p1) -{ - glPixelStoref((GLint) p0, (GLfloat) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelStorei - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPixelStorei(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glPixelStorei((GLint) p0, (GLint) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelMapfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glPixelMapfv((GLint) p0, (GLint) p1, address); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelMapfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapfvBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint buffer_offset) -{ - glPixelMapfv((GLint) p0, (GLint) p1, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelMapuiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapuiv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLuint *address = (const GLuint *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glPixelMapuiv((GLint) p0, (GLint) p1, address); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelMapuiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapuivBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint buffer_offset) -{ - glPixelMapuiv((GLint) p0, (GLint) p1, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelMapusv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapusv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLushort *address = (const GLushort *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glPixelMapusv((GLint) p0, (GLint) p1, address); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPixelMapusv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapusvBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint buffer_offset) -{ - glPixelMapusv((GLint) p0, (GLint) p1, offsetToPointer(buffer_offset)); -} -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPassThrough - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPassThrough(JNIEnv * env, jclass clazz, jfloat p0) -{ - glPassThrough((GLfloat) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glOrtho - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glOrtho(JNIEnv * env, jclass clazz, jdouble p0, jdouble p1, jdouble p2, jdouble p3, jdouble p4, jdouble p5) -{ - glOrtho((GLdouble) p0, (GLdouble) p1, (GLdouble) p2, (GLdouble) p3, (GLdouble) p4, (GLdouble) p5); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglNormalPointer - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglNormalPointer(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glNormalPointer((GLint) p0, (GLint) p1, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglNormalPointerVBO - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglNormalPointerVBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint buffer_offset) -{ - glNormalPointer((GLint) p0, (GLint) p1, offsetToPointer(buffer_offset)); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glNormal3b - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glNormal3b(JNIEnv * env, jclass clazz, jbyte p0, jbyte p1, jbyte p2) -{ - glNormal3b((GLbyte) p0, (GLbyte) p1, (GLbyte) p2); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glNormal3f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glNormal3f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2) -{ - glNormal3f((GLfloat) p0, (GLfloat) p1, (GLfloat) p2); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glNormal3i - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glNormal3i(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glNormal3i((GLint) p0, (GLint) p1, (GLint) p2); -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glNewList - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glNewList(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glNewList((GLint) p0, (GLint) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glEndList - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glEndList(JNIEnv * env, jclass clazz) -{ - glEndList(); - -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glMultMatrixf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglMultMatrixf(JNIEnv * env, jclass clazz, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glMultMatrixf(address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glShadeModel - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glShadeModel(JNIEnv * env, jclass clazz, jint p0) -{ - glShadeModel((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glSelectBuffer - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglSelectBuffer(JNIEnv * env, jclass clazz, jint p0, jobject buffer, jint offset) -{ - GLuint *address = offset + (GLuint *)(*env)->GetDirectBufferAddress(env, buffer); - glSelectBuffer((GLint) p0, address); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glScissor - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glScissor(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3) -{ - glScissor((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glScalef - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glScalef(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2) -{ - glScalef((GLfloat) p0, (GLfloat) p1, (GLfloat) p2); - -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glRotatef - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glRotatef(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2, jfloat p3) -{ - glRotatef((GLfloat) p0, (GLfloat) p1, (GLfloat) p2, (GLfloat) p3); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glRenderMode - */ -static jint JNICALL Java_org_lwjgl_opengl_GL11_glRenderMode(JNIEnv * env, jclass clazz, jint p0) -{ - jint ret = (jint) glRenderMode((GLint) p0); - - return ret; -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glRectf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glRectf(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2, jfloat p3) -{ - glRectf((GLfloat) p0, (GLfloat) p1, (GLfloat) p2, (GLfloat) p3); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glRecti - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glRecti(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3) -{ - glRecti((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3); - -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glReadPixels - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglReadPixels(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jobject buffer, jint offset) -{ - void *address = (void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glReadPixels((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, address); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glReadPixels - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglReadPixelsBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint buffer_offset) -{ - glReadPixels((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glReadBuffer - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glReadBuffer(JNIEnv * env, jclass clazz, jint p0) -{ - glReadBuffer((GLint) p0); - -} - - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glRasterPos2f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos2f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1) -{ - glRasterPos2f((GLfloat) p0, (GLfloat) p1); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glRasterPos2i - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos2i(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glRasterPos2i((GLint) p0, (GLint) p1); - -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glRasterPos3f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos3f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2) -{ - glRasterPos3f((GLfloat) p0, (GLfloat) p1, (GLfloat) p2); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glRasterPos3i - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos3i(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glRasterPos3i((GLint) p0, (GLint) p1, (GLint) p2); - -} - - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glRasterPos4f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos4f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2, jfloat p3) -{ - glRasterPos4f((GLfloat) p0, (GLfloat) p1, (GLfloat) p2, (GLfloat) p3); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glRasterPos4i - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos4i(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3) -{ - glRasterPos4i((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3); - -} - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPushName - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPushName(JNIEnv * env, jclass clazz, jint p0) -{ - glPushName((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPopName - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPopName(JNIEnv * env, jclass clazz) -{ - glPopName(); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPushMatrix - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPushMatrix(JNIEnv * env, jclass clazz) -{ - glPushMatrix(); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPopMatrix - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPopMatrix(JNIEnv * env, jclass clazz) -{ - glPopMatrix(); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglPushClientAttrib - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglPushClientAttrib(JNIEnv * env, jclass clazz, jint p0) -{ - glPushClientAttrib((GLint) p0); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglPopClientAttrib - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglPopClientAttrib(JNIEnv * env, jclass clazz) -{ - glPopClientAttrib(); - -} - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPushAttrib - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPushAttrib(JNIEnv * env, jclass clazz, jint p0) -{ - glPushAttrib((GLint) p0); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glStencilFunc(JNIEnv *env, jclass clazz, jint func, jint ref, jint mask) { + glStencilFunc(func, ref, mask); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glPopAttrib - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glPopAttrib(JNIEnv * env, jclass clazz) -{ +static void JNICALL Java_org_lwjgl_opengl_GL11_glPopAttrib(JNIEnv *env, jclass clazz) { glPopAttrib(); - } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glStencilFunc - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glStencilFunc(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glStencilFunc((GLint) p0, (GLint) p1, (GLint) p2); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glPushAttrib(JNIEnv *env, jclass clazz, jint mask) { + glPushAttrib(mask); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglVertexPointer - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglVertexPointer(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glVertexPointer((GLint) p0, (GLint) p1, (GLint) p2, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglPopClientAttrib(JNIEnv *env, jclass clazz) { + glPopClientAttrib(); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglVertexPointerVBO - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglVertexPointerVBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint buffer_offset) -{ - glVertexPointer((GLint) p0, (GLint) p1, (GLint) p2, offsetToPointer(buffer_offset)); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglPushClientAttrib(JNIEnv *env, jclass clazz, jint mask) { + glPushClientAttrib(mask); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glVertex2f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex2f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1) -{ - glVertex2f((GLfloat) p0, (GLfloat) p1); +static void JNICALL Java_org_lwjgl_opengl_GL11_glPopMatrix(JNIEnv *env, jclass clazz) { + glPopMatrix(); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glVertex2i - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex2i(JNIEnv * env, jclass clazz, jint p0, jint p1) -{ - glVertex2i((GLint) p0, (GLint) p1); +static void JNICALL Java_org_lwjgl_opengl_GL11_glPushMatrix(JNIEnv *env, jclass clazz) { + glPushMatrix(); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glVertex3f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex3f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2) -{ - glVertex3f((GLfloat) p0, (GLfloat) p1, (GLfloat) p2); +static void JNICALL Java_org_lwjgl_opengl_GL11_glPopName(JNIEnv *env, jclass clazz) { + glPopName(); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glVertex3i - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex3i(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glVertex3i((GLint) p0, (GLint) p1, (GLint) p2); +static void JNICALL Java_org_lwjgl_opengl_GL11_glPushName(JNIEnv *env, jclass clazz, jint name) { + glPushName(name); } - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glVertex4f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex4f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2, jfloat p3) -{ - glVertex4f((GLfloat) p0, (GLfloat) p1, (GLfloat) p2, (GLfloat) p3); +static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos4i(JNIEnv *env, jclass clazz, jint x, jint y, jint z, jint w) { + glRasterPos4i(x, y, z, w); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glVertex4i - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glVertex4i(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3) -{ - glVertex4i((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3); +static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos4f(JNIEnv *env, jclass clazz, jfloat x, jfloat y, jfloat z, jfloat w) { + glRasterPos4f(x, y, z, w); } - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTranslatef - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTranslatef(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2) -{ - glTranslatef((GLfloat) p0, (GLfloat) p1, (GLfloat) p2); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos3i(JNIEnv *env, jclass clazz, jint x, jint y, jint z) { + glRasterPos3i(x, y, z); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexSubImage2D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexSubImage2D(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6, jint p7, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glTexSubImage2D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6, (GLint) p7, address); +static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos3f(JNIEnv *env, jclass clazz, jfloat x, jfloat y, jfloat z) { + glRasterPos3f(x, y, z); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexSubImage2D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexSubImage2DBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6, jint p7, jint buffer_offset) -{ - glTexSubImage2D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6, (GLint) p7, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos2i(JNIEnv *env, jclass clazz, jint x, jint y) { + glRasterPos2i(x, y); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexSubImage1D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexSubImage1D(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glTexSubImage1D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, address); +static void JNICALL Java_org_lwjgl_opengl_GL11_glRasterPos2f(JNIEnv *env, jclass clazz, jfloat x, jfloat y) { + glRasterPos2f(x, y); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexSubImage1D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexSubImage1DBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint buffer_offset) -{ - glTexSubImage1D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_GL11_glReadBuffer(JNIEnv *env, jclass clazz, jint mode) { + glReadBuffer(mode); } -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexParameterfv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject param, jint param_offset) { - GLfloat *address = param_offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, param); - glTexParameterfv(target, pname, address); +static void JNICALL Java_org_lwjgl_opengl_GL11_nglReadPixels(JNIEnv *env, jclass clazz, jint x, jint y, jint width, jint height, jint format, jint type, jobject pixels, jint pixels_position) { + GLvoid *pixels_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pixels)) + pixels_position)); + glReadPixels(x, y, width, height, format, type, pixels_address); } -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexParameteriv - (JNIEnv *env, jclass clazz, jint target, jint pname, jobject param, jint param_offset) { - GLint *address = param_offset + (GLint *)(*env)->GetDirectBufferAddress(env, param); - glTexParameteriv(target, pname, address); +static void JNICALL Java_org_lwjgl_opengl_GL11_nglReadPixelsBO(JNIEnv *env, jclass clazz, jint x, jint y, jint width, jint height, jint format, jint type, jint pixels_buffer_offset) { + GLvoid *pixels_address = ((GLvoid *)offsetToPointer(pixels_buffer_offset)); + glReadPixels(x, y, width, height, format, type, pixels_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexParameterf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTexParameterf(JNIEnv * env, jclass clazz, jint p0, jint p1, jfloat p2) -{ - glTexParameterf((GLint) p0, (GLint) p1, (GLfloat) p2); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glRecti(JNIEnv *env, jclass clazz, jint x1, jint y1, jint x2, jint y2) { + glRecti(x1, y1, x2, y2); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexParameteri - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTexParameteri(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glTexParameteri((GLint) p0, (GLint) p1, (GLint) p2); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glRectf(JNIEnv *env, jclass clazz, jfloat x1, jfloat y1, jfloat x2, jfloat y2) { + glRectf(x1, y1, x2, y2); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexImage2D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage2D(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6, jint p7, jobject buffer, jint offset) -{ - GLvoid *buffer_ptr = (GLvoid *)((char *)safeGetBufferAddress(env, buffer) + offset); - glTexImage2D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6, (GLint) p7, buffer_ptr); +static jint JNICALL Java_org_lwjgl_opengl_GL11_glRenderMode(JNIEnv *env, jclass clazz, jint mode) { + GLint __result = glRenderMode(mode); + return __result; } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexImage2D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage2DBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6, jint p7, jint buffer_offset) -{ - glTexImage2D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6, (GLint) p7, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_GL11_glRotatef(JNIEnv *env, jclass clazz, jfloat angle, jfloat x, jfloat y, jfloat z) { + glRotatef(angle, x, y, z); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexImage1D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage1D(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6, jobject buffer, jint offset) -{ - GLvoid *buffer_ptr = (GLvoid *)((char *)safeGetBufferAddress(env, buffer) + offset); - glTexImage1D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6, buffer_ptr); +static void JNICALL Java_org_lwjgl_opengl_GL11_glScalef(JNIEnv *env, jclass clazz, jfloat x, jfloat y, jfloat z) { + glScalef(x, y, z); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexImage1D - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexImage1DBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3, jint p4, jint p5, jint p6, jint buffer_offset) -{ - glTexImage1D((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3, (GLint) p4, (GLint) p5, (GLint) p6, offsetToPointer(buffer_offset)); +static void JNICALL Java_org_lwjgl_opengl_GL11_glScissor(JNIEnv *env, jclass clazz, jint x, jint y, jint width, jint height) { + glScissor(x, y, width, height); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexGenf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTexGenf(JNIEnv * env, jclass clazz, jint p0, jint p1, jfloat p2) -{ - glTexGenf((GLint) p0, (GLint) p1, (GLfloat) p2); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglSelectBuffer(JNIEnv *env, jclass clazz, jint size, jobject buffer, jint buffer_position) { + GLuint *buffer_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, buffer)) + buffer_position; + glSelectBuffer(size, buffer_address); } - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglTexGenfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexGenfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glTexGenfv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glShadeModel(JNIEnv *env, jclass clazz, jint mode) { + glShadeModel(mode); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexGeni - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTexGeni(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glTexGeni((GLint) p0, (GLint) p1, (GLint) p2); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglMultMatrixf(JNIEnv *env, jclass clazz, jobject m, jint m_position) { + const GLfloat *m_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, m)) + m_position; + glMultMatrixf(m_address); } - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglTexGeniv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexGeniv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLint *address = offset + (const GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glTexGeniv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glEndList(JNIEnv *env, jclass clazz) { + glEndList(); } - - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexEnvf - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTexEnvf(JNIEnv * env, jclass clazz, jint p0, jint p1, jfloat p2) -{ - glTexEnvf((GLint) p0, (GLint) p1, (GLfloat) p2); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glNewList(JNIEnv *env, jclass clazz, jint list, jint mode) { + glNewList(list, mode); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexEnvi - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTexEnvi(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glTexEnvi((GLint) p0, (GLint) p1, (GLint) p2); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glNormal3i(JNIEnv *env, jclass clazz, jint nx, jint ny, jint nz) { + glNormal3i(nx, ny, nz); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexEnvfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexEnvfv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLfloat *address = offset + (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glTexEnvfv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glNormal3f(JNIEnv *env, jclass clazz, jfloat nx, jfloat ny, jfloat nz) { + glNormal3f(nx, ny, nz); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexEnviv - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexEnviv(JNIEnv * env, jclass clazz, jint p0, jint p1, jobject buffer, jint offset) -{ - const GLint *address = offset + (const GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glTexEnviv((GLint) p0, (GLint) p1, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_glNormal3b(JNIEnv *env, jclass clazz, jbyte nx, jbyte ny, jbyte nz) { + glNormal3b(nx, ny, nz); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglTexCoordPointer - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexCoordPointer(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glTexCoordPointer((GLint) p0, (GLint) p1, (GLint) p2, address); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglNormalPointer(JNIEnv *env, jclass clazz, jint type, jint stride, jobject pointer, jint pointer_position) { + const GLvoid *pointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pointer)) + pointer_position)); + glNormalPointer(type, stride, pointer_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: nglTexCoordPointerVBO - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_nglTexCoordPointerVBO(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint buffer_offset) -{ - glTexCoordPointer((GLint) p0, (GLint) p1, (GLint) p2, offsetToPointer(buffer_offset)); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglNormalPointerBO(JNIEnv *env, jclass clazz, jint type, jint stride, jint pointer_buffer_offset) { + const GLvoid *pointer_address = ((const GLvoid *)offsetToPointer(pointer_buffer_offset)); + glNormalPointer(type, stride, pointer_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexCoord1f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTexCoord1f(JNIEnv * env, jclass clazz, jfloat p0) -{ - glTexCoord1f((GLfloat) p0); +static void JNICALL Java_org_lwjgl_opengl_GL11_glOrtho(JNIEnv *env, jclass clazz, jdouble left, jdouble right, jdouble bottom, jdouble top, jdouble zNear, jdouble zFar) { + glOrtho(left, right, bottom, top, zNear, zFar); } - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexCoord2f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTexCoord2f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1) -{ - glTexCoord2f((GLfloat) p0, (GLfloat) p1); +static void JNICALL Java_org_lwjgl_opengl_GL11_glPassThrough(JNIEnv *env, jclass clazz, jfloat token) { + glPassThrough(token); } - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexCoord3f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTexCoord3f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2) -{ - glTexCoord3f((GLfloat) p0, (GLfloat) p1, (GLfloat) p2); +static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapusv(JNIEnv *env, jclass clazz, jint map, jint mapsize, jobject values, jint values_position) { + const GLushort *values_address = ((const GLushort *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glPixelMapusv(map, mapsize, values_address); } - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glTexCoord4f - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glTexCoord4f(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2, jfloat p3) -{ - glTexCoord4f((GLfloat) p0, (GLfloat) p1, (GLfloat) p2, (GLfloat) p3); +static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapusvBO(JNIEnv *env, jclass clazz, jint map, jint mapsize, jint values_buffer_offset) { + const GLushort *values_address = ((const GLushort *)offsetToPointer(values_buffer_offset)); + glPixelMapusv(map, mapsize, values_address); } - -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glStencilOp - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glStencilOp(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2) -{ - glStencilOp((GLint) p0, (GLint) p1, (GLint) p2); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapuiv(JNIEnv *env, jclass clazz, jint map, jint mapsize, jobject values, jint values_position) { + const GLuint *values_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glPixelMapuiv(map, mapsize, values_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glStencilMask - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glStencilMask(JNIEnv * env, jclass clazz, jint p0) -{ - glStencilMask((GLint) p0); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapuivBO(JNIEnv *env, jclass clazz, jint map, jint mapsize, jint values_buffer_offset) { + const GLuint *values_address = ((const GLuint *)offsetToPointer(values_buffer_offset)); + glPixelMapuiv(map, mapsize, values_address); } -/* - * Class: org_lwjgl_opengl_GL11 - * Method: glViewport - */ -static void JNICALL Java_org_lwjgl_opengl_GL11_glViewport(JNIEnv * env, jclass clazz, jint p0, jint p1, jint p2, jint p3) -{ - glViewport((GLint) p0, (GLint) p1, (GLint) p2, (GLint) p3); - +static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapfv(JNIEnv *env, jclass clazz, jint map, jint mapsize, jobject values, jint values_position) { + const GLfloat *values_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glPixelMapfv(map, mapsize, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglPixelMapfvBO(JNIEnv *env, jclass clazz, jint map, jint mapsize, jint values_buffer_offset) { + const GLfloat *values_address = ((const GLfloat *)offsetToPointer(values_buffer_offset)); + glPixelMapfv(map, mapsize, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glPixelStorei(JNIEnv *env, jclass clazz, jint pname, jint param) { + glPixelStorei(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glPixelStoref(JNIEnv *env, jclass clazz, jint pname, jfloat param) { + glPixelStoref(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glPixelTransferi(JNIEnv *env, jclass clazz, jint pname, jint param) { + glPixelTransferi(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glPixelTransferf(JNIEnv *env, jclass clazz, jint pname, jfloat param) { + glPixelTransferf(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glPixelZoom(JNIEnv *env, jclass clazz, jfloat xfactor, jfloat yfactor) { + glPixelZoom(xfactor, yfactor); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glPointSize(JNIEnv *env, jclass clazz, jfloat size) { + glPointSize(size); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glPolygonMode(JNIEnv *env, jclass clazz, jint face, jint mode) { + glPolygonMode(face, mode); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glPolygonOffset(JNIEnv *env, jclass clazz, jfloat factor, jfloat units) { + glPolygonOffset(factor, units); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglPolygonStipple(JNIEnv *env, jclass clazz, jobject mask, jint mask_position) { + const GLubyte *mask_address = ((const GLubyte *)(*env)->GetDirectBufferAddress(env, mask)) + mask_position; + glPolygonStipple(mask_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglPolygonStippleBO(JNIEnv *env, jclass clazz, jint mask_buffer_offset) { + const GLubyte *mask_address = ((const GLubyte *)offsetToPointer(mask_buffer_offset)); + glPolygonStipple(mask_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glMatrixMode(JNIEnv *env, jclass clazz, jint mode) { + glMatrixMode(mode); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_GL11_glIsTexture(JNIEnv *env, jclass clazz, jint texture) { + GLboolean __result = glIsTexture(texture); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglLightiv(JNIEnv *env, jclass clazz, jint light, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glLightiv(light, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglLightfv(JNIEnv *env, jclass clazz, jint light, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glLightfv(light, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glLighti(JNIEnv *env, jclass clazz, jint light, jint pname, jint param) { + glLighti(light, pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glLightf(JNIEnv *env, jclass clazz, jint light, jint pname, jfloat param) { + glLightf(light, pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglLightModeliv(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glLightModeliv(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglLightModelfv(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glLightModelfv(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glLightModeli(JNIEnv *env, jclass clazz, jint pname, jint param) { + glLightModeli(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glLightModelf(JNIEnv *env, jclass clazz, jint pname, jfloat param) { + glLightModelf(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glLineStipple(JNIEnv *env, jclass clazz, jint factor, jshort pattern) { + glLineStipple(factor, pattern); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glLineWidth(JNIEnv *env, jclass clazz, jfloat width) { + glLineWidth(width); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glListBase(JNIEnv *env, jclass clazz, jint base) { + glListBase(base); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glLoadIdentity(JNIEnv *env, jclass clazz) { + glLoadIdentity(); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglLoadMatrixf(JNIEnv *env, jclass clazz, jobject m, jint m_position) { + const GLfloat *m_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, m)) + m_position; + glLoadMatrixf(m_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glLoadName(JNIEnv *env, jclass clazz, jint name) { + glLoadName(name); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glLogicOp(JNIEnv *env, jclass clazz, jint opcode) { + glLogicOp(opcode); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglMap1f(JNIEnv *env, jclass clazz, jint target, jfloat u1, jfloat u2, jint stride, jint order, jobject points, jint points_position) { + const GLfloat *points_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, points)) + points_position; + glMap1f(target, u1, u2, stride, order, points_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglMap2f(JNIEnv *env, jclass clazz, jint target, jfloat u1, jfloat u2, jint ustride, jint uorder, jfloat v1, jfloat v2, jint vstride, jint vorder, jobject points, jint points_position) { + const GLfloat *points_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, points)) + points_position; + glMap2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glMapGrid2f(JNIEnv *env, jclass clazz, jint un, jfloat u1, jfloat u2, jint vn, jfloat v1, jfloat v2) { + glMapGrid2f(un, u1, u2, vn, v1, v2); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glMapGrid1f(JNIEnv *env, jclass clazz, jint un, jfloat u1, jfloat u2) { + glMapGrid1f(un, u1, u2); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglMaterialiv(JNIEnv *env, jclass clazz, jint face, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glMaterialiv(face, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglMaterialfv(JNIEnv *env, jclass clazz, jint face, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glMaterialfv(face, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glMateriali(JNIEnv *env, jclass clazz, jint face, jint pname, jint param) { + glMateriali(face, pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glMaterialf(JNIEnv *env, jclass clazz, jint face, jint pname, jfloat param) { + glMaterialf(face, pname, param); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_GL11_glIsList(JNIEnv *env, jclass clazz, jint list) { + GLboolean __result = glIsList(list); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPolygonStipple(JNIEnv *env, jclass clazz, jobject mask, jint mask_position) { + GLubyte *mask_address = ((GLubyte *)(*env)->GetDirectBufferAddress(env, mask)) + mask_position; + glGetPolygonStipple(mask_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPolygonStippleBO(JNIEnv *env, jclass clazz, jint mask_buffer_offset) { + GLubyte *mask_address = ((GLubyte *)offsetToPointer(mask_buffer_offset)); + glGetPolygonStipple(mask_address); +} + +static jobject JNICALL Java_org_lwjgl_opengl_GL11_glGetString(JNIEnv *env, jclass clazz, jint name) { + const GLubyte * __result = glGetString(name); + return NewStringNative(env, __result); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexEnvfv(JNIEnv *env, jclass clazz, jint coord, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetTexEnvfv(coord, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexEnviv(JNIEnv *env, jclass clazz, jint coord, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetTexEnviv(coord, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexGenfv(JNIEnv *env, jclass clazz, jint coord, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetTexGenfv(coord, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexGeniv(JNIEnv *env, jclass clazz, jint coord, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetTexGeniv(coord, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexImage(JNIEnv *env, jclass clazz, jint target, jint level, jint format, jint type, jobject pixels, jint pixels_position) { + GLvoid *pixels_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pixels)) + pixels_position)); + glGetTexImage(target, level, format, type, pixels_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexImageBO(JNIEnv *env, jclass clazz, jint target, jint level, jint format, jint type, jint pixels_buffer_offset) { + GLvoid *pixels_address = ((GLvoid *)offsetToPointer(pixels_buffer_offset)); + glGetTexImage(target, level, format, type, pixels_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexLevelParameteriv(JNIEnv *env, jclass clazz, jint target, jint level, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetTexLevelParameteriv(target, level, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexLevelParameterfv(JNIEnv *env, jclass clazz, jint target, jint level, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetTexLevelParameterfv(target, level, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexParameteriv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetTexParameteriv(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetTexParameterfv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetTexParameterfv(target, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glHint(JNIEnv *env, jclass clazz, jint target, jint mode) { + glHint(target, mode); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glInitNames(JNIEnv *env, jclass clazz) { + glInitNames(); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglInterleavedArrays(JNIEnv *env, jclass clazz, jint format, jint stride, jobject pointer, jint pointer_position) { + const GLvoid *pointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pointer)) + pointer_position)); + glInterleavedArrays(format, stride, pointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglInterleavedArraysBO(JNIEnv *env, jclass clazz, jint format, jint stride, jint pointer_buffer_offset) { + const GLvoid *pointer_address = ((const GLvoid *)offsetToPointer(pointer_buffer_offset)); + glInterleavedArrays(format, stride, pointer_address); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_GL11_glIsEnabled(JNIEnv *env, jclass clazz, jint cap) { + GLboolean __result = glIsEnabled(cap); + return __result; +} + +static jobject JNICALL Java_org_lwjgl_opengl_GL11_nglGetPointerv(JNIEnv *env, jclass clazz, jint pname, jint result_size) { + GLvoid * __result; + glGetPointerv(pname, &__result); + return safeNewBuffer(env, __result, result_size); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glFinish(JNIEnv *env, jclass clazz) { + glFinish(); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glFlush(JNIEnv *env, jclass clazz) { + glFlush(); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglFogiv(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + const GLint *params_address = ((const GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glFogiv(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglFogfv(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + const GLfloat *params_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glFogfv(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glFogi(JNIEnv *env, jclass clazz, jint pname, jint param) { + glFogi(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glFogf(JNIEnv *env, jclass clazz, jint pname, jfloat param) { + glFogf(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glFrontFace(JNIEnv *env, jclass clazz, jint mode) { + glFrontFace(mode); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glFrustum(JNIEnv *env, jclass clazz, jdouble left, jdouble right, jdouble bottom, jdouble top, jdouble zNear, jdouble zFar) { + glFrustum(left, right, bottom, top, zNear, zFar); +} + +static jint JNICALL Java_org_lwjgl_opengl_GL11_glGenLists(JNIEnv *env, jclass clazz, jint range) { + GLuint __result = glGenLists(range); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGenTextures(JNIEnv *env, jclass clazz, jint n, jobject textures, jint textures_position) { + GLuint *textures_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, textures)) + textures_position; + glGenTextures(n, textures_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetIntegerv(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetIntegerv(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetFloatv(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetFloatv(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetDoublev(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + GLdouble *params_address = ((GLdouble *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetDoublev(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetBooleanv(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + GLboolean *params_address = ((GLboolean *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetBooleanv(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetClipPlane(JNIEnv *env, jclass clazz, jint plane, jobject equation, jint equation_position) { + GLdouble *equation_address = ((GLdouble *)(*env)->GetDirectBufferAddress(env, equation)) + equation_position; + glGetClipPlane(plane, equation_address); +} + +static jint JNICALL Java_org_lwjgl_opengl_GL11_glGetError(JNIEnv *env, jclass clazz) { + GLint __result = glGetError(); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetLightiv(JNIEnv *env, jclass clazz, jint light, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetLightiv(light, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetLightfv(JNIEnv *env, jclass clazz, jint light, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetLightfv(light, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetMapiv(JNIEnv *env, jclass clazz, jint target, jint query, jobject v, jint v_position) { + GLint *v_address = ((GLint *)(*env)->GetDirectBufferAddress(env, v)) + v_position; + glGetMapiv(target, query, v_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetMapfv(JNIEnv *env, jclass clazz, jint target, jint query, jobject v, jint v_position) { + GLfloat *v_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, v)) + v_position; + glGetMapfv(target, query, v_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetMaterialiv(JNIEnv *env, jclass clazz, jint face, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetMaterialiv(face, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetMaterialfv(JNIEnv *env, jclass clazz, jint face, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetMaterialfv(face, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapusv(JNIEnv *env, jclass clazz, jint map, jobject values, jint values_position) { + GLushort *values_address = ((GLushort *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glGetPixelMapusv(map, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapusvBO(JNIEnv *env, jclass clazz, jint map, jint values_buffer_offset) { + GLushort *values_address = ((GLushort *)offsetToPointer(values_buffer_offset)); + glGetPixelMapusv(map, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapuiv(JNIEnv *env, jclass clazz, jint map, jobject values, jint values_position) { + GLuint *values_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glGetPixelMapuiv(map, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapuivBO(JNIEnv *env, jclass clazz, jint map, jint values_buffer_offset) { + GLuint *values_address = ((GLuint *)offsetToPointer(values_buffer_offset)); + glGetPixelMapuiv(map, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapfv(JNIEnv *env, jclass clazz, jint map, jobject values, jint values_position) { + GLfloat *values_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glGetPixelMapfv(map, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglGetPixelMapfvBO(JNIEnv *env, jclass clazz, jint map, jint values_buffer_offset) { + GLfloat *values_address = ((GLfloat *)offsetToPointer(values_buffer_offset)); + glGetPixelMapfv(map, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglFeedbackBuffer(JNIEnv *env, jclass clazz, jint size, jint type, jobject buffer, jint buffer_position) { + GLfloat *buffer_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, buffer)) + buffer_position; + glFeedbackBuffer(size, type, buffer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glDepthFunc(JNIEnv *env, jclass clazz, jint func) { + glDepthFunc(func); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glDepthMask(JNIEnv *env, jclass clazz, jboolean flag) { + glDepthMask(flag); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glDepthRange(JNIEnv *env, jclass clazz, jdouble zNear, jdouble zFar) { + glDepthRange(zNear, zFar); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glDrawArrays(JNIEnv *env, jclass clazz, jint mode, jint first, jint count) { + glDrawArrays(mode, first, count); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glDrawBuffer(JNIEnv *env, jclass clazz, jint mode) { + glDrawBuffer(mode); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglDrawElements(JNIEnv *env, jclass clazz, jint mode, jint count, jint type, jobject indices, jint indices_position) { + const GLvoid *indices_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, indices)) + indices_position)); + glDrawElements(mode, count, type, indices_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglDrawElementsBO(JNIEnv *env, jclass clazz, jint mode, jint count, jint type, jint indices_buffer_offset) { + const GLvoid *indices_address = ((const GLvoid *)offsetToPointer(indices_buffer_offset)); + glDrawElements(mode, count, type, indices_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglDrawPixels(JNIEnv *env, jclass clazz, jint width, jint height, jint format, jint type, jobject pixels, jint pixels_position) { + const GLvoid *pixels_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pixels)) + pixels_position)); + glDrawPixels(width, height, format, type, pixels_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglDrawPixelsBO(JNIEnv *env, jclass clazz, jint width, jint height, jint format, jint type, jint pixels_buffer_offset) { + const GLvoid *pixels_address = ((const GLvoid *)offsetToPointer(pixels_buffer_offset)); + glDrawPixels(width, height, format, type, pixels_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glEdgeFlag(JNIEnv *env, jclass clazz, jboolean flag) { + glEdgeFlag(flag); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglEdgeFlagPointer(JNIEnv *env, jclass clazz, jint stride, jobject pointer, jint pointer_position) { + const GLvoid *pointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pointer)) + pointer_position)); + glEdgeFlagPointer(stride, pointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglEdgeFlagPointerBO(JNIEnv *env, jclass clazz, jint stride, jint pointer_buffer_offset) { + const GLvoid *pointer_address = ((const GLvoid *)offsetToPointer(pointer_buffer_offset)); + glEdgeFlagPointer(stride, pointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glDisable(JNIEnv *env, jclass clazz, jint cap) { + glDisable(cap); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glEnable(JNIEnv *env, jclass clazz, jint cap) { + glEnable(cap); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glDisableClientState(JNIEnv *env, jclass clazz, jint cap) { + glDisableClientState(cap); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glEnableClientState(JNIEnv *env, jclass clazz, jint cap) { + glEnableClientState(cap); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalCoord2f(JNIEnv *env, jclass clazz, jfloat u, jfloat v) { + glEvalCoord2f(u, v); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalCoord1f(JNIEnv *env, jclass clazz, jfloat u) { + glEvalCoord1f(u); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalMesh2(JNIEnv *env, jclass clazz, jint mode, jint i1, jint i2, jint j1, jint j2) { + glEvalMesh2(mode, i1, i2, j1, j2); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalMesh1(JNIEnv *env, jclass clazz, jint mode, jint i1, jint i2) { + glEvalMesh1(mode, i1, i2); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalPoint2(JNIEnv *env, jclass clazz, jint i, jint j) { + glEvalPoint2(i, j); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glEvalPoint1(JNIEnv *env, jclass clazz, jint i) { + glEvalPoint1(i); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glClearIndex(JNIEnv *env, jclass clazz, jfloat c) { + glClearIndex(c); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glClearStencil(JNIEnv *env, jclass clazz, jint s) { + glClearStencil(s); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglClipPlane(JNIEnv *env, jclass clazz, jint plane, jobject equation, jint equation_position) { + const GLdouble *equation_address = ((const GLdouble *)(*env)->GetDirectBufferAddress(env, equation)) + equation_position; + glClipPlane(plane, equation_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glColor4ub(JNIEnv *env, jclass clazz, jbyte red, jbyte green, jbyte blue, jbyte alpha) { + glColor4ub(red, green, blue, alpha); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glColor4f(JNIEnv *env, jclass clazz, jfloat red, jfloat green, jfloat blue, jfloat alpha) { + glColor4f(red, green, blue, alpha); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glColor4b(JNIEnv *env, jclass clazz, jbyte red, jbyte green, jbyte blue, jbyte alpha) { + glColor4b(red, green, blue, alpha); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glColor3ub(JNIEnv *env, jclass clazz, jbyte red, jbyte green, jbyte blue) { + glColor3ub(red, green, blue); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glColor3f(JNIEnv *env, jclass clazz, jfloat red, jfloat green, jfloat blue) { + glColor3f(red, green, blue); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glColor3b(JNIEnv *env, jclass clazz, jbyte red, jbyte green, jbyte blue) { + glColor3b(red, green, blue); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glColorMask(JNIEnv *env, jclass clazz, jboolean red, jboolean green, jboolean blue, jboolean alpha) { + glColorMask(red, green, blue, alpha); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glColorMaterial(JNIEnv *env, jclass clazz, jint face, jint mode) { + glColorMaterial(face, mode); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglColorPointer(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jobject pointer, jint pointer_position) { + const GLvoid *pointer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pointer)) + pointer_position)); + glColorPointer(size, type, stride, pointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglColorPointerBO(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jint pointer_buffer_offset) { + const GLvoid *pointer_address = ((const GLvoid *)offsetToPointer(pointer_buffer_offset)); + glColorPointer(size, type, stride, pointer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glCopyPixels(JNIEnv *env, jclass clazz, jint x, jint y, jint width, jint height, jint type) { + glCopyPixels(x, y, width, height, type); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glCopyTexImage1D(JNIEnv *env, jclass clazz, jint target, jint level, jint internalFormat, jint x, jint y, jint width, jint border) { + glCopyTexImage1D(target, level, internalFormat, x, y, width, border); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glCopyTexImage2D(JNIEnv *env, jclass clazz, jint target, jint level, jint internalFormat, jint x, jint y, jint width, jint height, jint border) { + glCopyTexImage2D(target, level, internalFormat, x, y, width, height, border); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glCopyTexSubImage1D(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint x, jint y, jint width) { + glCopyTexSubImage1D(target, level, xoffset, x, y, width); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glCopyTexSubImage2D(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint x, jint y, jint width, jint height) { + glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glCullFace(JNIEnv *env, jclass clazz, jint mode) { + glCullFace(mode); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglDeleteTextures(JNIEnv *env, jclass clazz, jint n, jobject textures, jint textures_position) { + const GLuint *textures_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, textures)) + textures_position; + glDeleteTextures(n, textures_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glDeleteLists(JNIEnv *env, jclass clazz, jint list, jint range) { + glDeleteLists(list, range); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glClearDepth(JNIEnv *env, jclass clazz, jdouble depth) { + glClearDepth(depth); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glArrayElement(JNIEnv *env, jclass clazz, jint i) { + glArrayElement(i); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glEnd(JNIEnv *env, jclass clazz) { + glEnd(); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glBegin(JNIEnv *env, jclass clazz, jint mode) { + glBegin(mode); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glBindTexture(JNIEnv *env, jclass clazz, jint target, jint texture) { + glBindTexture(target, texture); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglBitmap(JNIEnv *env, jclass clazz, jint width, jint height, jfloat xorig, jfloat yorig, jfloat xmove, jfloat ymove, jobject bitmap, jint bitmap_position) { + const GLubyte *bitmap_address = ((const GLubyte *)(*env)->GetDirectBufferAddress(env, bitmap)) + bitmap_position; + glBitmap(width, height, xorig, yorig, xmove, ymove, bitmap_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglBitmapBO(JNIEnv *env, jclass clazz, jint width, jint height, jfloat xorig, jfloat yorig, jfloat xmove, jfloat ymove, jint bitmap_buffer_offset) { + const GLubyte *bitmap_address = ((const GLubyte *)offsetToPointer(bitmap_buffer_offset)); + glBitmap(width, height, xorig, yorig, xmove, ymove, bitmap_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glBlendFunc(JNIEnv *env, jclass clazz, jint sfactor, jint dfactor) { + glBlendFunc(sfactor, dfactor); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glCallList(JNIEnv *env, jclass clazz, jint list) { + glCallList(list); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_nglCallLists(JNIEnv *env, jclass clazz, jint n, jint type, jobject lists, jint lists_position) { + const GLvoid *lists_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, lists)) + lists_position)); + glCallLists(n, type, lists_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glClear(JNIEnv *env, jclass clazz, jint mask) { + glClear(mask); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glClearAccum(JNIEnv *env, jclass clazz, jfloat red, jfloat green, jfloat blue, jfloat alpha) { + glClearAccum(red, green, blue, alpha); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glClearColor(JNIEnv *env, jclass clazz, jfloat red, jfloat green, jfloat blue, jfloat alpha) { + glClearColor(red, green, blue, alpha); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glAlphaFunc(JNIEnv *env, jclass clazz, jint func, jfloat ref) { + glAlphaFunc(func, ref); +} + +static void JNICALL Java_org_lwjgl_opengl_GL11_glAccum(JNIEnv *env, jclass clazz, jint op, jfloat value) { + glAccum(op, value); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL11_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glAccum", "(IF)V", (void*)&Java_org_lwjgl_opengl_GL11_glAccum, "glAccum", (void*)&glAccum}, - {"glAlphaFunc", "(IF)V", (void*)&Java_org_lwjgl_opengl_GL11_glAlphaFunc, "glAlphaFunc", (void*)&glAlphaFunc}, - {"glClearColor", "(FFFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glClearColor, "glClearColor", (void*)&glClearColor}, - {"glClearAccum", "(FFFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glClearAccum, "glClearAccum", (void*)&glClearAccum}, - {"glClear", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glClear, "glClear", (void*)&glClear}, - {"nglCallLists", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglCallLists, "glCallLists", (void*)&glCallLists}, - {"glCallList", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glCallList, "glCallList", (void*)&glCallList}, - {"glBlendFunc", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glBlendFunc, "glBlendFunc", (void*)&glBlendFunc}, - {"nglBitmap", "(IIFFFFLjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglBitmap, "glBitmap", (void*)&glBitmap}, - {"nglBitmapBO", "(IIFFFFI)V", (void*)&Java_org_lwjgl_opengl_GL11_nglBitmapBO, NULL, NULL}, - {"glBindTexture", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glBindTexture, "glBindTexture", (void*)&glBindTexture}, - {"glBegin", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glBegin, "glBegin", (void*)&glBegin}, - {"glEnd", "()V", (void*)&Java_org_lwjgl_opengl_GL11_glEnd, "glEnd", (void*)&glEnd}, - {"glArrayElement", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glArrayElement, "glArrayElement", (void*)&glArrayElement}, - {"glClearDepth", "(D)V", (void*)&Java_org_lwjgl_opengl_GL11_glClearDepth, "glClearDepth", (void*)&glClearDepth}, - {"glDeleteLists", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glDeleteLists, "glDeleteLists", (void*)&glDeleteLists}, - {"nglDeleteTextures", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglDeleteTextures, "glDeleteTextures", (void*)&glDeleteTextures}, - {"glCullFace", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glCullFace, "glCullFace", (void*)&glCullFace}, - {"glCopyTexSubImage2D", "(IIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glCopyTexSubImage2D, "glCopyTexSubImage2D", (void*)&glCopyTexSubImage2D}, - {"glCopyTexSubImage1D", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glCopyTexSubImage1D, "glCopyTexSubImage1D", (void*)&glCopyTexSubImage1D}, - {"glCopyTexImage2D", "(IIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glCopyTexImage2D, "glCopyTexImage2D", (void*)&glCopyTexImage2D}, - {"glCopyTexImage1D", "(IIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glCopyTexImage1D, "glCopyTexImage1D", (void*)&glCopyTexImage1D}, - {"glCopyPixels", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glCopyPixels, "glCopyPixels", (void*)&glCopyPixels}, - {"nglColorPointer", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglColorPointer, "glColorPointer", (void*)&glColorPointer}, - {"nglColorPointerVBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglColorPointerVBO, NULL, NULL}, - {"glColorMaterial", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glColorMaterial, "glColorMaterial", (void*)&glColorMaterial}, - {"glColorMask", "(ZZZZ)V", (void*)&Java_org_lwjgl_opengl_GL11_glColorMask, "glColorMask", (void*)&glColorMask}, - {"glColor3b", "(BBB)V", (void*)&Java_org_lwjgl_opengl_GL11_glColor3b, "glColor3b", (void*)&glColor3b}, - {"glColor3f", "(FFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glColor3f, "glColor3f", (void*)&glColor3f}, - {"glColor3ub", "(BBB)V", (void*)&Java_org_lwjgl_opengl_GL11_glColor3ub, "glColor3ub", (void*)&glColor3ub}, - {"glColor4b", "(BBBB)V", (void*)&Java_org_lwjgl_opengl_GL11_glColor4b, "glColor4b", (void*)&glColor4b}, - {"glColor4f", "(FFFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glColor4f, "glColor4f", (void*)&glColor4f}, - {"glColor4ub", "(BBBB)V", (void*)&Java_org_lwjgl_opengl_GL11_glColor4ub, "glColor4ub", (void*)&glColor4ub}, - {"nglClipPlane", "(ILjava/nio/DoubleBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglClipPlane, "glClipPlane", (void*)&glClipPlane}, - {"glClearStencil", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glClearStencil, "glClearStencil", (void*)&glClearStencil}, - {"glClearIndex", "(F)V", (void*)&Java_org_lwjgl_opengl_GL11_glClearIndex, "glClearIndex", (void*)&glClearIndex}, - {"glEvalPoint1", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glEvalPoint1, "glEvalPoint1", (void*)&glEvalPoint1}, - {"glEvalPoint2", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glEvalPoint2, "glEvalPoint2", (void*)&glEvalPoint2}, - {"glEvalMesh1", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glEvalMesh1, "glEvalMesh1", (void*)&glEvalMesh1}, - {"glEvalMesh2", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glEvalMesh2, "glEvalMesh2", (void*)&glEvalMesh2}, - {"glEvalCoord1f", "(F)V", (void*)&Java_org_lwjgl_opengl_GL11_glEvalCoord1f, "glEvalCoord1f", (void*)&glEvalCoord1f}, - {"glEvalCoord2f", "(FF)V", (void*)&Java_org_lwjgl_opengl_GL11_glEvalCoord2f, "glEvalCoord2f", (void*)&glEvalCoord2f}, - {"glEnableClientState", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glEnableClientState, "glEnableClientState", (void*)&glEnableClientState}, - {"glDisableClientState", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glDisableClientState, "glDisableClientState", (void*)&glDisableClientState}, - {"glEnable", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glEnable, "glEnable", (void*)&glEnable}, - {"glDisable", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glDisable, "glDisable", (void*)&glDisable}, - {"nglEdgeFlagPointer", "(ILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglEdgeFlagPointer, "glEdgeFlagPointer", (void*)&glEdgeFlagPointer}, - {"nglEdgeFlagPointerVBO", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_nglEdgeFlagPointerVBO, NULL, NULL}, - {"glEdgeFlag", "(Z)V", (void*)&Java_org_lwjgl_opengl_GL11_glEdgeFlag, "glEdgeFlag", (void*)&glEdgeFlag}, - {"nglDrawPixels", "(IIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglDrawPixels, "glDrawPixels", (void*)&glDrawPixels}, - {"nglDrawPixelsBO", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglDrawPixelsBO, NULL, NULL}, - {"nglDrawElements", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglDrawElements, "glDrawElements", (void*)&glDrawElements}, - {"nglDrawElementsVBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglDrawElementsVBO, NULL, NULL}, - {"glDrawBuffer", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glDrawBuffer, "glDrawBuffer", (void*)&glDrawBuffer}, - {"glDrawArrays", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glDrawArrays, "glDrawArrays", (void*)&glDrawArrays}, - {"glDepthRange", "(DD)V", (void*)&Java_org_lwjgl_opengl_GL11_glDepthRange, "glDepthRange", (void*)&glDepthRange}, - {"glDepthMask", "(Z)V", (void*)&Java_org_lwjgl_opengl_GL11_glDepthMask, "glDepthMask", (void*)&glDepthMask}, - {"glDepthFunc", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glDepthFunc, "glDepthFunc", (void*)&glDepthFunc}, - {"nglFeedbackBuffer", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglFeedbackBuffer, "glFeedbackBuffer", (void*)&glFeedbackBuffer}, - {"nglGetPixelMapfv", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapfv, "glGetPixelMapfv", (void*)&glGetPixelMapfv}, - {"nglGetPixelMapfvBO", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapfvBO, NULL, NULL}, - {"nglGetPixelMapuiv", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapuiv, "glGetPixelMapuiv", (void*)&glGetPixelMapuiv}, - {"nglGetPixelMapuivBO", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapuivBO, NULL, NULL}, - {"nglGetPixelMapusv", "(ILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapusv, "glGetPixelMapusv", (void*)&glGetPixelMapusv}, - {"nglGetPixelMapusvBO", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapusvBO, NULL, NULL}, - {"nglGetMaterialfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetMaterialfv, "glGetMaterialfv", (void*)&glGetMaterialfv}, - {"nglGetMaterialiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetMaterialiv, "glGetMaterialiv", (void*)&glGetMaterialiv}, - {"nglGetMapfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetMapfv, "glGetMapfv", (void*)&glGetMapfv}, - {"nglGetMapiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetMapiv, "glGetMapiv", (void*)&glGetMapiv}, - {"nglGetLightfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetLightfv, "glGetLightfv", (void*)&glGetLightfv}, - {"nglGetLightiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetLightiv, "glGetLightiv", (void*)&glGetLightiv}, - {"glGetError", "()I", (void*)&Java_org_lwjgl_opengl_GL11_glGetError, "glGetError", (void*)&glGetError}, - {"nglGetClipPlane", "(ILjava/nio/DoubleBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetClipPlane, "glGetClipPlane", (void*)&glGetClipPlane}, - {"nglGetBooleanv", "(ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetBooleanv, "glGetBooleanv", (void*)&glGetBooleanv}, - {"nglGetDoublev", "(ILjava/nio/DoubleBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetDoublev, "glGetDoublev", (void*)&glGetDoublev}, - {"nglGetFloatv", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetFloatv, "glGetFloatv", (void*)&glGetFloatv}, - {"nglGetIntegerv", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetIntegerv, "glGetIntegerv", (void*)&glGetIntegerv}, - {"nglGenTextures", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGenTextures, "glGenTextures", (void*)&glGenTextures}, - {"glGenLists", "(I)I", (void*)&Java_org_lwjgl_opengl_GL11_glGenLists, "glGenLists", (void*)&glGenLists}, - {"glFrustum", "(DDDDDD)V", (void*)&Java_org_lwjgl_opengl_GL11_glFrustum, "glFrustum", (void*)&glFrustum}, - {"glFrontFace", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glFrontFace, "glFrontFace", (void*)&glFrontFace}, - {"glFogf", "(IF)V", (void*)&Java_org_lwjgl_opengl_GL11_glFogf, "glFogf", (void*)&glFogf}, - {"glFogi", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glFogi, "glFogi", (void*)&glFogi}, - {"nglFogfv", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglFogfv, "glFogfv", (void*)&glFogfv}, - {"nglFogiv", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglFogiv, "glFogiv", (void*)&glFogiv}, - {"glFlush", "()V", (void*)&Java_org_lwjgl_opengl_GL11_glFlush, "glFlush", (void*)&glFlush}, - {"glFinish", "()V", (void*)&Java_org_lwjgl_opengl_GL11_glFinish, "glFinish", (void*)&glFinish}, - {"glGetPointerv", "(II)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_GL11_glGetPointerv, "glGetPointerv", (void*)&glGetPointerv}, - {"glIsEnabled", "(I)Z", (void*)&Java_org_lwjgl_opengl_GL11_glIsEnabled, "glIsEnabled", (void*)&glIsEnabled}, - {"nglInterleavedArrays", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglInterleavedArrays, "glInterleavedArrays", (void*)&glInterleavedArrays}, - {"nglInterleavedArraysVBO", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_nglInterleavedArraysVBO, NULL, NULL}, - {"glInitNames", "()V", (void*)&Java_org_lwjgl_opengl_GL11_glInitNames, "glInitNames", (void*)&glInitNames}, - {"glHint", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glHint, "glHint", (void*)&glHint}, - {"nglGetTexParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetTexParameterfv, "glGetTexParameterfv", (void*)&glGetTexParameterfv}, - {"nglGetTexParameteriv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetTexParameteriv, "glGetTexParameteriv", (void*)&glGetTexParameteriv}, - {"nglGetTexLevelParameterfv", "(IIILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetTexLevelParameterfv, "glGetTexLevelParameterfv", (void*)&glGetTexLevelParameterfv}, - {"nglGetTexLevelParameteriv", "(IIILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetTexLevelParameteriv, "glGetTexLevelParameteriv", (void*)&glGetTexLevelParameteriv}, - {"nglGetTexImage", "(IIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetTexImage, "glGetTexImage", (void*)&glGetTexImage}, - {"nglGetTexImageBO", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetTexImageBO, NULL, NULL}, - {"nglGetTexGeniv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetTexGeniv, "glGetTexGeniv", (void*)&glGetTexGeniv}, - {"nglGetTexGenfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetTexGenfv, "glGetTexGenfv", (void*)&glGetTexGenfv}, - {"nglGetTexEnviv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetTexEnviv, "glGetTexEnviv", (void*)&glGetTexEnviv}, - {"nglGetTexEnvfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetTexEnvfv, "glGetTexEnvfv", (void*)&glGetTexEnvfv}, - {"glGetString", "(I)Ljava/lang/String;", (void*)&Java_org_lwjgl_opengl_GL11_glGetString, "glGetString", (void*)&glGetString}, - {"nglGetPolygonStipple", "(Ljava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetPolygonStipple, "glGetPolygonStipple", (void*)&glGetPolygonStipple}, - {"nglGetPolygonStippleBO", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglGetPolygonStippleBO, NULL, NULL}, - {"glIsList", "(I)Z", (void*)&Java_org_lwjgl_opengl_GL11_glIsList, "glIsList", (void*)&glIsList}, - {"glMaterialf", "(IIF)V", (void*)&Java_org_lwjgl_opengl_GL11_glMaterialf, "glMaterialf", (void*)&glMaterialf}, - {"glMateriali", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glMateriali, "glMateriali", (void*)&glMateriali}, - {"nglMaterialfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglMaterialfv, "glMaterialfv", (void*)&glMaterialfv}, - {"nglMaterialiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglMaterialiv, "glMaterialiv", (void*)&glMaterialiv}, - {"glMapGrid1f", "(IFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glMapGrid1f, "glMapGrid1f", (void*)&glMapGrid1f}, - {"glMapGrid2f", "(IFFIFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glMapGrid2f, "glMapGrid2f", (void*)&glMapGrid2f}, - {"nglMap2f", "(IFFIIFFIILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglMap2f, "glMap2f", (void*)&glMap2f}, - {"nglMap1f", "(IFFIILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglMap1f, "glMap1f", (void*)&glMap1f}, - {"glLogicOp", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glLogicOp, "glLogicOp", (void*)&glLogicOp}, - {"glLoadName", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glLoadName, "glLoadName", (void*)&glLoadName}, - {"nglLoadMatrixf", "(Ljava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglLoadMatrixf, "glLoadMatrixf", (void*)&glLoadMatrixf}, - {"glLoadIdentity", "()V", (void*)&Java_org_lwjgl_opengl_GL11_glLoadIdentity, "glLoadIdentity", (void*)&glLoadIdentity}, - {"glListBase", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glListBase, "glListBase", (void*)&glListBase}, - {"glLineWidth", "(F)V", (void*)&Java_org_lwjgl_opengl_GL11_glLineWidth, "glLineWidth", (void*)&glLineWidth}, - {"glLineStipple", "(IS)V", (void*)&Java_org_lwjgl_opengl_GL11_glLineStipple, "glLineStipple", (void*)&glLineStipple}, - {"glLightModelf", "(IF)V", (void*)&Java_org_lwjgl_opengl_GL11_glLightModelf, "glLightModelf", (void*)&glLightModelf}, - {"glLightModeli", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glLightModeli, "glLightModeli", (void*)&glLightModeli}, - {"nglLightModelfv", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglLightModelfv, "glLightModelfv", (void*)&glLightModelfv}, - {"nglLightModeliv", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglLightModeliv, "glLightModeliv", (void*)&glLightModeliv}, - {"glLightf", "(IIF)V", (void*)&Java_org_lwjgl_opengl_GL11_glLightf, "glLightf", (void*)&glLightf}, - {"glLighti", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glLighti, "glLighti", (void*)&glLighti}, - {"nglLightfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglLightfv, "glLightfv", (void*)&glLightfv}, - {"nglLightiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglLightiv, "glLightiv", (void*)&glLightiv}, - {"glIsTexture", "(I)Z", (void*)&Java_org_lwjgl_opengl_GL11_glIsTexture, "glIsTexture", (void*)&glIsTexture}, - {"glMatrixMode", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glMatrixMode, "glMatrixMode", (void*)&glMatrixMode}, - {"nglPolygonStipple", "(Ljava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglPolygonStipple, "glPolygonStipple", (void*)&glPolygonStipple}, - {"nglPolygonStippleBO", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglPolygonStippleBO, NULL, NULL}, - {"glPolygonOffset", "(FF)V", (void*)&Java_org_lwjgl_opengl_GL11_glPolygonOffset, "glPolygonOffset", (void*)&glPolygonOffset}, - {"glPolygonMode", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glPolygonMode, "glPolygonMode", (void*)&glPolygonMode}, - {"glPointSize", "(F)V", (void*)&Java_org_lwjgl_opengl_GL11_glPointSize, "glPointSize", (void*)&glPointSize}, - {"glPixelZoom", "(FF)V", (void*)&Java_org_lwjgl_opengl_GL11_glPixelZoom, "glPixelZoom", (void*)&glPixelZoom}, - {"glPixelTransferf", "(IF)V", (void*)&Java_org_lwjgl_opengl_GL11_glPixelTransferf, "glPixelTransferf", (void*)&glPixelTransferf}, - {"glPixelTransferi", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glPixelTransferi, "glPixelTransferi", (void*)&glPixelTransferi}, - {"glPixelStoref", "(IF)V", (void*)&Java_org_lwjgl_opengl_GL11_glPixelStoref, "glPixelStoref", (void*)&glPixelStoref}, - {"glPixelStorei", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glPixelStorei, "glPixelStorei", (void*)&glPixelStorei}, - {"nglPixelMapfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglPixelMapfv, "glPixelMapfv", (void*)&glPixelMapfv}, - {"nglPixelMapfvBO", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_nglPixelMapfvBO, NULL, NULL}, - {"nglPixelMapuiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglPixelMapuiv, "glPixelMapuiv", (void*)&glPixelMapuiv}, - {"nglPixelMapuivBO", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_nglPixelMapuivBO, NULL, NULL}, - {"nglPixelMapusv", "(IILjava/nio/ShortBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglPixelMapusv, "glPixelMapusv", (void*)&glPixelMapusv}, - {"nglPixelMapusvBO", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_nglPixelMapusvBO, NULL, NULL}, - {"glPassThrough", "(F)V", (void*)&Java_org_lwjgl_opengl_GL11_glPassThrough, "glPassThrough", (void*)&glPassThrough}, - {"glOrtho", "(DDDDDD)V", (void*)&Java_org_lwjgl_opengl_GL11_glOrtho, "glOrtho", (void*)&glOrtho}, - {"nglNormalPointer", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglNormalPointer, "glNormalPointer", (void*)&glNormalPointer}, - {"nglNormalPointerVBO", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_nglNormalPointerVBO, NULL, NULL}, - {"glNormal3b", "(BBB)V", (void*)&Java_org_lwjgl_opengl_GL11_glNormal3b, "glNormal3b", (void*)&glNormal3b}, - {"glNormal3f", "(FFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glNormal3f, "glNormal3f", (void*)&glNormal3f}, - {"glNormal3i", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glNormal3i, "glNormal3i", (void*)&glNormal3i}, - {"glNewList", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glNewList, "glNewList", (void*)&glNewList}, - {"glEndList", "()V", (void*)&Java_org_lwjgl_opengl_GL11_glEndList, "glEndList", (void*)&glEndList}, - {"nglMultMatrixf", "(Ljava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglMultMatrixf, "glMultMatrixf", (void*)&glMultMatrixf}, - {"glShadeModel", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glShadeModel, "glShadeModel", (void*)&glShadeModel}, - {"nglSelectBuffer", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglSelectBuffer, "glSelectBuffer", (void*)&glSelectBuffer}, - {"glScissor", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glScissor, "glScissor", (void*)&glScissor}, - {"glScalef", "(FFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glScalef, "glScalef", (void*)&glScalef}, - {"glRotatef", "(FFFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glRotatef, "glRotatef", (void*)&glRotatef}, - {"glRenderMode", "(I)I", (void*)&Java_org_lwjgl_opengl_GL11_glRenderMode, "glRenderMode", (void*)&glRenderMode}, - {"glRectf", "(FFFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glRectf, "glRectf", (void*)&glRectf}, - {"glRecti", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glRecti, "glRecti", (void*)&glRecti}, - {"nglReadPixels", "(IIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglReadPixels, "glReadPixels", (void*)&glReadPixels}, - {"nglReadPixelsBO", "(IIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglReadPixelsBO, NULL, NULL}, - {"glReadBuffer", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glReadBuffer, "glReadBuffer", (void*)&glReadBuffer}, - {"glRasterPos2f", "(FF)V", (void*)&Java_org_lwjgl_opengl_GL11_glRasterPos2f, "glRasterPos2f", (void*)&glRasterPos2f}, - {"glRasterPos2i", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glRasterPos2i, "glRasterPos2i", (void*)&glRasterPos2i}, - {"glRasterPos3f", "(FFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glRasterPos3f, "glRasterPos3f", (void*)&glRasterPos3f}, - {"glRasterPos3i", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glRasterPos3i, "glRasterPos3i", (void*)&glRasterPos3i}, - {"glRasterPos4f", "(FFFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glRasterPos4f, "glRasterPos4f", (void*)&glRasterPos4f}, - {"glRasterPos4i", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glRasterPos4i, "glRasterPos4i", (void*)&glRasterPos4i}, - {"glPushName", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glPushName, "glPushName", (void*)&glPushName}, - {"glPopName", "()V", (void*)&Java_org_lwjgl_opengl_GL11_glPopName, "glPopName", (void*)&glPopName}, - {"glPushMatrix", "()V", (void*)&Java_org_lwjgl_opengl_GL11_glPushMatrix, "glPushMatrix", (void*)&glPushMatrix}, - {"glPopMatrix", "()V", (void*)&Java_org_lwjgl_opengl_GL11_glPopMatrix, "glPopMatrix", (void*)&glPopMatrix}, - {"nglPushClientAttrib", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglPushClientAttrib, "glPushClientAttrib", (void*)&glPushClientAttrib}, - {"nglPopClientAttrib", "()V", (void*)&Java_org_lwjgl_opengl_GL11_nglPopClientAttrib, "glPopClientAttrib", (void*)&glPopClientAttrib}, - {"glPushAttrib", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glPushAttrib, "glPushAttrib", (void*)&glPushAttrib}, - {"glPopAttrib", "()V", (void*)&Java_org_lwjgl_opengl_GL11_glPopAttrib, "glPopAttrib", (void*)&glPopAttrib}, - {"glStencilFunc", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glStencilFunc, "glStencilFunc", (void*)&glStencilFunc}, - {"nglVertexPointer", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglVertexPointer, "glVertexPointer", (void*)&glVertexPointer}, - {"nglVertexPointerVBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglVertexPointerVBO, NULL, NULL}, - {"glVertex2f", "(FF)V", (void*)&Java_org_lwjgl_opengl_GL11_glVertex2f, "glVertex2f", (void*)&glVertex2f}, - {"glVertex2i", "(II)V", (void*)&Java_org_lwjgl_opengl_GL11_glVertex2i, "glVertex2i", (void*)&glVertex2i}, - {"glVertex3f", "(FFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glVertex3f, "glVertex3f", (void*)&glVertex3f}, - {"glVertex3i", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glVertex3i, "glVertex3i", (void*)&glVertex3i}, - {"glVertex4f", "(FFFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glVertex4f, "glVertex4f", (void*)&glVertex4f}, - {"glVertex4i", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glVertex4i, "glVertex4i", (void*)&glVertex4i}, - {"glTranslatef", "(FFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glTranslatef, "glTranslatef", (void*)&glTranslatef}, - {"nglTexSubImage2D", "(IIIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexSubImage2D, "glTexSubImage2D", (void*)&glTexSubImage2D}, - {"nglTexSubImage2DBO", "(IIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexSubImage2DBO, NULL, NULL}, - {"nglTexSubImage1D", "(IIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexSubImage1D, "glTexSubImage1D", (void*)&glTexSubImage1D}, - {"nglTexSubImage1DBO", "(IIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexSubImage1DBO, NULL, NULL}, - {"glTexParameterf", "(IIF)V", (void*)&Java_org_lwjgl_opengl_GL11_glTexParameterf, "glTexParameterf", (void*)&glTexParameterf}, - {"glTexParameteri", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glTexParameteri, "glTexParameteri", (void*)&glTexParameteri}, - {"nglTexParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexParameterfv, "glTexParameterfv", (void*)&glTexParameterfv}, - {"nglTexParameteriv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexParameteriv, "glTexParameteriv", (void*)&glTexParameteriv}, - {"nglTexImage2D", "(IIIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexImage2D, "glTexImage2D", (void*)&glTexImage2D}, - {"nglTexImage2DBO", "(IIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexImage2DBO, NULL, NULL}, - {"nglTexImage1D", "(IIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexImage1D, "glTexImage1D", (void*)&glTexImage1D}, - {"nglTexImage1DBO", "(IIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexImage1DBO, NULL, NULL}, - {"glTexGenf", "(IIF)V", (void*)&Java_org_lwjgl_opengl_GL11_glTexGenf, "glTexGenf", (void*)&glTexGenf}, - {"nglTexGenfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexGenfv, "glTexGenfv", (void*)&glTexGenfv}, - {"glTexGeni", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glTexGeni, "glTexGeni", (void*)&glTexGeni}, - {"nglTexGeniv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexGeniv, "glTexGeniv", (void*)&glTexGeniv}, - {"glTexEnvf", "(IIF)V", (void*)&Java_org_lwjgl_opengl_GL11_glTexEnvf, "glTexEnvf", (void*)&glTexEnvf}, - {"glTexEnvi", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glTexEnvi, "glTexEnvi", (void*)&glTexEnvi}, - {"nglTexEnvfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexEnvfv, "glTexEnvfv", (void*)&glTexEnvfv}, - {"nglTexEnviv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexEnviv, "glTexEnviv", (void*)&glTexEnviv}, - {"nglTexCoordPointer", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexCoordPointer, "glTexCoordPointer", (void*)&glTexCoordPointer}, - {"nglTexCoordPointerVBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL11_nglTexCoordPointerVBO, NULL, NULL}, - {"glTexCoord1f", "(F)V", (void*)&Java_org_lwjgl_opengl_GL11_glTexCoord1f, "glTexCoord1f", (void*)&glTexCoord1f}, - {"glTexCoord2f", "(FF)V", (void*)&Java_org_lwjgl_opengl_GL11_glTexCoord2f, "glTexCoord2f", (void*)&glTexCoord2f}, - {"glTexCoord3f", "(FFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glTexCoord3f, "glTexCoord3f", (void*)&glTexCoord3f}, - {"glTexCoord4f", "(FFFF)V", (void*)&Java_org_lwjgl_opengl_GL11_glTexCoord4f, "glTexCoord4f", (void*)&glTexCoord4f}, - {"glStencilOp", "(III)V", (void*)&Java_org_lwjgl_opengl_GL11_glStencilOp, "glStencilOp", (void*)&glStencilOp}, - {"glStencilMask", "(I)V", (void*)&Java_org_lwjgl_opengl_GL11_glStencilMask, "glStencilMask", (void*)&glStencilMask}, - {"glViewport", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL11_glViewport, "glViewport", (void*)&glViewport} + {"glViewport", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glViewport, "glViewport", (void *)&glViewport}, + {"glStencilMask", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glStencilMask, "glStencilMask", (void *)&glStencilMask}, + {"glStencilOp", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glStencilOp, "glStencilOp", (void *)&glStencilOp}, + {"glTexCoord4f", "(FFFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glTexCoord4f, "glTexCoord4f", (void *)&glTexCoord4f}, + {"glTexCoord3f", "(FFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glTexCoord3f, "glTexCoord3f", (void *)&glTexCoord3f}, + {"glTexCoord2f", "(FF)V", (void *)&Java_org_lwjgl_opengl_GL11_glTexCoord2f, "glTexCoord2f", (void *)&glTexCoord2f}, + {"glTexCoord1f", "(F)V", (void *)&Java_org_lwjgl_opengl_GL11_glTexCoord1f, "glTexCoord1f", (void *)&glTexCoord1f}, + {"nglTexCoordPointer", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexCoordPointer, "glTexCoordPointer", (void *)&glTexCoordPointer}, + {"nglTexCoordPointerBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexCoordPointerBO, "glTexCoordPointer", (void *)&glTexCoordPointer}, + {"nglTexEnviv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexEnviv, "glTexEnviv", (void *)&glTexEnviv}, + {"nglTexEnvfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexEnvfv, "glTexEnvfv", (void *)&glTexEnvfv}, + {"glTexEnvi", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glTexEnvi, "glTexEnvi", (void *)&glTexEnvi}, + {"glTexEnvf", "(IIF)V", (void *)&Java_org_lwjgl_opengl_GL11_glTexEnvf, "glTexEnvf", (void *)&glTexEnvf}, + {"nglTexGeniv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexGeniv, "glTexGeniv", (void *)&glTexGeniv}, + {"glTexGeni", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glTexGeni, "glTexGeni", (void *)&glTexGeni}, + {"nglTexGenfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexGenfv, "glTexGenfv", (void *)&glTexGenfv}, + {"glTexGenf", "(IIF)V", (void *)&Java_org_lwjgl_opengl_GL11_glTexGenf, "glTexGenf", (void *)&glTexGenf}, + {"nglTexParameteriv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexParameteriv, "glTexParameteriv", (void *)&glTexParameteriv}, + {"nglTexParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexParameterfv, "glTexParameterfv", (void *)&glTexParameterfv}, + {"glTexParameteri", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glTexParameteri, "glTexParameteri", (void *)&glTexParameteri}, + {"glTexParameterf", "(IIF)V", (void *)&Java_org_lwjgl_opengl_GL11_glTexParameterf, "glTexParameterf", (void *)&glTexParameterf}, + {"nglTexSubImage2D", "(IIIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexSubImage2D, "glTexSubImage2D", (void *)&glTexSubImage2D}, + {"nglTexSubImage2DBO", "(IIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexSubImage2DBO, "glTexSubImage2D", (void *)&glTexSubImage2D}, + {"nglTexSubImage1D", "(IIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexSubImage1D, "glTexSubImage1D", (void *)&glTexSubImage1D}, + {"nglTexSubImage1DBO", "(IIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexSubImage1DBO, "glTexSubImage1D", (void *)&glTexSubImage1D}, + {"nglTexImage2D", "(IIIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexImage2D, "glTexImage2D", (void *)&glTexImage2D}, + {"nglTexImage2DBO", "(IIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexImage2DBO, "glTexImage2D", (void *)&glTexImage2D}, + {"nglTexImage1D", "(IIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexImage1D, "glTexImage1D", (void *)&glTexImage1D}, + {"nglTexImage1DBO", "(IIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglTexImage1DBO, "glTexImage1D", (void *)&glTexImage1D}, + {"glTranslatef", "(FFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glTranslatef, "glTranslatef", (void *)&glTranslatef}, + {"glVertex4i", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glVertex4i, "glVertex4i", (void *)&glVertex4i}, + {"glVertex4f", "(FFFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glVertex4f, "glVertex4f", (void *)&glVertex4f}, + {"glVertex3i", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glVertex3i, "glVertex3i", (void *)&glVertex3i}, + {"glVertex3f", "(FFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glVertex3f, "glVertex3f", (void *)&glVertex3f}, + {"glVertex2i", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glVertex2i, "glVertex2i", (void *)&glVertex2i}, + {"glVertex2f", "(FF)V", (void *)&Java_org_lwjgl_opengl_GL11_glVertex2f, "glVertex2f", (void *)&glVertex2f}, + {"nglVertexPointer", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglVertexPointer, "glVertexPointer", (void *)&glVertexPointer}, + {"nglVertexPointerBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglVertexPointerBO, "glVertexPointer", (void *)&glVertexPointer}, + {"glStencilFunc", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glStencilFunc, "glStencilFunc", (void *)&glStencilFunc}, + {"glPopAttrib", "()V", (void *)&Java_org_lwjgl_opengl_GL11_glPopAttrib, "glPopAttrib", (void *)&glPopAttrib}, + {"glPushAttrib", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glPushAttrib, "glPushAttrib", (void *)&glPushAttrib}, + {"nglPopClientAttrib", "()V", (void *)&Java_org_lwjgl_opengl_GL11_nglPopClientAttrib, "glPopClientAttrib", (void *)&glPopClientAttrib}, + {"nglPushClientAttrib", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglPushClientAttrib, "glPushClientAttrib", (void *)&glPushClientAttrib}, + {"glPopMatrix", "()V", (void *)&Java_org_lwjgl_opengl_GL11_glPopMatrix, "glPopMatrix", (void *)&glPopMatrix}, + {"glPushMatrix", "()V", (void *)&Java_org_lwjgl_opengl_GL11_glPushMatrix, "glPushMatrix", (void *)&glPushMatrix}, + {"glPopName", "()V", (void *)&Java_org_lwjgl_opengl_GL11_glPopName, "glPopName", (void *)&glPopName}, + {"glPushName", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glPushName, "glPushName", (void *)&glPushName}, + {"glRasterPos4i", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glRasterPos4i, "glRasterPos4i", (void *)&glRasterPos4i}, + {"glRasterPos4f", "(FFFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glRasterPos4f, "glRasterPos4f", (void *)&glRasterPos4f}, + {"glRasterPos3i", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glRasterPos3i, "glRasterPos3i", (void *)&glRasterPos3i}, + {"glRasterPos3f", "(FFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glRasterPos3f, "glRasterPos3f", (void *)&glRasterPos3f}, + {"glRasterPos2i", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glRasterPos2i, "glRasterPos2i", (void *)&glRasterPos2i}, + {"glRasterPos2f", "(FF)V", (void *)&Java_org_lwjgl_opengl_GL11_glRasterPos2f, "glRasterPos2f", (void *)&glRasterPos2f}, + {"glReadBuffer", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glReadBuffer, "glReadBuffer", (void *)&glReadBuffer}, + {"nglReadPixels", "(IIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglReadPixels, "glReadPixels", (void *)&glReadPixels}, + {"nglReadPixelsBO", "(IIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglReadPixelsBO, "glReadPixels", (void *)&glReadPixels}, + {"glRecti", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glRecti, "glRecti", (void *)&glRecti}, + {"glRectf", "(FFFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glRectf, "glRectf", (void *)&glRectf}, + {"glRenderMode", "(I)I", (void *)&Java_org_lwjgl_opengl_GL11_glRenderMode, "glRenderMode", (void *)&glRenderMode}, + {"glRotatef", "(FFFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glRotatef, "glRotatef", (void *)&glRotatef}, + {"glScalef", "(FFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glScalef, "glScalef", (void *)&glScalef}, + {"glScissor", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glScissor, "glScissor", (void *)&glScissor}, + {"nglSelectBuffer", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglSelectBuffer, "glSelectBuffer", (void *)&glSelectBuffer}, + {"glShadeModel", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glShadeModel, "glShadeModel", (void *)&glShadeModel}, + {"nglMultMatrixf", "(Ljava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglMultMatrixf, "glMultMatrixf", (void *)&glMultMatrixf}, + {"glEndList", "()V", (void *)&Java_org_lwjgl_opengl_GL11_glEndList, "glEndList", (void *)&glEndList}, + {"glNewList", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glNewList, "glNewList", (void *)&glNewList}, + {"glNormal3i", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glNormal3i, "glNormal3i", (void *)&glNormal3i}, + {"glNormal3f", "(FFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glNormal3f, "glNormal3f", (void *)&glNormal3f}, + {"glNormal3b", "(BBB)V", (void *)&Java_org_lwjgl_opengl_GL11_glNormal3b, "glNormal3b", (void *)&glNormal3b}, + {"nglNormalPointer", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglNormalPointer, "glNormalPointer", (void *)&glNormalPointer}, + {"nglNormalPointerBO", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_nglNormalPointerBO, "glNormalPointer", (void *)&glNormalPointer}, + {"glOrtho", "(DDDDDD)V", (void *)&Java_org_lwjgl_opengl_GL11_glOrtho, "glOrtho", (void *)&glOrtho}, + {"glPassThrough", "(F)V", (void *)&Java_org_lwjgl_opengl_GL11_glPassThrough, "glPassThrough", (void *)&glPassThrough}, + {"nglPixelMapusv", "(IILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglPixelMapusv, "glPixelMapusv", (void *)&glPixelMapusv}, + {"nglPixelMapusvBO", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_nglPixelMapusvBO, "glPixelMapusv", (void *)&glPixelMapusv}, + {"nglPixelMapuiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglPixelMapuiv, "glPixelMapuiv", (void *)&glPixelMapuiv}, + {"nglPixelMapuivBO", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_nglPixelMapuivBO, "glPixelMapuiv", (void *)&glPixelMapuiv}, + {"nglPixelMapfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglPixelMapfv, "glPixelMapfv", (void *)&glPixelMapfv}, + {"nglPixelMapfvBO", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_nglPixelMapfvBO, "glPixelMapfv", (void *)&glPixelMapfv}, + {"glPixelStorei", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glPixelStorei, "glPixelStorei", (void *)&glPixelStorei}, + {"glPixelStoref", "(IF)V", (void *)&Java_org_lwjgl_opengl_GL11_glPixelStoref, "glPixelStoref", (void *)&glPixelStoref}, + {"glPixelTransferi", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glPixelTransferi, "glPixelTransferi", (void *)&glPixelTransferi}, + {"glPixelTransferf", "(IF)V", (void *)&Java_org_lwjgl_opengl_GL11_glPixelTransferf, "glPixelTransferf", (void *)&glPixelTransferf}, + {"glPixelZoom", "(FF)V", (void *)&Java_org_lwjgl_opengl_GL11_glPixelZoom, "glPixelZoom", (void *)&glPixelZoom}, + {"glPointSize", "(F)V", (void *)&Java_org_lwjgl_opengl_GL11_glPointSize, "glPointSize", (void *)&glPointSize}, + {"glPolygonMode", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glPolygonMode, "glPolygonMode", (void *)&glPolygonMode}, + {"glPolygonOffset", "(FF)V", (void *)&Java_org_lwjgl_opengl_GL11_glPolygonOffset, "glPolygonOffset", (void *)&glPolygonOffset}, + {"nglPolygonStipple", "(Ljava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglPolygonStipple, "glPolygonStipple", (void *)&glPolygonStipple}, + {"nglPolygonStippleBO", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglPolygonStippleBO, "glPolygonStipple", (void *)&glPolygonStipple}, + {"glMatrixMode", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glMatrixMode, "glMatrixMode", (void *)&glMatrixMode}, + {"glIsTexture", "(I)Z", (void *)&Java_org_lwjgl_opengl_GL11_glIsTexture, "glIsTexture", (void *)&glIsTexture}, + {"nglLightiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglLightiv, "glLightiv", (void *)&glLightiv}, + {"nglLightfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglLightfv, "glLightfv", (void *)&glLightfv}, + {"glLighti", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glLighti, "glLighti", (void *)&glLighti}, + {"glLightf", "(IIF)V", (void *)&Java_org_lwjgl_opengl_GL11_glLightf, "glLightf", (void *)&glLightf}, + {"nglLightModeliv", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglLightModeliv, "glLightModeliv", (void *)&glLightModeliv}, + {"nglLightModelfv", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglLightModelfv, "glLightModelfv", (void *)&glLightModelfv}, + {"glLightModeli", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glLightModeli, "glLightModeli", (void *)&glLightModeli}, + {"glLightModelf", "(IF)V", (void *)&Java_org_lwjgl_opengl_GL11_glLightModelf, "glLightModelf", (void *)&glLightModelf}, + {"glLineStipple", "(IS)V", (void *)&Java_org_lwjgl_opengl_GL11_glLineStipple, "glLineStipple", (void *)&glLineStipple}, + {"glLineWidth", "(F)V", (void *)&Java_org_lwjgl_opengl_GL11_glLineWidth, "glLineWidth", (void *)&glLineWidth}, + {"glListBase", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glListBase, "glListBase", (void *)&glListBase}, + {"glLoadIdentity", "()V", (void *)&Java_org_lwjgl_opengl_GL11_glLoadIdentity, "glLoadIdentity", (void *)&glLoadIdentity}, + {"nglLoadMatrixf", "(Ljava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglLoadMatrixf, "glLoadMatrixf", (void *)&glLoadMatrixf}, + {"glLoadName", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glLoadName, "glLoadName", (void *)&glLoadName}, + {"glLogicOp", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glLogicOp, "glLogicOp", (void *)&glLogicOp}, + {"nglMap1f", "(IFFIILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglMap1f, "glMap1f", (void *)&glMap1f}, + {"nglMap2f", "(IFFIIFFIILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglMap2f, "glMap2f", (void *)&glMap2f}, + {"glMapGrid2f", "(IFFIFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glMapGrid2f, "glMapGrid2f", (void *)&glMapGrid2f}, + {"glMapGrid1f", "(IFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glMapGrid1f, "glMapGrid1f", (void *)&glMapGrid1f}, + {"nglMaterialiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglMaterialiv, "glMaterialiv", (void *)&glMaterialiv}, + {"nglMaterialfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglMaterialfv, "glMaterialfv", (void *)&glMaterialfv}, + {"glMateriali", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glMateriali, "glMateriali", (void *)&glMateriali}, + {"glMaterialf", "(IIF)V", (void *)&Java_org_lwjgl_opengl_GL11_glMaterialf, "glMaterialf", (void *)&glMaterialf}, + {"glIsList", "(I)Z", (void *)&Java_org_lwjgl_opengl_GL11_glIsList, "glIsList", (void *)&glIsList}, + {"nglGetPolygonStipple", "(Ljava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetPolygonStipple, "glGetPolygonStipple", (void *)&glGetPolygonStipple}, + {"nglGetPolygonStippleBO", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetPolygonStippleBO, "glGetPolygonStipple", (void *)&glGetPolygonStipple}, + {"glGetString", "(I)Ljava/lang/String;", (void *)&Java_org_lwjgl_opengl_GL11_glGetString, "glGetString", (void *)&glGetString}, + {"nglGetTexEnvfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetTexEnvfv, "glGetTexEnvfv", (void *)&glGetTexEnvfv}, + {"nglGetTexEnviv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetTexEnviv, "glGetTexEnviv", (void *)&glGetTexEnviv}, + {"nglGetTexGenfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetTexGenfv, "glGetTexGenfv", (void *)&glGetTexGenfv}, + {"nglGetTexGeniv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetTexGeniv, "glGetTexGeniv", (void *)&glGetTexGeniv}, + {"nglGetTexImage", "(IIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetTexImage, "glGetTexImage", (void *)&glGetTexImage}, + {"nglGetTexImageBO", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetTexImageBO, "glGetTexImage", (void *)&glGetTexImage}, + {"nglGetTexLevelParameteriv", "(IIILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetTexLevelParameteriv, "glGetTexLevelParameteriv", (void *)&glGetTexLevelParameteriv}, + {"nglGetTexLevelParameterfv", "(IIILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetTexLevelParameterfv, "glGetTexLevelParameterfv", (void *)&glGetTexLevelParameterfv}, + {"nglGetTexParameteriv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetTexParameteriv, "glGetTexParameteriv", (void *)&glGetTexParameteriv}, + {"nglGetTexParameterfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetTexParameterfv, "glGetTexParameterfv", (void *)&glGetTexParameterfv}, + {"glHint", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glHint, "glHint", (void *)&glHint}, + {"glInitNames", "()V", (void *)&Java_org_lwjgl_opengl_GL11_glInitNames, "glInitNames", (void *)&glInitNames}, + {"nglInterleavedArrays", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglInterleavedArrays, "glInterleavedArrays", (void *)&glInterleavedArrays}, + {"nglInterleavedArraysBO", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_nglInterleavedArraysBO, "glInterleavedArrays", (void *)&glInterleavedArrays}, + {"glIsEnabled", "(I)Z", (void *)&Java_org_lwjgl_opengl_GL11_glIsEnabled, "glIsEnabled", (void *)&glIsEnabled}, + {"nglGetPointerv", "(II)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_GL11_nglGetPointerv, "glGetPointerv", (void *)&glGetPointerv}, + {"glFinish", "()V", (void *)&Java_org_lwjgl_opengl_GL11_glFinish, "glFinish", (void *)&glFinish}, + {"glFlush", "()V", (void *)&Java_org_lwjgl_opengl_GL11_glFlush, "glFlush", (void *)&glFlush}, + {"nglFogiv", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglFogiv, "glFogiv", (void *)&glFogiv}, + {"nglFogfv", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglFogfv, "glFogfv", (void *)&glFogfv}, + {"glFogi", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glFogi, "glFogi", (void *)&glFogi}, + {"glFogf", "(IF)V", (void *)&Java_org_lwjgl_opengl_GL11_glFogf, "glFogf", (void *)&glFogf}, + {"glFrontFace", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glFrontFace, "glFrontFace", (void *)&glFrontFace}, + {"glFrustum", "(DDDDDD)V", (void *)&Java_org_lwjgl_opengl_GL11_glFrustum, "glFrustum", (void *)&glFrustum}, + {"glGenLists", "(I)I", (void *)&Java_org_lwjgl_opengl_GL11_glGenLists, "glGenLists", (void *)&glGenLists}, + {"nglGenTextures", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGenTextures, "glGenTextures", (void *)&glGenTextures}, + {"nglGetIntegerv", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetIntegerv, "glGetIntegerv", (void *)&glGetIntegerv}, + {"nglGetFloatv", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetFloatv, "glGetFloatv", (void *)&glGetFloatv}, + {"nglGetDoublev", "(ILjava/nio/DoubleBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetDoublev, "glGetDoublev", (void *)&glGetDoublev}, + {"nglGetBooleanv", "(ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetBooleanv, "glGetBooleanv", (void *)&glGetBooleanv}, + {"nglGetClipPlane", "(ILjava/nio/DoubleBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetClipPlane, "glGetClipPlane", (void *)&glGetClipPlane}, + {"glGetError", "()I", (void *)&Java_org_lwjgl_opengl_GL11_glGetError, "glGetError", (void *)&glGetError}, + {"nglGetLightiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetLightiv, "glGetLightiv", (void *)&glGetLightiv}, + {"nglGetLightfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetLightfv, "glGetLightfv", (void *)&glGetLightfv}, + {"nglGetMapiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetMapiv, "glGetMapiv", (void *)&glGetMapiv}, + {"nglGetMapfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetMapfv, "glGetMapfv", (void *)&glGetMapfv}, + {"nglGetMaterialiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetMaterialiv, "glGetMaterialiv", (void *)&glGetMaterialiv}, + {"nglGetMaterialfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetMaterialfv, "glGetMaterialfv", (void *)&glGetMaterialfv}, + {"nglGetPixelMapusv", "(ILjava/nio/ShortBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapusv, "glGetPixelMapusv", (void *)&glGetPixelMapusv}, + {"nglGetPixelMapusvBO", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapusvBO, "glGetPixelMapusv", (void *)&glGetPixelMapusv}, + {"nglGetPixelMapuiv", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapuiv, "glGetPixelMapuiv", (void *)&glGetPixelMapuiv}, + {"nglGetPixelMapuivBO", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapuivBO, "glGetPixelMapuiv", (void *)&glGetPixelMapuiv}, + {"nglGetPixelMapfv", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapfv, "glGetPixelMapfv", (void *)&glGetPixelMapfv}, + {"nglGetPixelMapfvBO", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_nglGetPixelMapfvBO, "glGetPixelMapfv", (void *)&glGetPixelMapfv}, + {"nglFeedbackBuffer", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglFeedbackBuffer, "glFeedbackBuffer", (void *)&glFeedbackBuffer}, + {"glDepthFunc", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glDepthFunc, "glDepthFunc", (void *)&glDepthFunc}, + {"glDepthMask", "(Z)V", (void *)&Java_org_lwjgl_opengl_GL11_glDepthMask, "glDepthMask", (void *)&glDepthMask}, + {"glDepthRange", "(DD)V", (void *)&Java_org_lwjgl_opengl_GL11_glDepthRange, "glDepthRange", (void *)&glDepthRange}, + {"glDrawArrays", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glDrawArrays, "glDrawArrays", (void *)&glDrawArrays}, + {"glDrawBuffer", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glDrawBuffer, "glDrawBuffer", (void *)&glDrawBuffer}, + {"nglDrawElements", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglDrawElements, "glDrawElements", (void *)&glDrawElements}, + {"nglDrawElementsBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglDrawElementsBO, "glDrawElements", (void *)&glDrawElements}, + {"nglDrawPixels", "(IIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglDrawPixels, "glDrawPixels", (void *)&glDrawPixels}, + {"nglDrawPixelsBO", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglDrawPixelsBO, "glDrawPixels", (void *)&glDrawPixels}, + {"glEdgeFlag", "(Z)V", (void *)&Java_org_lwjgl_opengl_GL11_glEdgeFlag, "glEdgeFlag", (void *)&glEdgeFlag}, + {"nglEdgeFlagPointer", "(ILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglEdgeFlagPointer, "glEdgeFlagPointer", (void *)&glEdgeFlagPointer}, + {"nglEdgeFlagPointerBO", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_nglEdgeFlagPointerBO, "glEdgeFlagPointer", (void *)&glEdgeFlagPointer}, + {"glDisable", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glDisable, "glDisable", (void *)&glDisable}, + {"glEnable", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glEnable, "glEnable", (void *)&glEnable}, + {"glDisableClientState", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glDisableClientState, "glDisableClientState", (void *)&glDisableClientState}, + {"glEnableClientState", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glEnableClientState, "glEnableClientState", (void *)&glEnableClientState}, + {"glEvalCoord2f", "(FF)V", (void *)&Java_org_lwjgl_opengl_GL11_glEvalCoord2f, "glEvalCoord2f", (void *)&glEvalCoord2f}, + {"glEvalCoord1f", "(F)V", (void *)&Java_org_lwjgl_opengl_GL11_glEvalCoord1f, "glEvalCoord1f", (void *)&glEvalCoord1f}, + {"glEvalMesh2", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glEvalMesh2, "glEvalMesh2", (void *)&glEvalMesh2}, + {"glEvalMesh1", "(III)V", (void *)&Java_org_lwjgl_opengl_GL11_glEvalMesh1, "glEvalMesh1", (void *)&glEvalMesh1}, + {"glEvalPoint2", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glEvalPoint2, "glEvalPoint2", (void *)&glEvalPoint2}, + {"glEvalPoint1", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glEvalPoint1, "glEvalPoint1", (void *)&glEvalPoint1}, + {"glClearIndex", "(F)V", (void *)&Java_org_lwjgl_opengl_GL11_glClearIndex, "glClearIndex", (void *)&glClearIndex}, + {"glClearStencil", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glClearStencil, "glClearStencil", (void *)&glClearStencil}, + {"nglClipPlane", "(ILjava/nio/DoubleBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglClipPlane, "glClipPlane", (void *)&glClipPlane}, + {"glColor4ub", "(BBBB)V", (void *)&Java_org_lwjgl_opengl_GL11_glColor4ub, "glColor4ub", (void *)&glColor4ub}, + {"glColor4f", "(FFFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glColor4f, "glColor4f", (void *)&glColor4f}, + {"glColor4b", "(BBBB)V", (void *)&Java_org_lwjgl_opengl_GL11_glColor4b, "glColor4b", (void *)&glColor4b}, + {"glColor3ub", "(BBB)V", (void *)&Java_org_lwjgl_opengl_GL11_glColor3ub, "glColor3ub", (void *)&glColor3ub}, + {"glColor3f", "(FFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glColor3f, "glColor3f", (void *)&glColor3f}, + {"glColor3b", "(BBB)V", (void *)&Java_org_lwjgl_opengl_GL11_glColor3b, "glColor3b", (void *)&glColor3b}, + {"glColorMask", "(ZZZZ)V", (void *)&Java_org_lwjgl_opengl_GL11_glColorMask, "glColorMask", (void *)&glColorMask}, + {"glColorMaterial", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glColorMaterial, "glColorMaterial", (void *)&glColorMaterial}, + {"nglColorPointer", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglColorPointer, "glColorPointer", (void *)&glColorPointer}, + {"nglColorPointerBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL11_nglColorPointerBO, "glColorPointer", (void *)&glColorPointer}, + {"glCopyPixels", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glCopyPixels, "glCopyPixels", (void *)&glCopyPixels}, + {"glCopyTexImage1D", "(IIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glCopyTexImage1D, "glCopyTexImage1D", (void *)&glCopyTexImage1D}, + {"glCopyTexImage2D", "(IIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glCopyTexImage2D, "glCopyTexImage2D", (void *)&glCopyTexImage2D}, + {"glCopyTexSubImage1D", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glCopyTexSubImage1D, "glCopyTexSubImage1D", (void *)&glCopyTexSubImage1D}, + {"glCopyTexSubImage2D", "(IIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL11_glCopyTexSubImage2D, "glCopyTexSubImage2D", (void *)&glCopyTexSubImage2D}, + {"glCullFace", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glCullFace, "glCullFace", (void *)&glCullFace}, + {"nglDeleteTextures", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglDeleteTextures, "glDeleteTextures", (void *)&glDeleteTextures}, + {"glDeleteLists", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glDeleteLists, "glDeleteLists", (void *)&glDeleteLists}, + {"glClearDepth", "(D)V", (void *)&Java_org_lwjgl_opengl_GL11_glClearDepth, "glClearDepth", (void *)&glClearDepth}, + {"glArrayElement", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glArrayElement, "glArrayElement", (void *)&glArrayElement}, + {"glEnd", "()V", (void *)&Java_org_lwjgl_opengl_GL11_glEnd, "glEnd", (void *)&glEnd}, + {"glBegin", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glBegin, "glBegin", (void *)&glBegin}, + {"glBindTexture", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glBindTexture, "glBindTexture", (void *)&glBindTexture}, + {"nglBitmap", "(IIFFFFLjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglBitmap, "glBitmap", (void *)&glBitmap}, + {"nglBitmapBO", "(IIFFFFI)V", (void *)&Java_org_lwjgl_opengl_GL11_nglBitmapBO, "glBitmap", (void *)&glBitmap}, + {"glBlendFunc", "(II)V", (void *)&Java_org_lwjgl_opengl_GL11_glBlendFunc, "glBlendFunc", (void *)&glBlendFunc}, + {"glCallList", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glCallList, "glCallList", (void *)&glCallList}, + {"nglCallLists", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL11_nglCallLists, "glCallLists", (void *)&glCallLists}, + {"glClear", "(I)V", (void *)&Java_org_lwjgl_opengl_GL11_glClear, "glClear", (void *)&glClear}, + {"glClearAccum", "(FFFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glClearAccum, "glClearAccum", (void *)&glClearAccum}, + {"glClearColor", "(FFFF)V", (void *)&Java_org_lwjgl_opengl_GL11_glClearColor, "glClearColor", (void *)&glClearColor}, + {"glAlphaFunc", "(IF)V", (void *)&Java_org_lwjgl_opengl_GL11_glAlphaFunc, "glAlphaFunc", (void *)&glAlphaFunc}, + {"glAccum", "(IF)V", (void *)&Java_org_lwjgl_opengl_GL11_glAccum, "glAccum", (void *)&glAccum} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/org_lwjgl_opengl_GL12.c b/src/native/common/org_lwjgl_opengl_GL12.c index 070e61cc..b275d6dd 100644 --- a/src/native/common/org_lwjgl_opengl_GL12.c +++ b/src/native/common/org_lwjgl_opengl_GL12.c @@ -1,153 +1,62 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/** - * $Id$ - * - * Core OpenGL functions. - * - * @author cix_foo - * @version $Revision$ - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef void (APIENTRY * glDrawRangeElementsPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); -typedef void (APIENTRY * glTexImage3DPROC) (GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels ); -typedef void (APIENTRY * glTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels); -typedef void (APIENTRY * glCopyTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ); +typedef void (APIENTRY *glCopyTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (APIENTRY *glTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid * pixels); +typedef void (APIENTRY *glTexImage3DPROC) (GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid * pixels); +typedef void (APIENTRY *glDrawRangeElementsPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices); -static glDrawRangeElementsPROC glDrawRangeElements; -static glTexImage3DPROC glTexImage3D; -static glTexSubImage3DPROC glTexSubImage3D; static glCopyTexSubImage3DPROC glCopyTexSubImage3D; +static glTexSubImage3DPROC glTexSubImage3D; +static glTexImage3DPROC glTexImage3D; +static glDrawRangeElementsPROC glDrawRangeElements; -/* - * Class: org_lwjgl_opengl_GL12 - * Method: nglDrawRangeElements - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL12_nglDrawRangeElements - (JNIEnv *env, jclass clazz, jint mode, jint start, jint end, jint count, jint type, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glDrawRangeElements(mode, start, end, count, type, address); - -} - -/* - * Class: org_lwjgl_opengl_GL12 - * Method: nglDrawRangeElementsVBO - * Signature: (IIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL12_nglDrawRangeElementsVBO - (JNIEnv *env, jclass clazz, jint mode, jint start, jint end, jint count, jint type, jint buffer_offset) -{ - glDrawRangeElements(mode, start, end, count, type, offsetToPointer(buffer_offset)); - -} - -/* - * Class: org_lwjgl_opengl_GL12 - * Method: glTexImage3D - * Signature: (IIIIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL12_nglTexImage3D - (JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint format, jint type, jobject buffer, jint offset) -{ - GLvoid *buffer_ptr = (GLvoid *)((char *)safeGetBufferAddress(env, buffer) + offset); - glTexImage3D(target, level, internalformat, width, height, depth, border, format, type, buffer_ptr); -} - -/* - * Class: org_lwjgl_opengl_GL12 - * Method: glTexImage3D - */ -static void JNICALL Java_org_lwjgl_opengl_GL12_nglTexImage3DBO - (JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint format, jint type, jint buffer_offset) -{ - glTexImage3D(target, level, internalformat, width, height, depth, border, format, type, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL12 - * Method: glTexSubImage3D - */ -static void JNICALL Java_org_lwjgl_opengl_GL12_nglTexSubImage3D - (JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint type, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, address); -} - -/* - * Class: org_lwjgl_opengl_GL12 - * Method: glTexSubImage3D - */ -static void JNICALL Java_org_lwjgl_opengl_GL12_nglTexSubImage3DBO - (JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint type, jint buffer_offset) -{ - glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL12 - * Method: glCopyTexSubImage3D - * Signature: (IIIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL12_glCopyTexSubImage3D - (JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint x, jint y, jint width, jint height) -{ +static void JNICALL Java_org_lwjgl_opengl_GL12_glCopyTexSubImage3D(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint x, jint y, jint width, jint height) { glCopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height); - } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_GL12_nglTexSubImage3D(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint type, jobject pixels, jint pixels_position) { + const GLvoid *pixels_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, pixels)) + pixels_position)); + glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL12_nglTexSubImage3DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint type, jint pixels_buffer_offset) { + const GLvoid *pixels_address = ((const GLvoid *)offsetToPointer(pixels_buffer_offset)); + glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL12_nglTexImage3D(JNIEnv *env, jclass clazz, jint target, jint level, jint internalFormat, jint width, jint height, jint depth, jint border, jint format, jint type, jobject pixels, jint pixels_position) { + const GLvoid *pixels_address = ((const GLvoid *)(((char *)safeGetBufferAddress(env, pixels)) + pixels_position)); + glTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL12_nglTexImage3DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint internalFormat, jint width, jint height, jint depth, jint border, jint format, jint type, jint pixels_buffer_offset) { + const GLvoid *pixels_address = ((const GLvoid *)offsetToPointer(pixels_buffer_offset)); + glTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, pixels_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL12_nglDrawRangeElements(JNIEnv *env, jclass clazz, jint mode, jint start, jint end, jint count, jint type, jobject indices, jint indices_position) { + const GLvoid *indices_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, indices)) + indices_position)); + glDrawRangeElements(mode, start, end, count, type, indices_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL12_nglDrawRangeElementsBO(JNIEnv *env, jclass clazz, jint mode, jint start, jint end, jint count, jint type, jint indices_buffer_offset) { + const GLvoid *indices_address = ((const GLvoid *)offsetToPointer(indices_buffer_offset)); + glDrawRangeElements(mode, start, end, count, type, indices_address); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL12_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglDrawRangeElements", "(IIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL12_nglDrawRangeElements, "glDrawRangeElements", (void*)&glDrawRangeElements}, - {"nglDrawRangeElementsVBO", "(IIIIII)V", (void*)&Java_org_lwjgl_opengl_GL12_nglDrawRangeElementsVBO, NULL, NULL}, - {"nglTexImage3D", "(IIIIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL12_nglTexImage3D, "glTexImage3D", (void*)&glTexImage3D}, - {"nglTexImage3DBO", "(IIIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL12_nglTexImage3DBO, NULL, NULL}, - {"nglTexSubImage3D", "(IIIIIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL12_nglTexSubImage3D, "glTexSubImage3D", (void*)&glTexSubImage3D}, - {"nglTexSubImage3DBO", "(IIIIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL12_nglTexSubImage3DBO, NULL, NULL}, - {"glCopyTexSubImage3D", "(IIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL12_glCopyTexSubImage3D, "glCopyTexSubImage3D", (void*)&glCopyTexSubImage3D} + {"glCopyTexSubImage3D", "(IIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL12_glCopyTexSubImage3D, "glCopyTexSubImage3D", (void *)&glCopyTexSubImage3D}, + {"nglTexSubImage3D", "(IIIIIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL12_nglTexSubImage3D, "glTexSubImage3D", (void *)&glTexSubImage3D}, + {"nglTexSubImage3DBO", "(IIIIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL12_nglTexSubImage3DBO, "glTexSubImage3D", (void *)&glTexSubImage3D}, + {"nglTexImage3D", "(IIIIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL12_nglTexImage3D, "glTexImage3D", (void *)&glTexImage3D}, + {"nglTexImage3DBO", "(IIIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL12_nglTexImage3DBO, "glTexImage3D", (void *)&glTexImage3D}, + {"nglDrawRangeElements", "(IIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL12_nglDrawRangeElements, "glDrawRangeElements", (void *)&glDrawRangeElements}, + {"nglDrawRangeElementsBO", "(IIIIII)V", (void *)&Java_org_lwjgl_opengl_GL12_nglDrawRangeElementsBO, "glDrawRangeElements", (void *)&glDrawRangeElements} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif diff --git a/src/native/common/org_lwjgl_opengl_GL13.c b/src/native/common/org_lwjgl_opengl_GL13.c index eab5149b..27b4fa96 100644 --- a/src/native/common/org_lwjgl_opengl_GL13.c +++ b/src/native/common/org_lwjgl_opengl_GL13.c @@ -1,378 +1,176 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/** - * $Id$ - * - * Core OpenGL functions. - * - * @author cix_foo - * @version $Revision$ - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -typedef void (APIENTRY * glActiveTexturePROC) (GLenum texture ); -typedef void (APIENTRY * glClientActiveTexturePROC) (GLenum texture ); -typedef void (APIENTRY * glCompressedTexImage1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexImage2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexImage3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glCompressedTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data ); -typedef void (APIENTRY * glGetCompressedTexImagePROC) (GLenum target, GLint lod, GLvoid *img ); -typedef void (APIENTRY * glMultiTexCoord1fPROC) (GLenum target, GLfloat s ); -typedef void (APIENTRY * glMultiTexCoord2fPROC) (GLenum target, GLfloat s, GLfloat t ); -typedef void (APIENTRY * glMultiTexCoord3fPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r ); -typedef void (APIENTRY * glMultiTexCoord4fPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ); -typedef void (APIENTRY * glLoadTransposeMatrixfPROC) (const GLfloat m[16] ); -typedef void (APIENTRY * glMultTransposeMatrixfPROC) (const GLfloat m[16] ); -typedef void (APIENTRY * glSampleCoveragePROC) (GLclampf value, GLboolean invert ); +typedef void (APIENTRY *glSampleCoveragePROC) (GLclampf value, GLboolean invert); +typedef void (APIENTRY *glMultTransposeMatrixfPROC) (const GLfloat * m); +typedef void (APIENTRY *glLoadTransposeMatrixfPROC) (const GLfloat * m); +typedef void (APIENTRY *glMultiTexCoord4fPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); +typedef void (APIENTRY *glMultiTexCoord3fPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r); +typedef void (APIENTRY *glMultiTexCoord2fPROC) (GLenum target, GLfloat s, GLfloat t); +typedef void (APIENTRY *glMultiTexCoord1fPROC) (GLenum target, GLfloat s); +typedef void (APIENTRY *glGetCompressedTexImagePROC) (GLenum target, GLint lod, GLvoid * img); +typedef void (APIENTRY *glCompressedTexSubImage3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid * data); +typedef void (APIENTRY *glCompressedTexSubImage2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data); +typedef void (APIENTRY *glCompressedTexSubImage1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid * data); +typedef void (APIENTRY *glCompressedTexImage3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * data); +typedef void (APIENTRY *glCompressedTexImage2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data); +typedef void (APIENTRY *glCompressedTexImage1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid * data); +typedef void (APIENTRY *glClientActiveTexturePROC) (GLenum texture); +typedef void (APIENTRY *glActiveTexturePROC) (GLenum texture); -static glActiveTexturePROC glActiveTexture; -static glClientActiveTexturePROC glClientActiveTexture; -static glMultiTexCoord1fPROC glMultiTexCoord1f; -static glMultiTexCoord2fPROC glMultiTexCoord2f; -static glMultiTexCoord3fPROC glMultiTexCoord3f; -static glMultiTexCoord4fPROC glMultiTexCoord4f; -static glLoadTransposeMatrixfPROC glLoadTransposeMatrixf; +static glSampleCoveragePROC glSampleCoverage; static glMultTransposeMatrixfPROC glMultTransposeMatrixf; -static glCompressedTexImage3DPROC glCompressedTexImage3D; -static glCompressedTexImage2DPROC glCompressedTexImage2D; -static glCompressedTexImage1DPROC glCompressedTexImage1D; +static glLoadTransposeMatrixfPROC glLoadTransposeMatrixf; +static glMultiTexCoord4fPROC glMultiTexCoord4f; +static glMultiTexCoord3fPROC glMultiTexCoord3f; +static glMultiTexCoord2fPROC glMultiTexCoord2f; +static glMultiTexCoord1fPROC glMultiTexCoord1f; +static glGetCompressedTexImagePROC glGetCompressedTexImage; static glCompressedTexSubImage3DPROC glCompressedTexSubImage3D; static glCompressedTexSubImage2DPROC glCompressedTexSubImage2D; static glCompressedTexSubImage1DPROC glCompressedTexSubImage1D; -static glGetCompressedTexImagePROC glGetCompressedTexImage; -static glSampleCoveragePROC glSampleCoverage; +static glCompressedTexImage3DPROC glCompressedTexImage3D; +static glCompressedTexImage2DPROC glCompressedTexImage2D; +static glCompressedTexImage1DPROC glCompressedTexImage1D; +static glClientActiveTexturePROC glClientActiveTexture; +static glActiveTexturePROC glActiveTexture; -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glActiveTexture - * Signature: (I)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_glActiveTexture - (JNIEnv *env, jclass clazz, jint texture) -{ - glActiveTexture(texture); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glClientActiveTexture - * Signature: (I)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_glClientActiveTexture - (JNIEnv *env, jclass clazz, jint texture) -{ - glClientActiveTexture(texture); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexImage1D - * Signature: (IIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage1D - (JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint border, jint imagesize, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glCompressedTexImage1D(target, level, internalformat, width, border, imagesize, address); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexImage1DBO - * Signature: (IIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage1DBO - (JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint border, jint imagesize, jint buffer_offset) -{ - glCompressedTexImage1D(target, level, internalformat, width, border, imagesize, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexImage2D - * Signature: (IIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage2D - (JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint imagesize, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glCompressedTexImage2D(target, level, internalformat, width, height, border, imagesize, address); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexImage2DBO - * Signature: (IIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage2DBO - (JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint imagesize, jint buffer_offset) -{ - glCompressedTexImage2D(target, level, internalformat, width, height, border, imagesize, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexImage3D - * Signature: (IIIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage3D - (JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint imagesize, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imagesize, address); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexImage3DBO - * Signature: (IIIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage3DBO - (JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint imagesize, jint buffer_offset) -{ - glCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imagesize, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexSubImage1D - * Signature: (IIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage1D - (JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint width, jint format, jint imagesize, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glCompressedTexSubImage1D(target, level, xoffset, width, format, imagesize, address); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexSubImage1DBO - * Signature: (IIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage1DBO - (JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint width, jint format, jint imagesize, jint buffer_offset) -{ - glCompressedTexSubImage1D(target, level, xoffset, width, format, imagesize, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexSubImage2D - * Signature: (IIIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage2D - (JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint imagesize, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imagesize, address); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexSubImage2DBO - * Signature: (IIIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage2DBO - (JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint imagesize, jint buffer_offset) -{ - glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imagesize, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexSubImage3D - * Signature: (IIIIIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage3D - (JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint imagesize, jobject buffer, jint offset) -{ - const void *address = (const void *)(offset + (const GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imagesize, address); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glCompressedTexSubImage3DBO - * Signature: (IIIIIIIIIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage3DBO - (JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint imagesize, jint buffer_offset) -{ - glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imagesize, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glGetCompressedTexImage - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglGetCompressedTexImage - (JNIEnv *env, jclass clazz, jint target, jint lod, jobject buffer, jint offset) -{ - void *address = (void *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glGetCompressedTexImage(target, lod, address); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glGetCompressedTexImageBO - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglGetCompressedTexImageBO - (JNIEnv *env, jclass clazz, jint target, jint lod, jint buffer_offset) -{ - glGetCompressedTexImage(target, lod, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glMultiTexCoord1f - * Signature: (IF)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_glMultiTexCoord1f - (JNIEnv *env, jclass clazz, jint target, jfloat s) -{ - glMultiTexCoord1f(target, s); - -} - - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glMultiTexCoord2f - * Signature: (IFF)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_glMultiTexCoord2f - (JNIEnv *env, jclass clazz, jint target, jfloat s, jfloat t) -{ - glMultiTexCoord2f(target, s, t); - -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glMultiTexCoord3f - * Signature: (IFFF)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_glMultiTexCoord3f - (JNIEnv *env, jclass clazz, jint target, jfloat s, jfloat t, jfloat r) -{ - glMultiTexCoord3f(target, s, t, r); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glMultiTexCoord4f - * Signature: (IFFFF)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_glMultiTexCoord4f - (JNIEnv *env, jclass clazz, jint target, jfloat s, jfloat t, jfloat r, jfloat q) -{ - glMultiTexCoord4f(target, s, t, r, q); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glLoadTransposeMatrixf - * Signature: (I)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglLoadTransposeMatrixf - (JNIEnv *env, jclass clazz, jobject buffer, jint offset) -{ - const GLfloat *address = (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glLoadTransposeMatrixf(address); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glMultTransposeMatrixf - * Signature: (I)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_nglMultTransposeMatrixf - (JNIEnv *env, jclass clazz, jobject buffer, jint offset) -{ - const GLfloat *address = (const GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glMultTransposeMatrixf(address); -} - -/* - * Class: org_lwjgl_opengl_GL13 - * Method: glSampleCoverage - * Signature: (FZ)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL13_glSampleCoverage - (JNIEnv *env, jclass clazz, jfloat value, jboolean invert) -{ +static void JNICALL Java_org_lwjgl_opengl_GL13_glSampleCoverage(JNIEnv *env, jclass clazz, jfloat value, jboolean invert) { glSampleCoverage(value, invert); } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_GL13_nglMultTransposeMatrixf(JNIEnv *env, jclass clazz, jobject m, jint m_position) { + const GLfloat *m_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, m)) + m_position; + glMultTransposeMatrixf(m_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglLoadTransposeMatrixf(JNIEnv *env, jclass clazz, jobject m, jint m_position) { + const GLfloat *m_address = ((const GLfloat *)(*env)->GetDirectBufferAddress(env, m)) + m_position; + glLoadTransposeMatrixf(m_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_glMultiTexCoord4f(JNIEnv *env, jclass clazz, jint target, jfloat s, jfloat t, jfloat r, jfloat q) { + glMultiTexCoord4f(target, s, t, r, q); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_glMultiTexCoord3f(JNIEnv *env, jclass clazz, jint target, jfloat s, jfloat t, jfloat r) { + glMultiTexCoord3f(target, s, t, r); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_glMultiTexCoord2f(JNIEnv *env, jclass clazz, jint target, jfloat s, jfloat t) { + glMultiTexCoord2f(target, s, t); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_glMultiTexCoord1f(JNIEnv *env, jclass clazz, jint target, jfloat s) { + glMultiTexCoord1f(target, s); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglGetCompressedTexImage(JNIEnv *env, jclass clazz, jint target, jint lod, jobject img, jint img_position) { + GLvoid *img_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, img)) + img_position)); + glGetCompressedTexImage(target, lod, img_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglGetCompressedTexImageBO(JNIEnv *env, jclass clazz, jint target, jint lod, jint img_buffer_offset) { + GLvoid *img_address = ((GLvoid *)offsetToPointer(img_buffer_offset)); + glGetCompressedTexImage(target, lod, img_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage3D(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint imageSize, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage3DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint zoffset, jint width, jint height, jint depth, jint format, jint imageSize, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage2D(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint imageSize, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage2DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint imageSize, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage1D(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint width, jint format, jint imageSize, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage1DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint xoffset, jint width, jint format, jint imageSize, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage3D(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint imageSize, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage3DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint depth, jint border, jint imageSize, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage2D(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint imageSize, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage2DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint imageSize, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage1D(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint border, jint imageSize, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_nglCompressedTexImage1DBO(JNIEnv *env, jclass clazz, jint target, jint level, jint internalformat, jint width, jint border, jint imageSize, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_glClientActiveTexture(JNIEnv *env, jclass clazz, jint texture) { + glClientActiveTexture(texture); +} + +static void JNICALL Java_org_lwjgl_opengl_GL13_glActiveTexture(JNIEnv *env, jclass clazz, jint texture) { + glActiveTexture(texture); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL13_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glActiveTexture", "(I)V", (void*)&Java_org_lwjgl_opengl_GL13_glActiveTexture, "glActiveTexture", (void*)&glActiveTexture}, - {"glClientActiveTexture", "(I)V", (void*)&Java_org_lwjgl_opengl_GL13_glClientActiveTexture, "glClientActiveTexture", (void*)&glClientActiveTexture}, - {"nglCompressedTexImage1D", "(IIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage1D, "glCompressedTexImage1D", (void*)&glCompressedTexImage1D}, - {"nglCompressedTexImage1DBO", "(IIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage1DBO, NULL, NULL}, - {"nglCompressedTexImage2D", "(IIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage2D, "glCompressedTexImage2D", (void*)&glCompressedTexImage2D}, - {"nglCompressedTexImage2DBO", "(IIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage2DBO, NULL, NULL}, - {"nglCompressedTexImage3D", "(IIIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage3D, "glCompressedTexImage3D", (void*)&glCompressedTexImage3D}, - {"nglCompressedTexImage3DBO", "(IIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage3DBO, NULL, NULL}, - {"nglCompressedTexSubImage1D", "(IIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage1D, "glCompressedTexSubImage1D", (void*)&glCompressedTexSubImage1D}, - {"nglCompressedTexSubImage1DBO", "(IIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage1DBO, NULL, NULL}, - {"nglCompressedTexSubImage2D", "(IIIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage2D, "glCompressedTexSubImage2D", (void*)&glCompressedTexSubImage2D}, - {"nglCompressedTexSubImage2DBO", "(IIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage2DBO, NULL, NULL}, - {"nglCompressedTexSubImage3D", "(IIIIIIIIIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage3D, "glCompressedTexSubImage3D", (void*)&glCompressedTexSubImage3D}, - {"nglCompressedTexSubImage3DBO", "(IIIIIIIIIII)V", (void*)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage3DBO, NULL, NULL}, - {"nglGetCompressedTexImage", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL13_nglGetCompressedTexImage, "glGetCompressedTexImage", (void*)&glGetCompressedTexImage}, - {"nglGetCompressedTexImageBO", "(III)V", (void*)&Java_org_lwjgl_opengl_GL13_nglGetCompressedTexImageBO, NULL, NULL}, - {"glMultiTexCoord1f", "(IF)V", (void*)&Java_org_lwjgl_opengl_GL13_glMultiTexCoord1f, "glMultiTexCoord1f", (void*)&glMultiTexCoord1f}, - {"glMultiTexCoord2f", "(IFF)V", (void*)&Java_org_lwjgl_opengl_GL13_glMultiTexCoord2f, "glMultiTexCoord2f", (void*)&glMultiTexCoord2f}, - {"glMultiTexCoord3f", "(IFFF)V", (void*)&Java_org_lwjgl_opengl_GL13_glMultiTexCoord3f, "glMultiTexCoord3f", (void*)&glMultiTexCoord3f}, - {"glMultiTexCoord4f", "(IFFFF)V", (void*)&Java_org_lwjgl_opengl_GL13_glMultiTexCoord4f, "glMultiTexCoord4f", (void*)&glMultiTexCoord4f}, - {"nglLoadTransposeMatrixf", "(Ljava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL13_nglLoadTransposeMatrixf, "glLoadTransposeMatrixf", (void*)&glLoadTransposeMatrixf}, - {"nglMultTransposeMatrixf", "(Ljava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL13_nglMultTransposeMatrixf, "glMultTransposeMatrixf", (void*)&glMultTransposeMatrixf}, - {"glSampleCoverage", "(FZ)V", (void*)&Java_org_lwjgl_opengl_GL13_glSampleCoverage, "glSampleCoverage", (void*)&glSampleCoverage} + {"glSampleCoverage", "(FZ)V", (void *)&Java_org_lwjgl_opengl_GL13_glSampleCoverage, "glSampleCoverage", (void *)&glSampleCoverage}, + {"nglMultTransposeMatrixf", "(Ljava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL13_nglMultTransposeMatrixf, "glMultTransposeMatrixf", (void *)&glMultTransposeMatrixf}, + {"nglLoadTransposeMatrixf", "(Ljava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL13_nglLoadTransposeMatrixf, "glLoadTransposeMatrixf", (void *)&glLoadTransposeMatrixf}, + {"glMultiTexCoord4f", "(IFFFF)V", (void *)&Java_org_lwjgl_opengl_GL13_glMultiTexCoord4f, "glMultiTexCoord4f", (void *)&glMultiTexCoord4f}, + {"glMultiTexCoord3f", "(IFFF)V", (void *)&Java_org_lwjgl_opengl_GL13_glMultiTexCoord3f, "glMultiTexCoord3f", (void *)&glMultiTexCoord3f}, + {"glMultiTexCoord2f", "(IFF)V", (void *)&Java_org_lwjgl_opengl_GL13_glMultiTexCoord2f, "glMultiTexCoord2f", (void *)&glMultiTexCoord2f}, + {"glMultiTexCoord1f", "(IF)V", (void *)&Java_org_lwjgl_opengl_GL13_glMultiTexCoord1f, "glMultiTexCoord1f", (void *)&glMultiTexCoord1f}, + {"nglGetCompressedTexImage", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL13_nglGetCompressedTexImage, "glGetCompressedTexImage", (void *)&glGetCompressedTexImage}, + {"nglGetCompressedTexImageBO", "(III)V", (void *)&Java_org_lwjgl_opengl_GL13_nglGetCompressedTexImageBO, "glGetCompressedTexImage", (void *)&glGetCompressedTexImage}, + {"nglCompressedTexSubImage3D", "(IIIIIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage3D, "glCompressedTexSubImage3D", (void *)&glCompressedTexSubImage3D}, + {"nglCompressedTexSubImage3DBO", "(IIIIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage3DBO, "glCompressedTexSubImage3D", (void *)&glCompressedTexSubImage3D}, + {"nglCompressedTexSubImage2D", "(IIIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage2D, "glCompressedTexSubImage2D", (void *)&glCompressedTexSubImage2D}, + {"nglCompressedTexSubImage2DBO", "(IIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage2DBO, "glCompressedTexSubImage2D", (void *)&glCompressedTexSubImage2D}, + {"nglCompressedTexSubImage1D", "(IIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage1D, "glCompressedTexSubImage1D", (void *)&glCompressedTexSubImage1D}, + {"nglCompressedTexSubImage1DBO", "(IIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexSubImage1DBO, "glCompressedTexSubImage1D", (void *)&glCompressedTexSubImage1D}, + {"nglCompressedTexImage3D", "(IIIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage3D, "glCompressedTexImage3D", (void *)&glCompressedTexImage3D}, + {"nglCompressedTexImage3DBO", "(IIIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage3DBO, "glCompressedTexImage3D", (void *)&glCompressedTexImage3D}, + {"nglCompressedTexImage2D", "(IIIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage2D, "glCompressedTexImage2D", (void *)&glCompressedTexImage2D}, + {"nglCompressedTexImage2DBO", "(IIIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage2DBO, "glCompressedTexImage2D", (void *)&glCompressedTexImage2D}, + {"nglCompressedTexImage1D", "(IIIIIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage1D, "glCompressedTexImage1D", (void *)&glCompressedTexImage1D}, + {"nglCompressedTexImage1DBO", "(IIIIIII)V", (void *)&Java_org_lwjgl_opengl_GL13_nglCompressedTexImage1DBO, "glCompressedTexImage1D", (void *)&glCompressedTexImage1D}, + {"glClientActiveTexture", "(I)V", (void *)&Java_org_lwjgl_opengl_GL13_glClientActiveTexture, "glClientActiveTexture", (void *)&glClientActiveTexture}, + {"glActiveTexture", "(I)V", (void *)&Java_org_lwjgl_opengl_GL13_glActiveTexture, "glActiveTexture", (void *)&glActiveTexture} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/org_lwjgl_opengl_GL14.c b/src/native/common/org_lwjgl_opengl_GL14.c index 264097cd..924ff042 100644 --- a/src/native/common/org_lwjgl_opengl_GL14.c +++ b/src/native/common/org_lwjgl_opengl_GL14.c @@ -1,322 +1,157 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/** - * $Id$ - * - * Core OpenGL functions. - * - * @author cix_foo - * @version $Revision$ - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef void (APIENTRY * glBlendColorPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); -typedef void (APIENTRY * glBlendEquationPROC) (GLenum mode); -typedef void (APIENTRY * glFogCoordfPROC) (GLfloat coord); -typedef void (APIENTRY * glFogCoordPointerPROC) (GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glMultiDrawArraysPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); -typedef void (APIENTRY * glPointParameterfPROC) (GLenum pname, GLfloat param); -typedef void (APIENTRY * glPointParameteriPROC) (GLenum pname, GLint param); -typedef void (APIENTRY * glPointParameterfvPROC) (GLenum pname, GLfloat *params); -typedef void (APIENTRY * glPointParameterivPROC) (GLenum pname, GLint *params); -typedef void (APIENTRY * glSecondaryColor3bPROC) (GLbyte red, GLbyte green, GLbyte blue); -typedef void (APIENTRY * glSecondaryColor3fPROC) (GLfloat red, GLfloat green, GLfloat blue); -typedef void (APIENTRY * glSecondaryColor3ubPROC) (GLubyte red, GLubyte green, GLubyte blue); -typedef void (APIENTRY * glSecondaryColorPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glBlendFuncSeparatePROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); -typedef void (APIENTRY * glWindowPos2fPROC) (GLfloat x, GLfloat y); -typedef void (APIENTRY * glWindowPos2iPROC) (GLint x, GLint y); -typedef void (APIENTRY * glWindowPos3fPROC) (GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glWindowPos3iPROC) (GLint x, GLint y, GLint z); +typedef void (APIENTRY *glWindowPos3iPROC) (GLint x, GLint y, GLint z); +typedef void (APIENTRY *glWindowPos3fPROC) (GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glWindowPos2iPROC) (GLint x, GLint y); +typedef void (APIENTRY *glWindowPos2fPROC) (GLfloat x, GLfloat y); +typedef void (APIENTRY *glBlendFuncSeparatePROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); +typedef void (APIENTRY *glSecondaryColorPointerPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid * data); +typedef void (APIENTRY *glSecondaryColor3ubPROC) (GLubyte red, GLubyte green, GLubyte blue); +typedef void (APIENTRY *glSecondaryColor3fPROC) (GLfloat red, GLfloat green, GLfloat blue); +typedef void (APIENTRY *glSecondaryColor3bPROC) (GLbyte red, GLbyte green, GLbyte blue); +typedef void (APIENTRY *glPointParameterfvPROC) (GLenum pname, GLfloat * params); +typedef void (APIENTRY *glPointParameterivPROC) (GLenum pname, GLint * params); +typedef void (APIENTRY *glPointParameterfPROC) (GLenum pname, GLfloat param); +typedef void (APIENTRY *glPointParameteriPROC) (GLenum pname, GLint param); +typedef void (APIENTRY *glMultiDrawArraysPROC) (GLenum mode, GLint * piFirst, GLsizei * piCount, GLsizei primcount); +typedef void (APIENTRY *glFogCoordPointerPROC) (GLenum type, GLsizei stride, const GLvoid * data); +typedef void (APIENTRY *glFogCoordfPROC) (GLfloat coord); +typedef void (APIENTRY *glBlendColorPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); +typedef void (APIENTRY *glBlendEquationPROC) (GLenum mode); -static glFogCoordfPROC glFogCoordf; -static glFogCoordPointerPROC glFogCoordPointer; -static glMultiDrawArraysPROC glMultiDrawArrays; -static glPointParameterfPROC glPointParameterf; -static glPointParameteriPROC glPointParameteri; +static glWindowPos3iPROC glWindowPos3i; +static glWindowPos3fPROC glWindowPos3f; +static glWindowPos2iPROC glWindowPos2i; +static glWindowPos2fPROC glWindowPos2f; +static glBlendFuncSeparatePROC glBlendFuncSeparate; +static glSecondaryColorPointerPROC glSecondaryColorPointer; +static glSecondaryColor3ubPROC glSecondaryColor3ub; +static glSecondaryColor3fPROC glSecondaryColor3f; +static glSecondaryColor3bPROC glSecondaryColor3b; static glPointParameterfvPROC glPointParameterfv; static glPointParameterivPROC glPointParameteriv; -static glSecondaryColor3bPROC glSecondaryColor3b; -static glSecondaryColor3fPROC glSecondaryColor3f; -static glSecondaryColor3ubPROC glSecondaryColor3ub; -static glSecondaryColorPointerPROC glSecondaryColorPointer; -static glBlendFuncSeparatePROC glBlendFuncSeparate; -static glWindowPos2fPROC glWindowPos2f; -static glWindowPos2iPROC glWindowPos2i; -static glWindowPos3fPROC glWindowPos3f; -static glWindowPos3iPROC glWindowPos3i; +static glPointParameterfPROC glPointParameterf; +static glPointParameteriPROC glPointParameteri; +static glMultiDrawArraysPROC glMultiDrawArrays; +static glFogCoordPointerPROC glFogCoordPointer; +static glFogCoordfPROC glFogCoordf; static glBlendColorPROC glBlendColor; static glBlendEquationPROC glBlendEquation; -static void JNICALL Java_org_lwjgl_opengl_GL14_glBlendEquation - (JNIEnv *env, jclass clazz, jint mode) -{ +static void JNICALL Java_org_lwjgl_opengl_GL14_glWindowPos3i(JNIEnv *env, jclass clazz, jint x, jint y, jint z) { + glWindowPos3i(x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glWindowPos3f(JNIEnv *env, jclass clazz, jfloat x, jfloat y, jfloat z) { + glWindowPos3f(x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glWindowPos2i(JNIEnv *env, jclass clazz, jint x, jint y) { + glWindowPos2i(x, y); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glWindowPos2f(JNIEnv *env, jclass clazz, jfloat x, jfloat y) { + glWindowPos2f(x, y); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glBlendFuncSeparate(JNIEnv *env, jclass clazz, jint sfactorRGB, jint dfactorRGB, jint sfactorAlpha, jint dfactorAlpha) { + glBlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_nglSecondaryColorPointer(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glSecondaryColorPointer(size, type, stride, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_nglSecondaryColorPointerBO(JNIEnv *env, jclass clazz, jint size, jint type, jint stride, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glSecondaryColorPointer(size, type, stride, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glSecondaryColor3ub(JNIEnv *env, jclass clazz, jbyte red, jbyte green, jbyte blue) { + glSecondaryColor3ub(red, green, blue); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glSecondaryColor3f(JNIEnv *env, jclass clazz, jfloat red, jfloat green, jfloat blue) { + glSecondaryColor3f(red, green, blue); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glSecondaryColor3b(JNIEnv *env, jclass clazz, jbyte red, jbyte green, jbyte blue) { + glSecondaryColor3b(red, green, blue); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_nglPointParameterfv(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glPointParameterfv(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_nglPointParameteriv(JNIEnv *env, jclass clazz, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glPointParameteriv(pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glPointParameterf(JNIEnv *env, jclass clazz, jint pname, jfloat param) { + glPointParameterf(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glPointParameteri(JNIEnv *env, jclass clazz, jint pname, jint param) { + glPointParameteri(pname, param); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_nglMultiDrawArrays(JNIEnv *env, jclass clazz, jint mode, jobject piFirst, jint piFirst_position, jobject piCount, jint piCount_position, jint primcount) { + GLint *piFirst_address = ((GLint *)(*env)->GetDirectBufferAddress(env, piFirst)) + piFirst_position; + GLsizei *piCount_address = ((GLsizei *)(*env)->GetDirectBufferAddress(env, piCount)) + piCount_position; + glMultiDrawArrays(mode, piFirst_address, piCount_address, primcount); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_nglFogCoordPointer(JNIEnv *env, jclass clazz, jint type, jint stride, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glFogCoordPointer(type, stride, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_nglFogCoordPointerBO(JNIEnv *env, jclass clazz, jint type, jint stride, jint data_buffer_offset) { + const GLvoid *data_address = ((const GLvoid *)offsetToPointer(data_buffer_offset)); + glFogCoordPointer(type, stride, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glFogCoordf(JNIEnv *env, jclass clazz, jfloat coord) { + glFogCoordf(coord); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glBlendColor(JNIEnv *env, jclass clazz, jfloat red, jfloat green, jfloat blue, jfloat alpha) { + glBlendColor(red, green, blue, alpha); +} + +static void JNICALL Java_org_lwjgl_opengl_GL14_glBlendEquation(JNIEnv *env, jclass clazz, jint mode) { glBlendEquation(mode); } -static void JNICALL Java_org_lwjgl_opengl_GL14_glBlendColor(JNIEnv * env, jclass clazz, jfloat p0, jfloat p1, jfloat p2, jfloat p3) -{ - glBlendColor((GLfloat) p0, (GLfloat) p1, (GLfloat) p2, (GLfloat) p3); -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glFogCoordf - * Signature: (F)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glFogCoordf - (JNIEnv *env, jclass clazz, jfloat f) { - glFogCoordf(f); -} - - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: nglFogCoordPointer - * Signature: (IILjava/nio/Buffer;)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_nglFogCoordPointer - (JNIEnv *env, jclass clazz, jint p1, jint p2, jobject buffer, jint offset) { - GLvoid *address = (GLvoid *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glFogCoordPointer(p1, p2, address); - -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: nglFogCoordPointerVBO - * Signature: (IILjava/nio/Buffer;)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_nglFogCoordPointerVBO - (JNIEnv *env, jclass clazz, jint p1, jint p2, jint buffer_offset) { - glFogCoordPointer(p1, p2, offsetToPointer(buffer_offset)); -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glMultiDrawArrays - * Signature: (IIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_nglMultiDrawArrays - (JNIEnv *env, jclass clazz, jint mode, jobject first, jint first_offset, jobject count, jint count_offset, jint primcount) { - GLint *address = first_offset + (GLint *)(*env)->GetDirectBufferAddress(env, first); - GLsizei *address2 = count_offset + (GLsizei *)(*env)->GetDirectBufferAddress(env, count); - glMultiDrawArrays(mode, address, address2, (GLsizei)primcount); -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glPointParameterf - * Signature: (IF)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glPointParameterf - (JNIEnv *env, jclass clazz, jint p1, jfloat p2) { - glPointParameterf(p1, p2); -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glPointParameteri - * Signature: (IF)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glPointParameteri - (JNIEnv *env, jclass clazz, jint p1, jint p2) { - glPointParameteri(p1, p2); -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glPointParameterfv - * Signature: (ILjava/nio/FloatBuffer;)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_nglPointParameterfv - (JNIEnv *env, jclass clazz, jint p1, jobject buffer, jint offset) { - GLfloat *address = offset + (GLfloat *)(*env)->GetDirectBufferAddress(env, buffer); - glPointParameterfv(p1, address); -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glPointParameteriv - * Signature: (ILjava/nio/IntBuffer;)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_nglPointParameteriv - (JNIEnv *env, jclass clazz, jint p1, jobject buffer, jint offset) { - GLint *address = offset + (GLint *)(*env)->GetDirectBufferAddress(env, buffer); - glPointParameteriv(p1, address); -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glSecondaryColor3b - * Signature: (BBB)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glSecondaryColor3b - (JNIEnv *env, jclass clazz, jbyte p1, jbyte p2, jbyte p3) { - glSecondaryColor3b(p1, p2, p3); -} - - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glSecondaryColor3f - * Signature: (FFF)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glSecondaryColor3f - (JNIEnv *env, jclass clazz, jfloat p1, jfloat p2, jfloat p3) { - glSecondaryColor3f(p1, p2, p3); -} - - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glSecondaryColor3ub - * Signature: (BBB)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glSecondaryColor3ub - (JNIEnv *env, jclass clazz, jbyte p1, jbyte p2, jbyte p3) { - glSecondaryColor3ub(p1, p2, p3); -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: nglSecondaryColorPointer - * Signature: (IIILjava/nio/Buffer;)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_nglSecondaryColorPointer - (JNIEnv *env, jclass clazz, jint p1, jint p2, jint p3, jobject buffer, jint offset) { - const GLvoid *address = (const GLvoid *)(offset + (GLbyte *)(*env)->GetDirectBufferAddress(env, buffer)); - glSecondaryColorPointer(p1, p2, p3, address); - -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: nglSecondaryColorPointerVBO - * Signature: (IIILjava/nio/Buffer;)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_nglSecondaryColorPointerVBO - (JNIEnv *env, jclass clazz, jint p1, jint p2, jint p3, jint buffer_offset) { - glSecondaryColorPointer(p1, p2, p3, offsetToPointer(buffer_offset)); - -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glBlendFuncSeparate - * Signature: (IIII)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glBlendFuncSeparate - (JNIEnv *env, jclass clazz, jint p1, jint p2, jint p3, jint p4) { - glBlendFuncSeparate(p1, p2, p3, p4); - -} - - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glWindowPos2f - * Signature: (FF)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glWindowPos2f - (JNIEnv *env, jclass clazz, jfloat p1, jfloat p2) { - glWindowPos2f(p1, p2); -} - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glWindowPos2i - * Signature: (II)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glWindowPos2i - (JNIEnv *env, jclass clazz, jint p1, jint p2) { - glWindowPos2i(p1, p2); -} - - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glWindowPos3f - * Signature: (FFF)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glWindowPos3f - (JNIEnv *env, jclass clazz, jfloat p1, jfloat p2, jfloat p3) { - glWindowPos3f(p1, p2, p3); -} - - -/* - * Class: org_lwjgl_opengl_GL14 - * Method: glWindowPos3i - * Signature: (III)V - */ -static void JNICALL Java_org_lwjgl_opengl_GL14_glWindowPos3i - (JNIEnv *env, jclass clazz, jint p1, jint p2, jint p3) { - glWindowPos3i(p1, p2, p3); -} - -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL14_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"glBlendEquation", "(I)V", (void*)&Java_org_lwjgl_opengl_GL14_glBlendEquation, "glBlendEquation", (void*)&glBlendEquation}, - {"glBlendColor", "(FFFF)V", (void*)&Java_org_lwjgl_opengl_GL14_glBlendColor, "glBlendColor", (void*)&glBlendColor}, - {"glFogCoordf", "(F)V", (void*)&Java_org_lwjgl_opengl_GL14_glFogCoordf, "glFogCoordf", (void*)&glFogCoordf}, - {"nglFogCoordPointer", "(IILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL14_nglFogCoordPointer, "glFogCoordPointer", (void*)&glFogCoordPointer}, - {"nglFogCoordPointerVBO", "(III)V", (void*)&Java_org_lwjgl_opengl_GL14_nglFogCoordPointerVBO, NULL, NULL}, - {"nglMultiDrawArrays", "(ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;II)V", (void*)&Java_org_lwjgl_opengl_GL14_nglMultiDrawArrays, "glMultiDrawArrays", (void*)&glMultiDrawArrays}, - {"glPointParameterf", "(IF)V", (void*)&Java_org_lwjgl_opengl_GL14_glPointParameterf, "glPointParameterf", (void*)&glPointParameterf}, - {"glPointParameteri", "(II)V", (void*)&Java_org_lwjgl_opengl_GL14_glPointParameteri, "glPointParameteri", (void*)&glPointParameteri}, - {"nglPointParameterfv", "(ILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL14_nglPointParameterfv, "glPointParameterfv", (void*)&glPointParameterfv}, - {"nglPointParameteriv", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL14_nglPointParameteriv, "glPointParameteriv", (void*)&glPointParameteriv}, - {"glSecondaryColor3b", "(BBB)V", (void*)&Java_org_lwjgl_opengl_GL14_glSecondaryColor3b, "glSecondaryColor3b", (void*)&glSecondaryColor3b}, - {"glSecondaryColor3f", "(FFF)V", (void*)&Java_org_lwjgl_opengl_GL14_glSecondaryColor3f, "glSecondaryColor3f", (void*)&glSecondaryColor3f}, - {"glSecondaryColor3ub", "(BBB)V", (void*)&Java_org_lwjgl_opengl_GL14_glSecondaryColor3ub, "glSecondaryColor3ub", (void*)&glSecondaryColor3ub}, - {"nglSecondaryColorPointer", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL14_nglSecondaryColorPointer, "glSecondaryColorPointer", (void*)&glSecondaryColorPointer}, - {"nglSecondaryColorPointerVBO", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL14_nglSecondaryColorPointerVBO, NULL, NULL}, - {"glBlendFuncSeparate", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL14_glBlendFuncSeparate, "glBlendFuncSeparate", (void*)&glBlendFuncSeparate}, - {"glWindowPos2f", "(FF)V", (void*)&Java_org_lwjgl_opengl_GL14_glWindowPos2f, "glWindowPos2f", (void*)&glWindowPos2f}, - {"glWindowPos2i", "(II)V", (void*)&Java_org_lwjgl_opengl_GL14_glWindowPos2i, "glWindowPos2i", (void*)&glWindowPos2i}, - {"glWindowPos3f", "(FFF)V", (void*)&Java_org_lwjgl_opengl_GL14_glWindowPos3f, "glWindowPos3f", (void*)&glWindowPos3f}, - {"glWindowPos3i", "(III)V", (void*)&Java_org_lwjgl_opengl_GL14_glWindowPos3i, "glWindowPos3i", (void*)&glWindowPos3i} + {"glWindowPos3i", "(III)V", (void *)&Java_org_lwjgl_opengl_GL14_glWindowPos3i, "glWindowPos3i", (void *)&glWindowPos3i}, + {"glWindowPos3f", "(FFF)V", (void *)&Java_org_lwjgl_opengl_GL14_glWindowPos3f, "glWindowPos3f", (void *)&glWindowPos3f}, + {"glWindowPos2i", "(II)V", (void *)&Java_org_lwjgl_opengl_GL14_glWindowPos2i, "glWindowPos2i", (void *)&glWindowPos2i}, + {"glWindowPos2f", "(FF)V", (void *)&Java_org_lwjgl_opengl_GL14_glWindowPos2f, "glWindowPos2f", (void *)&glWindowPos2f}, + {"glBlendFuncSeparate", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL14_glBlendFuncSeparate, "glBlendFuncSeparate", (void *)&glBlendFuncSeparate}, + {"nglSecondaryColorPointer", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL14_nglSecondaryColorPointer, "glSecondaryColorPointer", (void *)&glSecondaryColorPointer}, + {"nglSecondaryColorPointerBO", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL14_nglSecondaryColorPointerBO, "glSecondaryColorPointer", (void *)&glSecondaryColorPointer}, + {"glSecondaryColor3ub", "(BBB)V", (void *)&Java_org_lwjgl_opengl_GL14_glSecondaryColor3ub, "glSecondaryColor3ub", (void *)&glSecondaryColor3ub}, + {"glSecondaryColor3f", "(FFF)V", (void *)&Java_org_lwjgl_opengl_GL14_glSecondaryColor3f, "glSecondaryColor3f", (void *)&glSecondaryColor3f}, + {"glSecondaryColor3b", "(BBB)V", (void *)&Java_org_lwjgl_opengl_GL14_glSecondaryColor3b, "glSecondaryColor3b", (void *)&glSecondaryColor3b}, + {"nglPointParameterfv", "(ILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL14_nglPointParameterfv, "glPointParameterfv", (void *)&glPointParameterfv}, + {"nglPointParameteriv", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL14_nglPointParameteriv, "glPointParameteriv", (void *)&glPointParameteriv}, + {"glPointParameterf", "(IF)V", (void *)&Java_org_lwjgl_opengl_GL14_glPointParameterf, "glPointParameterf", (void *)&glPointParameterf}, + {"glPointParameteri", "(II)V", (void *)&Java_org_lwjgl_opengl_GL14_glPointParameteri, "glPointParameteri", (void *)&glPointParameteri}, + {"nglMultiDrawArrays", "(ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;II)V", (void *)&Java_org_lwjgl_opengl_GL14_nglMultiDrawArrays, "glMultiDrawArrays", (void *)&glMultiDrawArrays}, + {"nglFogCoordPointer", "(IILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL14_nglFogCoordPointer, "glFogCoordPointer", (void *)&glFogCoordPointer}, + {"nglFogCoordPointerBO", "(III)V", (void *)&Java_org_lwjgl_opengl_GL14_nglFogCoordPointerBO, "glFogCoordPointer", (void *)&glFogCoordPointer}, + {"glFogCoordf", "(F)V", (void *)&Java_org_lwjgl_opengl_GL14_glFogCoordf, "glFogCoordf", (void *)&glFogCoordf}, + {"glBlendColor", "(FFFF)V", (void *)&Java_org_lwjgl_opengl_GL14_glBlendColor, "glBlendColor", (void *)&glBlendColor}, + {"glBlendEquation", "(I)V", (void *)&Java_org_lwjgl_opengl_GL14_glBlendEquation, "glBlendEquation", (void *)&glBlendEquation} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/org_lwjgl_opengl_GL15.c b/src/native/common/org_lwjgl_opengl_GL15.c index 7cb213e5..4304ff76 100644 --- a/src/native/common/org_lwjgl_opengl_GL15.c +++ b/src/native/common/org_lwjgl_opengl_GL15.c @@ -1,344 +1,163 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.GL15 -// ---------------------------------- +/* MACHINE GENERATED FILE, DO NOT EDIT */ +#include #include "extgl.h" -#include "common_tools.h" -typedef void (APIENTRY * glBindBufferPROC) (GLenum target, GLuint buffer); -typedef void (APIENTRY * glDeleteBuffersPROC) (GLsizei n, const GLuint *buffers); -typedef void (APIENTRY * glGenBuffersPROC) (GLsizei n, GLuint *buffers); -typedef GLboolean (APIENTRY * glIsBufferPROC) (GLuint buffer); -typedef void (APIENTRY * glBufferDataPROC) (GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage); -typedef void (APIENTRY * glBufferSubDataPROC) (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data); -typedef void (APIENTRY * glGetBufferSubDataPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data); -typedef void * (APIENTRY * glMapBufferPROC) (GLenum target, GLenum access); -typedef GLboolean (APIENTRY * glUnmapBufferPROC) (GLenum target); -typedef void (APIENTRY * glGetBufferParameterivPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetBufferPointervPROC) (GLenum target, GLenum pname, GLvoid **params); +typedef void (APIENTRY *glGetQueryObjectuivPROC) (GLenum id, GLenum pname, GLuint * params); +typedef void (APIENTRY *glGetQueryObjectivPROC) (GLenum id, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetQueryivPROC) (GLenum target, GLenum pname, GLint * params); +typedef void (APIENTRY *glEndQueryPROC) (GLenum target); +typedef void (APIENTRY *glBeginQueryPROC) (GLenum target, GLuint id); +typedef GLboolean (APIENTRY *glIsQueryPROC) (GLuint id); +typedef void (APIENTRY *glDeleteQueriesPROC) (GLsizei n, GLuint * ids); +typedef void (APIENTRY *glGenQueriesPROC) (GLsizei n, GLuint * ids); +typedef void (APIENTRY *glGetBufferPointervPROC) (GLenum target, GLenum pname, GLvoid ** pointer); +typedef void (APIENTRY *glGetBufferParameterivPROC) (GLenum target, GLenum pname, GLint * params); +typedef GLboolean (APIENTRY *glUnmapBufferPROC) (GLenum target); +typedef GLvoid * (APIENTRY *glMapBufferPROC) (GLenum target, GLenum access); +typedef void (APIENTRY *glGetBufferSubDataPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLvoid * data); +typedef void (APIENTRY *glBufferSubDataPROC) (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid * data); +typedef void (APIENTRY *glBufferDataPROC) (GLenum target, GLsizeiptr size, const GLvoid * data, GLenum usage); +typedef GLboolean (APIENTRY *glIsBufferPROC) (GLuint buffer); +typedef void (APIENTRY *glGenBuffersPROC) (GLsizei n, GLuint * buffers); +typedef void (APIENTRY *glDeleteBuffersPROC) (GLsizei n, const GLuint * buffers); +typedef void (APIENTRY *glBindBufferPROC) (GLenum target, GLuint buffer); -typedef void (APIENTRY * glGenQueriesPROC) (GLsizei n, GLuint *ids); -typedef void (APIENTRY * glDeleteQueriesPROC) (GLsizei n, const GLuint *ids); -typedef GLboolean (APIENTRY * glIsQueryPROC) (GLuint id); -typedef void (APIENTRY * glBeginQueryPROC) (GLenum target, GLuint id); -typedef void (APIENTRY * glEndQueryPROC) (GLenum target); -typedef void (APIENTRY * glGetQueryivPROC) (GLenum target, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetQueryObjectivPROC) (GLuint id, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetQueryObjectuivPROC) (GLuint id, GLenum pname, GLuint *params); - -static glBindBufferPROC glBindBuffer; -static glDeleteBuffersPROC glDeleteBuffers; -static glGenBuffersPROC glGenBuffers; -static glIsBufferPROC glIsBuffer; -static glBufferDataPROC glBufferData; -static glBufferSubDataPROC glBufferSubData; -static glGetBufferSubDataPROC glGetBufferSubData; -static glMapBufferPROC glMapBuffer; -static glUnmapBufferPROC glUnmapBuffer; -static glGetBufferParameterivPROC glGetBufferParameteriv; -static glGetBufferPointervPROC glGetBufferPointerv; - -static glGenQueriesPROC glGenQueries; -static glDeleteQueriesPROC glDeleteQueries; -static glIsQueryPROC glIsQuery; -static glBeginQueryPROC glBeginQuery; -static glEndQueryPROC glEndQuery; -static glGetQueryivPROC glGetQueryiv; -static glGetQueryObjectivPROC glGetQueryObjectiv; static glGetQueryObjectuivPROC glGetQueryObjectuiv; +static glGetQueryObjectivPROC glGetQueryObjectiv; +static glGetQueryivPROC glGetQueryiv; +static glEndQueryPROC glEndQuery; +static glBeginQueryPROC glBeginQuery; +static glIsQueryPROC glIsQuery; +static glDeleteQueriesPROC glDeleteQueries; +static glGenQueriesPROC glGenQueries; +static glGetBufferPointervPROC glGetBufferPointerv; +static glGetBufferParameterivPROC glGetBufferParameteriv; +static glUnmapBufferPROC glUnmapBuffer; +static glMapBufferPROC glMapBuffer; +static glGetBufferSubDataPROC glGetBufferSubData; +static glBufferSubDataPROC glBufferSubData; +static glBufferDataPROC glBufferData; +static glIsBufferPROC glIsBuffer; +static glGenBuffersPROC glGenBuffers; +static glDeleteBuffersPROC glDeleteBuffers; +static glBindBufferPROC glBindBuffer; -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglBindBuffer - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglBindBuffer - (JNIEnv * env, jclass clazz, jint target, jint buffer) -{ - glBindBuffer(target, buffer); - +static void JNICALL Java_org_lwjgl_opengl_GL15_nglGetQueryObjectuiv(JNIEnv *env, jclass clazz, jint id, jint pname, jobject params, jint params_position) { + GLuint *params_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetQueryObjectuiv(id, pname, params_address); } -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglDeleteBuffers - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglDeleteBuffers - (JNIEnv * env, jclass clazz, jint n, jobject buffers, jint buffers_offset) -{ - GLuint *buffers_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, buffers) + buffers_offset; - glDeleteBuffers(n, buffers_ptr); - +static void JNICALL Java_org_lwjgl_opengl_GL15_nglGetQueryObjectiv(JNIEnv *env, jclass clazz, jint id, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetQueryObjectiv(id, pname, params_address); } -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglGenBuffers - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglGenBuffers - (JNIEnv * env, jclass clazz, jint n, jobject buffers, jint buffers_offset) -{ - GLuint *buffers_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, buffers) + buffers_offset; - glGenBuffers(n, buffers_ptr); - +static void JNICALL Java_org_lwjgl_opengl_GL15_nglGetQueryiv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetQueryiv(target, pname, params_address); } -/* - * Class: org.lwjgl.opengl.GL15 - * Method: glIsBuffer - */ -static jboolean JNICALL Java_org_lwjgl_opengl_GL15_glIsBuffer - (JNIEnv * env, jclass clazz, jint buffer) -{ - GLboolean result = glIsBuffer(buffer); - - return result; -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglBufferData - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglBufferData - (JNIEnv * env, jclass clazz, jint target, jint size, jobject data, jint data_offset, jint usage) -{ - GLvoid *data_ptr = (GLvoid *)((char *)safeGetBufferAddress(env, data) + data_offset); - glBufferData(target, size, data_ptr, usage); - -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglBufferSubData - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglBufferSubData - (JNIEnv * env, jclass clazz, jint target, jint offset, jint size, jobject data, jint data_offset) -{ - GLvoid *data_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, data) + data_offset); - glBufferSubData(target, offset, size, data_ptr); - -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglGetBufferSubData - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglGetBufferSubData - (JNIEnv * env, jclass clazz, jint target, jint offset, jint size, jobject data, jint data_offset) -{ - GLvoid *data_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, data) + data_offset); - glGetBufferSubData(target, offset, size, data_ptr); - -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: glMapBuffer - */ -static jobject JNICALL Java_org_lwjgl_opengl_GL15_glMapBuffer - (JNIEnv * env, jclass clazz, jint target, jint access, jint size, jobject oldBuffer) -{ - void *buffer_address = glMapBuffer((GLenum)target, (GLenum)access); - - if (oldBuffer != NULL) { - void *old_buffer_address = (*env)->GetDirectBufferAddress(env, oldBuffer); - if (old_buffer_address == buffer_address) - return oldBuffer; - } - return safeNewBuffer(env, buffer_address, size); -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: glUnmapBuffer - */ -static jboolean JNICALL Java_org_lwjgl_opengl_GL15_glUnmapBuffer - (JNIEnv * env, jclass clazz, jint target) -{ - GLboolean result = glUnmapBuffer(target); - - return result; -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglGetBufferParameteriv - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglGetBufferParameteriv - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject params, jint params_offset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + params_offset; - glGetBufferParameteriv(target, pname, params_ptr); - -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: glGetBufferPointer - */ -static jobject JNICALL Java_org_lwjgl_opengl_GL15_glGetBufferPointer - (JNIEnv * env, jclass clazz, jint target, jint pname, jint size) -{ - void *pointer; - glGetBufferPointerv((GLenum)target, (GLenum)pname, &pointer); - - return safeNewBuffer(env, pointer, size); -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglGenQueries - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglGenQueries - (JNIEnv * env, jclass clazz, jint n, jobject ids, jint idsOffset) -{ - GLuint *ids_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, ids) + idsOffset; - glGenQueries(n, ids_ptr); - -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglDeleteQueries - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglDeleteQueries - (JNIEnv * env, jclass clazz, jint n, jobject ids, jint idsOffset) -{ - GLuint *ids_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, ids) + idsOffset; - glDeleteQueries(n, ids_ptr); - -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: glIsQuery - */ -static jboolean JNICALL Java_org_lwjgl_opengl_GL15_glIsQuery - (JNIEnv * env, jclass clazz, jint id) -{ - GLboolean result = glIsQuery(id); - - return result; -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: glBeginQuery - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_glBeginQuery - (JNIEnv * env, jclass clazz, jint target, jint id) -{ - glBeginQuery(target, id); - -} - -/* - * Class: org.lwjgl.opengl.GL15 - * Method: glEndQuery - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_glEndQuery - (JNIEnv * env, jclass clazz, jint target) -{ +static void JNICALL Java_org_lwjgl_opengl_GL15_glEndQuery(JNIEnv *env, jclass clazz, jint target) { glEndQuery(target); - } -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglGetQueryiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglGetQueryiv - (JNIEnv * env, jclass clazz, jint target, jint pname, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetQueryiv(target, pname, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_GL15_glBeginQuery(JNIEnv *env, jclass clazz, jint target, jint id) { + glBeginQuery(target, id); } -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglGetQueryObjectiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglGetQueryObjectiv - (JNIEnv * env, jclass clazz, jint id, jint pname, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetQueryObjectiv(id, pname, params_ptr); - +static jboolean JNICALL Java_org_lwjgl_opengl_GL15_glIsQuery(JNIEnv *env, jclass clazz, jint id) { + GLboolean __result = glIsQuery(id); + return __result; } -/* - * Class: org.lwjgl.opengl.GL15 - * Method: nglGetQueryObjectuiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL15_nglGetQueryObjectuiv - (JNIEnv * env, jclass clazz, jint id, jint pname, jobject params, jint paramsOffset) -{ - GLuint *params_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetQueryObjectuiv(id, pname, params_ptr); - +static void JNICALL Java_org_lwjgl_opengl_GL15_nglDeleteQueries(JNIEnv *env, jclass clazz, jint n, jobject ids, jint ids_position) { + GLuint *ids_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, ids)) + ids_position; + glDeleteQueries(n, ids_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL15_nglGenQueries(JNIEnv *env, jclass clazz, jint n, jobject ids, jint ids_position) { + GLuint *ids_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, ids)) + ids_position; + glGenQueries(n, ids_address); +} + +static jobject JNICALL Java_org_lwjgl_opengl_GL15_nglGetBufferPointerv(JNIEnv *env, jclass clazz, jint target, jint pname, jint result_size) { + GLvoid * __result; + glGetBufferPointerv(target, pname, &__result); + return safeNewBuffer(env, __result, result_size); +} + +static void JNICALL Java_org_lwjgl_opengl_GL15_nglGetBufferParameteriv(JNIEnv *env, jclass clazz, jint target, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetBufferParameteriv(target, pname, params_address); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_GL15_glUnmapBuffer(JNIEnv *env, jclass clazz, jint target) { + GLboolean __result = glUnmapBuffer(target); + return __result; +} + +static jobject JNICALL Java_org_lwjgl_opengl_GL15_nglMapBuffer(JNIEnv *env, jclass clazz, jint target, jint access, jint result_size, jobject old_buffer) { + GLvoid * __result = glMapBuffer(target, access); + return safeNewBufferCached(env, __result, result_size, old_buffer); +} + +static void JNICALL Java_org_lwjgl_opengl_GL15_nglGetBufferSubData(JNIEnv *env, jclass clazz, jint target, jint offset, jint size, jobject data, jint data_position) { + GLvoid *data_address = ((GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glGetBufferSubData(target, offset, size, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL15_nglBufferSubData(JNIEnv *env, jclass clazz, jint target, jint offset, jint size, jobject data, jint data_position) { + const GLvoid *data_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, data)) + data_position)); + glBufferSubData(target, offset, size, data_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL15_nglBufferData(JNIEnv *env, jclass clazz, jint target, jint size, jobject data, jint data_position, jint usage) { + const GLvoid *data_address = ((const GLvoid *)(((char *)safeGetBufferAddress(env, data)) + data_position)); + glBufferData(target, size, data_address, usage); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_GL15_glIsBuffer(JNIEnv *env, jclass clazz, jint buffer) { + GLboolean __result = glIsBuffer(buffer); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_GL15_nglGenBuffers(JNIEnv *env, jclass clazz, jint n, jobject buffers, jint buffers_position) { + GLuint *buffers_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + glGenBuffers(n, buffers_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL15_nglDeleteBuffers(JNIEnv *env, jclass clazz, jint n, jobject buffers, jint buffers_position) { + const GLuint *buffers_address = ((const GLuint *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + glDeleteBuffers(n, buffers_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL15_nglBindBuffer(JNIEnv *env, jclass clazz, jint target, jint buffer) { + glBindBuffer(target, buffer); } -#ifdef __cplusplus -extern "C" { -#endif JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL15_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - {"nglBindBuffer", "(II)V", (void*)&Java_org_lwjgl_opengl_GL15_nglBindBuffer, "glBindBuffer", (void*)&glBindBuffer}, - {"nglDeleteBuffers", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL15_nglDeleteBuffers, "glDeleteBuffers", (void*)&glDeleteBuffers}, - {"nglGenBuffers", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL15_nglGenBuffers, "glGenBuffers", (void*)&glGenBuffers}, - {"glIsBuffer", "(I)Z", (void*)&Java_org_lwjgl_opengl_GL15_glIsBuffer, "glIsBuffer", (void*)&glIsBuffer}, - {"nglBufferData", "(IILjava/nio/Buffer;II)V", (void*)&Java_org_lwjgl_opengl_GL15_nglBufferData, "glBufferData", (void*)&glBufferData}, - {"nglBufferSubData", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL15_nglBufferSubData, "glBufferSubData", (void*)&glBufferSubData}, - {"nglGetBufferSubData", "(IIILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL15_nglGetBufferSubData, "glGetBufferSubData", (void*)&glGetBufferSubData}, - {"glMapBuffer", "(IIILjava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_GL15_glMapBuffer, "glMapBuffer", (void*)&glMapBuffer}, - {"glUnmapBuffer", "(I)Z", (void*)&Java_org_lwjgl_opengl_GL15_glUnmapBuffer, "glUnmapBuffer", (void*)&glUnmapBuffer}, - {"nglGetBufferParameteriv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL15_nglGetBufferParameteriv, "glGetBufferParameteriv", (void*)&glGetBufferParameteriv}, - {"glGetBufferPointer", "(III)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_GL15_glGetBufferPointer, "glGetBufferPointerv", (void*)&glGetBufferPointerv}, - {"nglGenQueries", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL15_nglGenQueries, "glGenQueries", (void*)&glGenQueries}, - {"nglDeleteQueries", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL15_nglDeleteQueries, "glDeleteQueries", (void*)&glDeleteQueries}, - {"glIsQuery", "(I)Z", (void*)&Java_org_lwjgl_opengl_GL15_glIsQuery, "glIsQuery", (void*)&glIsQuery}, - {"glBeginQuery", "(II)V", (void*)&Java_org_lwjgl_opengl_GL15_glBeginQuery, "glBeginQuery", (void*)&glBeginQuery}, - {"glEndQuery", "(I)V", (void*)&Java_org_lwjgl_opengl_GL15_glEndQuery, "glEndQuery", (void*)&glEndQuery}, - {"nglGetQueryiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL15_nglGetQueryiv, "glGetQueryiv", (void*)&glGetQueryiv}, - {"nglGetQueryObjectiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL15_nglGetQueryObjectiv, "glGetQueryObjectiv", (void*)&glGetQueryObjectiv}, - {"nglGetQueryObjectuiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL15_nglGetQueryObjectuiv, "glGetQueryObjectuiv", (void*)&glGetQueryObjectuiv} + {"nglGetQueryObjectuiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL15_nglGetQueryObjectuiv, "glGetQueryObjectuiv", (void *)&glGetQueryObjectuiv}, + {"nglGetQueryObjectiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL15_nglGetQueryObjectiv, "glGetQueryObjectiv", (void *)&glGetQueryObjectiv}, + {"nglGetQueryiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL15_nglGetQueryiv, "glGetQueryiv", (void *)&glGetQueryiv}, + {"glEndQuery", "(I)V", (void *)&Java_org_lwjgl_opengl_GL15_glEndQuery, "glEndQuery", (void *)&glEndQuery}, + {"glBeginQuery", "(II)V", (void *)&Java_org_lwjgl_opengl_GL15_glBeginQuery, "glBeginQuery", (void *)&glBeginQuery}, + {"glIsQuery", "(I)Z", (void *)&Java_org_lwjgl_opengl_GL15_glIsQuery, "glIsQuery", (void *)&glIsQuery}, + {"nglDeleteQueries", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL15_nglDeleteQueries, "glDeleteQueries", (void *)&glDeleteQueries}, + {"nglGenQueries", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL15_nglGenQueries, "glGenQueries", (void *)&glGenQueries}, + {"nglGetBufferPointerv", "(III)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_GL15_nglGetBufferPointerv, "glGetBufferPointerv", (void *)&glGetBufferPointerv}, + {"nglGetBufferParameteriv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL15_nglGetBufferParameteriv, "glGetBufferParameteriv", (void *)&glGetBufferParameteriv}, + {"glUnmapBuffer", "(I)Z", (void *)&Java_org_lwjgl_opengl_GL15_glUnmapBuffer, "glUnmapBuffer", (void *)&glUnmapBuffer}, + {"nglMapBuffer", "(IIILjava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_GL15_nglMapBuffer, "glMapBuffer", (void *)&glMapBuffer}, + {"nglGetBufferSubData", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL15_nglGetBufferSubData, "glGetBufferSubData", (void *)&glGetBufferSubData}, + {"nglBufferSubData", "(IIILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL15_nglBufferSubData, "glBufferSubData", (void *)&glBufferSubData}, + {"nglBufferData", "(IILjava/nio/Buffer;II)V", (void *)&Java_org_lwjgl_opengl_GL15_nglBufferData, "glBufferData", (void *)&glBufferData}, + {"glIsBuffer", "(I)Z", (void *)&Java_org_lwjgl_opengl_GL15_glIsBuffer, "glIsBuffer", (void *)&glIsBuffer}, + {"nglGenBuffers", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL15_nglGenBuffers, "glGenBuffers", (void *)&glGenBuffers}, + {"nglDeleteBuffers", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL15_nglDeleteBuffers, "glDeleteBuffers", (void *)&glDeleteBuffers}, + {"nglBindBuffer", "(II)V", (void *)&Java_org_lwjgl_opengl_GL15_nglBindBuffer, "glBindBuffer", (void *)&glBindBuffer} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif - diff --git a/src/native/common/org_lwjgl_opengl_GL20.c b/src/native/common/org_lwjgl_opengl_GL20.c index 161971de..c368d60d 100644 --- a/src/native/common/org_lwjgl_opengl_GL20.c +++ b/src/native/common/org_lwjgl_opengl_GL20.c @@ -1,1124 +1,537 @@ -/* - * Copyright (c) 2002-2004 LWJGL Project - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ +/* MACHINE GENERATED FILE, DO NOT EDIT */ -// ---------------------------------- -// IMPLEMENTATION OF NATIVE METHODS FOR CLASS: org.lwjgl.opengl.GL20 -// ---------------------------------- - -#include +#include #include "extgl.h" -#include "common_tools.h" -// ARB_shader_objects -typedef void (APIENTRY * glAttachShaderPROC) (GLuint program, GLuint shader); -typedef void (APIENTRY * glCompileShaderPROC) (GLuint shader); -typedef GLint (APIENTRY * glCreateProgramPROC) (void); -typedef GLint (APIENTRY * glCreateShaderPROC) (GLuint type); -typedef void (APIENTRY * glDeleteProgramPROC) (GLuint program); -typedef void (APIENTRY * glDeleteShaderPROC) (GLuint shader); -typedef void (APIENTRY * glDetachShaderPROC) (GLuint program, GLuint shader); -typedef void (APIENTRY * glGetActiveUniformPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, const GLchar *name); -typedef void (APIENTRY * glGetAttachedShadersPROC) (GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj); -typedef void (APIENTRY * glGetProgramfvPROC) (GLuint program, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetProgramivPROC) (GLuint program, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetProgramInfoLogPROC) (GLuint program, GLsizei maxLength, GLsizei *length, GLchar *infoLog); -typedef void (APIENTRY * glGetShaderfvPROC) (GLuint shader, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetShaderivPROC) (GLuint shader, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetShaderInfoLogPROC) (GLuint shader, GLsizei maxLength, GLsizei *length, GLchar *infoLog); -typedef void (APIENTRY * glGetShaderSourcePROC) (GLuint shader, GLsizei maxLength, GLsizei *length, GLchar *source); -typedef void (APIENTRY * glGetUniformfvPROC) (GLuint program, GLint location, GLfloat *params); -typedef void (APIENTRY * glGetUniformivPROC) (GLuint program, GLint location, GLint *params); -typedef GLint (APIENTRY * glGetUniformLocationPROC) (GLuint program, const GLchar *name); -typedef GLboolean (APIENTRY * glIsProgramPROC) (GLuint program); -typedef GLboolean (APIENTRY * glIsShaderPROC) (GLuint shader); -typedef void (APIENTRY * glLinkProgramPROC) (GLuint program); -typedef void (APIENTRY * glShaderSourcePROC) (GLuint shader, GLsizei count, const GLchar **string, const GLint *length); -typedef void (APIENTRY * glUniform1fPROC) (GLint location, GLfloat v0); -typedef void (APIENTRY * glUniform2fPROC) (GLint location, GLfloat v0, GLfloat v1); -typedef void (APIENTRY * glUniform3fPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2); -typedef void (APIENTRY * glUniform4fPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); -typedef void (APIENTRY * glUniform1iPROC) (GLint location, GLint v0); -typedef void (APIENTRY * glUniform2iPROC) (GLint location, GLint v0, GLint v1); -typedef void (APIENTRY * glUniform3iPROC) (GLint location, GLint v0, GLint v1, GLint v2); -typedef void (APIENTRY * glUniform4iPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3); -typedef void (APIENTRY * glUniform1fvPROC) (GLint location, GLsizei count, GLfloat *value); -typedef void (APIENTRY * glUniform2fvPROC) (GLint location, GLsizei count, GLfloat *value); -typedef void (APIENTRY * glUniform3fvPROC) (GLint location, GLsizei count, GLfloat *value); -typedef void (APIENTRY * glUniform4fvPROC) (GLint location, GLsizei count, GLfloat *value); -typedef void (APIENTRY * glUniform1ivPROC) (GLint location, GLsizei count, GLint *value); -typedef void (APIENTRY * glUniform2ivPROC) (GLint location, GLsizei count, GLint *value); -typedef void (APIENTRY * glUniform3ivPROC) (GLint location, GLsizei count, GLint *value); -typedef void (APIENTRY * glUniform4ivPROC) (GLint location, GLsizei count, GLint *value); -typedef void (APIENTRY * glUniformMatrix2fvPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat *value); -typedef void (APIENTRY * glUniformMatrix3fvPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat *value); -typedef void (APIENTRY * glUniformMatrix4fvPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat *value); -typedef void (APIENTRY * glUseProgramPROC) (GLuint program); -typedef void (APIENTRY * glValidateProgramPROC) (GLuint program); +typedef void (APIENTRY *glBlendEquationSeparatePROC) (GLenum modeRGB, GLenum modeAlpha); +typedef void (APIENTRY *glStencilMaskSeparatePROC) (GLenum face, GLuint mask); +typedef void (APIENTRY *glStencilFuncSeparatePROC) (GLenum face, GLenum func, GLint ref, GLuint mask); +typedef void (APIENTRY *glStencilOpSeparatePROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); +typedef void (APIENTRY *glDrawBuffersPROC) (GLsizei size, const GLenum * buffers); +typedef GLint (APIENTRY *glGetAttribLocationPROC) (GLuint program, const GLchar * name); +typedef void (APIENTRY *glGetActiveAttribPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei * length, GLint * size, GLenum * type, const GLchar * name); +typedef void (APIENTRY *glBindAttribLocationPROC) (GLuint program, GLuint index, const GLchar * name); +typedef void (APIENTRY *glGetVertexAttribPointervPROC) (GLuint index, GLenum pname, GLvoid ** pointer); +typedef void (APIENTRY *glGetVertexAttribivPROC) (GLuint index, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetVertexAttribfvPROC) (GLuint index, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glDisableVertexAttribArrayPROC) (GLuint index); +typedef void (APIENTRY *glEnableVertexAttribArrayPROC) (GLuint index); +typedef void (APIENTRY *glVertexAttribPointerPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid * buffer); +typedef void (APIENTRY *glVertexAttrib4NubPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); +typedef void (APIENTRY *glVertexAttrib4fPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +typedef void (APIENTRY *glVertexAttrib4sPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); +typedef void (APIENTRY *glVertexAttrib3fPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); +typedef void (APIENTRY *glVertexAttrib3sPROC) (GLuint index, GLshort x, GLshort y, GLshort z); +typedef void (APIENTRY *glVertexAttrib2fPROC) (GLuint index, GLfloat x, GLfloat y); +typedef void (APIENTRY *glVertexAttrib2sPROC) (GLuint index, GLshort x, GLshort y); +typedef void (APIENTRY *glVertexAttrib1fPROC) (GLuint index, GLfloat x); +typedef void (APIENTRY *glVertexAttrib1sPROC) (GLuint index, GLshort x); +typedef void (APIENTRY *glGetShaderSourcePROC) (GLuint shader, GLsizei maxLength, GLsizei * length, GLchar * source); +typedef void (APIENTRY *glGetUniformivPROC) (GLuint program, GLint location, GLint * params); +typedef void (APIENTRY *glGetUniformfvPROC) (GLuint program, GLint location, GLfloat * params); +typedef void (APIENTRY *glGetActiveUniformPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); +typedef GLint (APIENTRY *glGetUniformLocationPROC) (GLuint program, const GLchar * name); +typedef void (APIENTRY *glGetAttachedShadersPROC) (GLuint program, GLsizei maxCount, GLsizei * count, GLuint * shaders); +typedef void (APIENTRY *glGetProgramInfoLogPROC) (GLuint program, GLsizei maxLength, GLsizei * length, GLchar * infoLog); +typedef void (APIENTRY *glGetShaderInfoLogPROC) (GLuint shader, GLsizei maxLength, GLsizei * length, GLchar * infoLog); +typedef void (APIENTRY *glGetProgramivPROC) (GLuint program, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetProgramfvPROC) (GLuint program, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glGetShaderivPROC) (GLuint shader, GLenum pname, GLint * params); +typedef void (APIENTRY *glGetShaderfvPROC) (GLuint shader, GLenum pname, GLfloat * params); +typedef void (APIENTRY *glUniformMatrix4fvPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat * matrices); +typedef void (APIENTRY *glUniformMatrix3fvPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat * matrices); +typedef void (APIENTRY *glUniformMatrix2fvPROC) (GLint location, GLsizei count, GLboolean transpose, GLfloat * matrices); +typedef void (APIENTRY *glUniform4ivPROC) (GLint location, GLsizei count, GLint * values); +typedef void (APIENTRY *glUniform3ivPROC) (GLint location, GLsizei count, GLint * values); +typedef void (APIENTRY *glUniform2ivPROC) (GLint location, GLsizei count, GLint * values); +typedef void (APIENTRY *glUniform1ivPROC) (GLint location, GLsizei count, GLint * values); +typedef void (APIENTRY *glUniform4fvPROC) (GLint location, GLsizei count, GLfloat * values); +typedef void (APIENTRY *glUniform3fvPROC) (GLint location, GLsizei count, GLfloat * values); +typedef void (APIENTRY *glUniform2fvPROC) (GLint location, GLsizei count, GLfloat * values); +typedef void (APIENTRY *glUniform1fvPROC) (GLint location, GLsizei count, GLfloat * values); +typedef void (APIENTRY *glUniform4iPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3); +typedef void (APIENTRY *glUniform3iPROC) (GLint location, GLint v0, GLint v1, GLint v2); +typedef void (APIENTRY *glUniform2iPROC) (GLint location, GLint v0, GLint v1); +typedef void (APIENTRY *glUniform1iPROC) (GLint location, GLint v0); +typedef void (APIENTRY *glUniform4fPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); +typedef void (APIENTRY *glUniform3fPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2); +typedef void (APIENTRY *glUniform2fPROC) (GLint location, GLfloat v0, GLfloat v1); +typedef void (APIENTRY *glUniform1fPROC) (GLint location, GLfloat v0); +typedef void (APIENTRY *glDeleteProgramPROC) (GLuint program); +typedef void (APIENTRY *glValidateProgramPROC) (GLuint program); +typedef void (APIENTRY *glUseProgramPROC) (GLuint program); +typedef void (APIENTRY *glLinkProgramPROC) (GLuint program); +typedef void (APIENTRY *glDetachShaderPROC) (GLuint program, GLuint shader); +typedef void (APIENTRY *glAttachShaderPROC) (GLuint program, GLuint shader); +typedef GLboolean (APIENTRY *glIsProgramPROC) (GLint program); +typedef GLint (APIENTRY *glCreateProgramPROC) (); +typedef void (APIENTRY *glDeleteShaderPROC) (GLuint shader); +typedef void (APIENTRY *glCompileShaderPROC) (GLuint shader); +typedef GLboolean (APIENTRY *glIsShaderPROC) (GLuint shader); +typedef GLint (APIENTRY *glCreateShaderPROC) (GLuint type); +typedef void (APIENTRY *glShaderSourcePROC) (GLuint shader, GLsizei count, const GLchar ** string, const GLint* length); -static int sourceCount; -static GLchar** sources = NULL;; -static GLint* sourcesLengths = NULL; - -// ARB_vertex_program -typedef void (APIENTRY * glVertexAttrib1sPROC) (GLuint index, GLshort x); -typedef void (APIENTRY * glVertexAttrib1fPROC) (GLuint index, GLfloat x); -typedef void (APIENTRY * glVertexAttrib2sPROC) (GLuint index, GLshort x, GLshort y); -typedef void (APIENTRY * glVertexAttrib2fPROC) (GLuint index, GLfloat x, GLfloat y); -typedef void (APIENTRY * glVertexAttrib3sPROC) (GLuint index, GLshort x, GLshort y, GLshort z); -typedef void (APIENTRY * glVertexAttrib3fPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z); -typedef void (APIENTRY * glVertexAttrib4sPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); -typedef void (APIENTRY * glVertexAttrib4fPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -typedef void (APIENTRY * glVertexAttrib4NubPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); -typedef void (APIENTRY * glVertexAttrib1svPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib1fvPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib2svPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib2fvPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib2dvPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib3svPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib3fvPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib3dvPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib4bvPROC) (GLuint index, const GLbyte *v); -typedef void (APIENTRY * glVertexAttrib4svPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib4ivPROC) (GLuint index, const GLint *v); -typedef void (APIENTRY * glVertexAttrib4ubvPROC) (GLuint index, const GLubyte *v); -typedef void (APIENTRY * glVertexAttrib4usvPROC) (GLuint index, const GLushort *v); -typedef void (APIENTRY * glVertexAttrib4uivPROC) (GLuint index, const GLuint *v); -typedef void (APIENTRY * glVertexAttrib4fvPROC) (GLuint index, const GLfloat *v); -typedef void (APIENTRY * glVertexAttrib4dvPROC) (GLuint index, const GLdouble *v); -typedef void (APIENTRY * glVertexAttrib4NbvPROC) (GLuint index, const GLbyte *v); -typedef void (APIENTRY * glVertexAttrib4NsvPROC) (GLuint index, const GLshort *v); -typedef void (APIENTRY * glVertexAttrib4NivPROC) (GLuint index, const GLint *v); -typedef void (APIENTRY * glVertexAttrib4NubvPROC) (GLuint index, const GLubyte *v); -typedef void (APIENTRY * glVertexAttrib4NusvPROC) (GLuint index, const GLushort *v); -typedef void (APIENTRY * glVertexAttrib4NuivPROC) (GLuint index, const GLuint *v); -typedef void (APIENTRY * glVertexAttribPointerPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer); -typedef void (APIENTRY * glEnableVertexAttribArrayPROC) (GLuint index); -typedef void (APIENTRY * glDisableVertexAttribArrayPROC) (GLuint index); -typedef void (APIENTRY * glGetVertexAttribdvPROC) (GLuint index, GLenum pname, GLdouble *params); -typedef void (APIENTRY * glGetVertexAttribfvPROC) (GLuint index, GLenum pname, GLfloat *params); -typedef void (APIENTRY * glGetVertexAttribivPROC) (GLuint index, GLenum pname, GLint *params); -typedef void (APIENTRY * glGetVertexAttribPointervPROC) (GLuint index, GLenum pname, GLvoid **pointer); - -// ARB_vertex_shader -typedef void (APIENTRY * glBindAttribLocationPROC) (GLuint program, GLuint index, const GLchar *name); -typedef void (APIENTRY * glGetActiveAttribPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, const GLchar *name); -typedef GLint (APIENTRY * glGetAttribLocationPROC) (GLuint program, const GLchar *name); -// ARB_draw_buffers -typedef void (APIENTRY * glDrawBuffersPROC) (GLsizei n, const GLenum *bufs); -// Two-Sided Stencil -typedef void (APIENTRY * glStencilOpSeparatePROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); -typedef void (APIENTRY * glStencilFuncSeparatePROC) (GLenum face, GLenum func, GLint ref, GLuint mask); -typedef void (APIENTRY * glStencilMaskSeparatePROC) (GLenum face, GLuint mask); -// EXT_blend_equation_separate -typedef void (APIENTRY * glBlendEquationSeparatePROC) (GLenum modeRGB, GLenum modeAlpha); - -// ARB_shader_objects -static glAttachShaderPROC glAttachShader; -static glCompileShaderPROC glCompileShader; -static glCreateProgramPROC glCreateProgram; -static glCreateShaderPROC glCreateShader; -static glDeleteProgramPROC glDeleteProgram; -static glDeleteShaderPROC glDeleteShader; -static glDetachShaderPROC glDetachShader; -static glGetActiveUniformPROC glGetActiveUniform; -static glGetAttachedShadersPROC glGetAttachedShaders; -static glGetProgramfvPROC glGetProgramfv; -static glGetProgramivPROC glGetProgramiv; -static glGetProgramInfoLogPROC glGetProgramInfoLog; -static glGetShaderfvPROC glGetShaderfv; -static glGetShaderivPROC glGetShaderiv; -static glGetShaderInfoLogPROC glGetShaderInfoLog; -static glGetShaderSourcePROC glGetShaderSource; -static glGetUniformfvPROC glGetUniformfv; -static glGetUniformivPROC glGetUniformiv; -static glGetUniformLocationPROC glGetUniformLocation; -static glIsProgramPROC glIsProgram; -static glIsShaderPROC glIsShader; -static glLinkProgramPROC glLinkProgram; -static glShaderSourcePROC glShaderSource; -static glUniform1fPROC glUniform1f; -static glUniform2fPROC glUniform2f; -static glUniform3fPROC glUniform3f; -static glUniform4fPROC glUniform4f; -static glUniform1iPROC glUniform1i; -static glUniform2iPROC glUniform2i; -static glUniform3iPROC glUniform3i; -static glUniform4iPROC glUniform4i; -static glUniform1fvPROC glUniform1fv; -static glUniform2fvPROC glUniform2fv; -static glUniform3fvPROC glUniform3fv; -static glUniform4fvPROC glUniform4fv; -static glUniform1ivPROC glUniform1iv; -static glUniform2ivPROC glUniform2iv; -static glUniform3ivPROC glUniform3iv; -static glUniform4ivPROC glUniform4iv; -static glUniformMatrix2fvPROC glUniformMatrix2fv; -static glUniformMatrix3fvPROC glUniformMatrix3fv; -static glUniformMatrix4fvPROC glUniformMatrix4fv; -static glUseProgramPROC glUseProgram; -static glValidateProgramPROC glValidateProgram; -// ARB_vertex_program -static glVertexAttrib1sPROC glVertexAttrib1s; -static glVertexAttrib1fPROC glVertexAttrib1f; -static glVertexAttrib2sPROC glVertexAttrib2s; -static glVertexAttrib2fPROC glVertexAttrib2f; -static glVertexAttrib3sPROC glVertexAttrib3s; -static glVertexAttrib3fPROC glVertexAttrib3f; -static glVertexAttrib4sPROC glVertexAttrib4s; -static glVertexAttrib4fPROC glVertexAttrib4f; -static glVertexAttrib4NubPROC glVertexAttrib4Nub; -static glVertexAttribPointerPROC glVertexAttribPointer; -static glEnableVertexAttribArrayPROC glEnableVertexAttribArray; -static glDisableVertexAttribArrayPROC glDisableVertexAttribArray; -static glGetVertexAttribfvPROC glGetVertexAttribfv; -static glGetVertexAttribivPROC glGetVertexAttribiv; -static glGetVertexAttribPointervPROC glGetVertexAttribPointerv; -// ARB_vertex_shader -static glBindAttribLocationPROC glBindAttribLocation; -static glGetActiveAttribPROC glGetActiveAttrib; -static glGetAttribLocationPROC glGetAttribLocation; -// ARB_draw_buffers -static glDrawBuffersPROC glDrawBuffers; -// Two-Sided Stencil -static glStencilOpSeparatePROC glStencilOpSeparate; -static glStencilFuncSeparatePROC glStencilFuncSeparate; -static glStencilMaskSeparatePROC glStencilMaskSeparate; -// EXT_blend_equation_separate static glBlendEquationSeparatePROC glBlendEquationSeparate; - -// ------------------------------------------------------------------ -// ----------------------[ ARB_shader_objects ]---------------------- -// ------------------------------------------------------------------ - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: initShaderSource - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_initShaderSource - (JNIEnv * env, jclass clazz, jint count) -{ - sourceCount = count; - - sources = (GLchar**)malloc(sizeof(GLchar*) * sourceCount); - sourcesLengths = (GLint*)malloc(sizeof(GLint) * sourceCount); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: setShaderString - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_setShaderString - (JNIEnv * env, jclass clazz, jint index, jobject string, jint stringOffset, jint stringLength) -{ - GLchar *string_ptr = (GLchar *)((GLubyte *)(*env)->GetDirectBufferAddress(env, string) + stringOffset); - - sources[index] = string_ptr; - sourcesLengths[index] = stringLength; -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglShaderSource - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglShaderSource - (JNIEnv * env, jclass clazz, jint shader) -{ - glShaderSource(shader, sourceCount, (const GLchar **)sources, (const GLint *)sourcesLengths); - - free(sources); - free(sourcesLengths); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glCreateShader - */ -static jint JNICALL Java_org_lwjgl_opengl_GL20_glCreateShader - (JNIEnv * env, jclass clazz, jint type) -{ - return glCreateShader(type); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glIsShader - */ -static jboolean JNICALL Java_org_lwjgl_opengl_GL20_glIsShader - (JNIEnv * env, jclass clazz, jint shader) -{ - return glIsShader(shader); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glCompileShader - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glCompileShader(JNIEnv * env, jclass clazz, jint shader) -{ - glCompileShader(shader); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glDeleteShader - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glDeleteShader - (JNIEnv * env, jclass clazz, jint shader) -{ - glDeleteShader(shader); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glCreateProgram - */ -static jint JNICALL Java_org_lwjgl_opengl_GL20_glCreateProgram - (JNIEnv * env, jclass clazz) -{ - return glCreateProgram(); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glIsProgram - */ -static jboolean JNICALL Java_org_lwjgl_opengl_GL20_glIsProgram - (JNIEnv * env, jclass clazz, jint program) -{ - return glIsProgram(program); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glAttachShader - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glAttachShader - (JNIEnv * env, jclass clazz, jint program, jint shader) -{ - glAttachShader(program, shader); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glDetachShader - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glDetachShader - (JNIEnv * env, jclass clazz, jint program, jint shader) -{ - glDetachShader(program, shader); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glLinkProgram - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glLinkProgram - (JNIEnv * env, jclass clazz, jint program) -{ - glLinkProgram(program); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glUseProgram - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glUseProgram - (JNIEnv * env, jclass clazz, jint program) -{ - glUseProgram(program); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glValidateProgram - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glValidateProgram - (JNIEnv * env, jclass clazz, jint program) -{ - glValidateProgram(program); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glDeleteProgram - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glDeleteProgram - (JNIEnv * env, jclass clazz, jint program) -{ - glDeleteProgram(program); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glUniform1f - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform1f - (JNIEnv * env, jclass clazz, jint location, jfloat v0) -{ - glUniform1f(location, v0); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glUniform2f - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform2f - (JNIEnv * env, jclass clazz, jint location, jfloat v0, jfloat v1) -{ - glUniform2f(location, v0, v1); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glUniform3f - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform3f - (JNIEnv * env, jclass clazz, jint location, jfloat v0, jfloat v1, jfloat v2) -{ - glUniform3f(location, v0, v1, v2); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glUniform4f - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform4f - (JNIEnv * env, jclass clazz, jint location, jfloat v0, jfloat v1, jfloat v2, jfloat v3) -{ - glUniform4f(location, v0, v1, v2, v3); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glUniform1i - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform1i - (JNIEnv * env, jclass clazz, jint location, jint v0) -{ - glUniform1i(location, v0); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glUniform2i - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform2i - (JNIEnv * env, jclass clazz, jint location, jint v0, jint v1) -{ - glUniform2i(location, v0, v1); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glUniform3i - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform3i - (JNIEnv * env, jclass clazz, jint location, jint v0, jint v1, jint v2) -{ - glUniform3i(location, v0, v1, v2); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glUniform4i - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform4i - (JNIEnv * env, jclass clazz, jint location, jint v0, jint v1, jint v2, jint v3) -{ - glUniform4i(location, v0, v1, v2, v3); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniform1fv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform1fv - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLfloat *values_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform1fv(location, count, values_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniform2fv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform2fv - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLfloat *values_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform2fv(location, count, values_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniform3fv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform3fv - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLfloat *values_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform3fv(location, count, values_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniform4fv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform4fv - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLfloat *values_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform4fv(location, count, values_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniform1iv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform1iv - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLint *values_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform1iv(location, count, values_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniform2iv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform2iv - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLint *values_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform2iv(location, count, values_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniform3iv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform3iv - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLint *values_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform3iv(location, count, values_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniform4iv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform4iv - (JNIEnv * env, jclass clazz, jint location, jint count, jobject values, jint valuesOffset) -{ - GLint *values_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, values) + valuesOffset; - glUniform4iv(location, count, values_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniformMatrix2fv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniformMatrix2fv - (JNIEnv * env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matricesOffset) -{ - GLfloat *matrices_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, matrices) + matricesOffset; - glUniformMatrix2fv(location, count, transpose, matrices_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniformMatrix3fv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniformMatrix3fv - (JNIEnv * env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matricesOffset) -{ - GLfloat *matrices_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, matrices) + matricesOffset; - glUniformMatrix3fv(location, count, transpose, matrices_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglUniformMatrix4fv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniformMatrix4fv - (JNIEnv * env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matricesOffset) -{ - GLfloat *matrices_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, matrices) + matricesOffset; - glUniformMatrix4fv(location, count, transpose, matrices_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetShaderfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetShaderfv - (JNIEnv * env, jclass clazz, jint shader, jint pname, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetShaderfv(shader, pname, params_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetShaderiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetShaderiv - (JNIEnv * env, jclass clazz, jint shader, jint pname, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetShaderiv(shader, pname, params_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetProgramfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetProgramfv - (JNIEnv * env, jclass clazz, jint program, jint pname, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetProgramfv(program, pname, params_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetProgramiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetProgramiv - (JNIEnv * env, jclass clazz, jint program, jint pname, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetProgramiv(program, pname, params_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetShaderInfoLog - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetShaderInfoLog - (JNIEnv * env, jclass clazz, jint shader, jint maxLength, jobject length, jint lengthOffset, jobject infoLog, jint infoLogOffset) -{ - GLubyte *infoLog_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, infoLog) + infoLogOffset; - - if ( length == NULL ) { - glGetShaderInfoLog(shader, maxLength, NULL, infoLog_ptr); - } else { - GLsizei *length_ptr = (GLsizei *)(*env)->GetDirectBufferAddress(env, length) + lengthOffset; - glGetShaderInfoLog(shader, maxLength, length_ptr, infoLog_ptr); - } -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetProgramInfoLog - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetProgramInfoLog - (JNIEnv * env, jclass clazz, jint program, jint maxLength, jobject length, jint lengthOffset, jobject infoLog, jint infoLogOffset) -{ - GLubyte *infoLog_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, infoLog) + infoLogOffset; - - if ( length == NULL ) { - glGetProgramInfoLog(program, maxLength, NULL, infoLog_ptr); - } else { - GLsizei *length_ptr = (GLsizei *)(*env)->GetDirectBufferAddress(env, length) + lengthOffset; - glGetProgramInfoLog(program, maxLength, length_ptr, infoLog_ptr); - } -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetAttachedShaders - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetAttachedShaders - (JNIEnv * env, jclass clazz, jint program, jint maxCount, jobject count, jint countOffset, jobject shaders, jint shadersOffset) -{ - GLuint *shaders_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, shaders) + shadersOffset; - - if ( count == NULL ) { - glGetAttachedShaders(program, maxCount, NULL, shaders_ptr); - } else { - GLsizei *count_ptr = (GLsizei *)(*env)->GetDirectBufferAddress(env, count) + countOffset; - glGetAttachedShaders(program, maxCount, count_ptr, shaders_ptr); - } -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetUniformLocation - */ -static jint JNICALL Java_org_lwjgl_opengl_GL20_nglGetUniformLocation - (JNIEnv * env, jclass clazz, jint program, jobject name, jint nameOffset) -{ - GLubyte *name_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - return glGetUniformLocation(program, name_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetActiveUniform - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetActiveUniform - (JNIEnv * env, jclass clazz, jint program, jint index, jint maxLength, jobject length, jint lengthOffset, jobject size, jint sizeOffset, jobject type, jint typeOffset, jobject name, jint nameOffset) -{ - GLint *size_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, size) + sizeOffset; - GLenum *type_ptr = (GLenum *)(*env)->GetDirectBufferAddress(env, type) + typeOffset; - GLchar *name_ptr = (GLchar *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - - if ( length == NULL ) { - glGetActiveUniform(program, index, maxLength, (GLsizei *)NULL, size_ptr, type_ptr, name_ptr); - } else { - GLsizei *length_ptr = (GLsizei *)(*env)->GetDirectBufferAddress(env, length) + lengthOffset; - glGetActiveUniform(program, index, maxLength, length_ptr, size_ptr, type_ptr, name_ptr); - } -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetUniformfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetUniformfv - (JNIEnv * env, jclass clazz, jint program, jint location, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetUniformfv(program, location, params_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetUniformiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetUniformiv - (JNIEnv * env, jclass clazz, jint program, jint location, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetUniformiv(program, location, params_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetShaderSource - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetShaderSource - (JNIEnv * env, jclass clazz, jint shader, jint maxLength, jobject length, jint lengthOffset, jobject source, jint sourceOffset) -{ - GLubyte *source_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, source) + sourceOffset; - - if ( length == NULL ) { - glGetShaderSource(shader, maxLength, NULL, source_ptr); - } else { - GLint *length_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, length) + lengthOffset; - glGetShaderSource(shader, maxLength, length_ptr, source_ptr); - } -} - -// ------------------------------------------------------------------ -// ----------------------[ ARB_vertex_program ]---------------------- -// ------------------------------------------------------------------ - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glVertexAttrib1s - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib1s - (JNIEnv * env, jclass clazz, jint index, jshort x) -{ - glVertexAttrib1s(index, x); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glVertexAttrib1f - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib1f - (JNIEnv * env, jclass clazz, jint index, jfloat x) -{ - glVertexAttrib1f(index, x); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glVertexAttrib2s - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib2s - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y) -{ - glVertexAttrib2s(index, x, y); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glVertexAttrib2f - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib2f - (JNIEnv * env, jclass clazz, jint index, jfloat x, jfloat y) -{ - glVertexAttrib2f(index, x, y); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glVertexAttrib3s - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib3s - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y, jshort z) -{ - glVertexAttrib3s(index, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glVertexAttrib3f - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib3f - (JNIEnv * env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z) -{ - glVertexAttrib3f(index, x, y, z); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glVertexAttrib4s - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib4s - (JNIEnv * env, jclass clazz, jint index, jshort x, jshort y, jshort z, jshort w) -{ - glVertexAttrib4s(index, x, y, z, w); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glVertexAttrib4f - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib4f - (JNIEnv * env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z, jfloat w) -{ - glVertexAttrib4f(index, x, y, z, w); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glVertexAttrib4Nub - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib4Nub - (JNIEnv * env, jclass clazz, jint index, jbyte x, jbyte y, jbyte z, jbyte w) -{ - glVertexAttrib4Nub(index, x, y, z, w); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglVertexAttribPointer - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglVertexAttribPointer - (JNIEnv * env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jobject buffer, jint bufferOffset) -{ - GLvoid *buffer_ptr = (GLvoid *)((GLubyte *)(*env)->GetDirectBufferAddress(env, buffer) + bufferOffset); - glVertexAttribPointer(index, size, type, normalized, stride, buffer_ptr); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglVertexAttribPointerVBO - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglVertexAttribPointerVBO - (JNIEnv * env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jint bufferOffset) -{ - glVertexAttribPointer(index, size, type, normalized, stride, (GLvoid *)bufferOffset); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glEnableVertexAttribArray - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glEnableVertexAttribArray - (JNIEnv * env, jclass clazz, jint index) -{ - glEnableVertexAttribArray(index); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glDisableVertexAttribArray - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glDisableVertexAttribArray - (JNIEnv * env, jclass clazz, jint index) -{ - glDisableVertexAttribArray(index); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetVertexAttribfv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetVertexAttribfv - (JNIEnv * env, jclass clazz, jint index, jint pname, jobject params, jint paramsOffset) -{ - GLfloat *params_ptr = (GLfloat *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetVertexAttribfv(index, pname, params_ptr); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetVertexAttribiv - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetVertexAttribiv - (JNIEnv * env, jclass clazz, jint index, jint pname, jobject params, jint paramsOffset) -{ - GLint *params_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, params) + paramsOffset; - glGetVertexAttribiv(index, pname, params_ptr); - -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glGetVertexAttribPointer - */ -static jobject JNICALL Java_org_lwjgl_opengl_GL20_glGetVertexAttribPointer - (JNIEnv * env, jclass clazz, jint index, jint pname, jint size) -{ - void *address; - glGetVertexAttribPointerv((GLuint)index, (GLuint)pname, &address); - - return safeNewBuffer(env, address, size); -} - -// ------------------------------------------------------------------ -// ----------------------[ ARB_vertex_shaders ]---------------------- -// ------------------------------------------------------------------ -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglBindAttribLocation - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglBindAttribLocation - (JNIEnv * env, jclass clazz, jint program, jint index, jobject name, jint nameOffset) -{ - GLubyte *name_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - glBindAttribLocation(program, index, name_ptr); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetActiveAttrib - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetActiveAttrib - (JNIEnv * env, jclass clazz, jint program, jint index, jint maxLength, jobject length, jint lengthOffset, jobject size, jint sizeOffset, jobject type, jint typeOffset, jobject name, jint nameOffset) -{ - GLint *size_ptr = (GLint *)(*env)->GetDirectBufferAddress(env, size) + sizeOffset; - GLenum *type_ptr = (GLenum *)(*env)->GetDirectBufferAddress(env, type) + typeOffset; - GLchar *name_ptr = (GLchar *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - - if ( length == NULL ) { - glGetActiveAttrib(program, index, maxLength, NULL, size_ptr, type_ptr, name_ptr); - } else { - GLsizei *length_ptr = (GLsizei *)(*env)->GetDirectBufferAddress(env, length) + lengthOffset; - glGetActiveAttrib(program, index, maxLength, length_ptr, size_ptr, type_ptr, name_ptr); - } -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglGetAttribLocation - */ -static jint JNICALL Java_org_lwjgl_opengl_GL20_nglGetAttribLocation - (JNIEnv * env, jclass clazz, jint program, jobject name, jint nameOffset) -{ - GLubyte *name_ptr = (GLubyte *)(*env)->GetDirectBufferAddress(env, name) + nameOffset; - return glGetAttribLocation(program, name_ptr); -} - -// ---------------------------------------------------------------- -// ----------------------[ ARB_draw_buffers ]---------------------- -// ---------------------------------------------------------------- - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: nglDrawBuffers - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_nglDrawBuffers - (JNIEnv * env, jclass clazz, jint size, jobject buffers, jint buffersOffset) -{ - GLuint *buffers_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, buffers) + buffersOffset; - glDrawBuffers(size, buffers_ptr); -} - -// ----------------------------------------------------------------- -// ----------------------[ Two-Sided Stencil ]---------------------- -// ----------------------------------------------------------------- - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glStencilOpSeparate - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glStencilOpSeparate - (JNIEnv * env, jclass clazz, jint face, jint sfail, jint dpfail, jint dppass) -{ - glStencilOpSeparate(face, sfail, dpfail, dppass); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glStencilFuncSeparate - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glStencilFuncSeparate - (JNIEnv * env, jclass clazz, jint face, jint func, jint ref, jint mask) -{ - glStencilFuncSeparate(face, func, ref, mask); -} - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glStencilMaskSeparate - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glStencilMaskSeparate - (JNIEnv * env, jclass clazz, jint face, jint mask) -{ - glStencilMaskSeparate(face, mask); -} - -// ----------------------------------------------------------------- -// ----------------------[ EXT_blend_equation_separate ]---------------------- -// ----------------------------------------------------------------- - -/* - * Class: org.lwjgl.opengl.GL20 - * Method: glBlendEquationSeparate - */ -static void JNICALL Java_org_lwjgl_opengl_GL20_glBlendEquationSeparate - (JNIEnv * env, jclass clazz, jint modeRGB, jint modeAlpha) -{ +static glStencilMaskSeparatePROC glStencilMaskSeparate; +static glStencilFuncSeparatePROC glStencilFuncSeparate; +static glStencilOpSeparatePROC glStencilOpSeparate; +static glDrawBuffersPROC glDrawBuffers; +static glGetAttribLocationPROC glGetAttribLocation; +static glGetActiveAttribPROC glGetActiveAttrib; +static glBindAttribLocationPROC glBindAttribLocation; +static glGetVertexAttribPointervPROC glGetVertexAttribPointerv; +static glGetVertexAttribivPROC glGetVertexAttribiv; +static glGetVertexAttribfvPROC glGetVertexAttribfv; +static glDisableVertexAttribArrayPROC glDisableVertexAttribArray; +static glEnableVertexAttribArrayPROC glEnableVertexAttribArray; +static glVertexAttribPointerPROC glVertexAttribPointer; +static glVertexAttrib4NubPROC glVertexAttrib4Nub; +static glVertexAttrib4fPROC glVertexAttrib4f; +static glVertexAttrib4sPROC glVertexAttrib4s; +static glVertexAttrib3fPROC glVertexAttrib3f; +static glVertexAttrib3sPROC glVertexAttrib3s; +static glVertexAttrib2fPROC glVertexAttrib2f; +static glVertexAttrib2sPROC glVertexAttrib2s; +static glVertexAttrib1fPROC glVertexAttrib1f; +static glVertexAttrib1sPROC glVertexAttrib1s; +static glGetShaderSourcePROC glGetShaderSource; +static glGetUniformivPROC glGetUniformiv; +static glGetUniformfvPROC glGetUniformfv; +static glGetActiveUniformPROC glGetActiveUniform; +static glGetUniformLocationPROC glGetUniformLocation; +static glGetAttachedShadersPROC glGetAttachedShaders; +static glGetProgramInfoLogPROC glGetProgramInfoLog; +static glGetShaderInfoLogPROC glGetShaderInfoLog; +static glGetProgramivPROC glGetProgramiv; +static glGetProgramfvPROC glGetProgramfv; +static glGetShaderivPROC glGetShaderiv; +static glGetShaderfvPROC glGetShaderfv; +static glUniformMatrix4fvPROC glUniformMatrix4fv; +static glUniformMatrix3fvPROC glUniformMatrix3fv; +static glUniformMatrix2fvPROC glUniformMatrix2fv; +static glUniform4ivPROC glUniform4iv; +static glUniform3ivPROC glUniform3iv; +static glUniform2ivPROC glUniform2iv; +static glUniform1ivPROC glUniform1iv; +static glUniform4fvPROC glUniform4fv; +static glUniform3fvPROC glUniform3fv; +static glUniform2fvPROC glUniform2fv; +static glUniform1fvPROC glUniform1fv; +static glUniform4iPROC glUniform4i; +static glUniform3iPROC glUniform3i; +static glUniform2iPROC glUniform2i; +static glUniform1iPROC glUniform1i; +static glUniform4fPROC glUniform4f; +static glUniform3fPROC glUniform3f; +static glUniform2fPROC glUniform2f; +static glUniform1fPROC glUniform1f; +static glDeleteProgramPROC glDeleteProgram; +static glValidateProgramPROC glValidateProgram; +static glUseProgramPROC glUseProgram; +static glLinkProgramPROC glLinkProgram; +static glDetachShaderPROC glDetachShader; +static glAttachShaderPROC glAttachShader; +static glIsProgramPROC glIsProgram; +static glCreateProgramPROC glCreateProgram; +static glDeleteShaderPROC glDeleteShader; +static glCompileShaderPROC glCompileShader; +static glIsShaderPROC glIsShader; +static glCreateShaderPROC glCreateShader; +static glShaderSourcePROC glShaderSource; + +static void JNICALL Java_org_lwjgl_opengl_GL20_glBlendEquationSeparate(JNIEnv *env, jclass clazz, jint modeRGB, jint modeAlpha) { glBlendEquationSeparate(modeRGB, modeAlpha); } -#ifdef __cplusplus -extern "C" { -#endif +static void JNICALL Java_org_lwjgl_opengl_GL20_glStencilMaskSeparate(JNIEnv *env, jclass clazz, jint face, jint mask) { + glStencilMaskSeparate(face, mask); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glStencilFuncSeparate(JNIEnv *env, jclass clazz, jint face, jint func, jint ref, jint mask) { + glStencilFuncSeparate(face, func, ref, mask); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glStencilOpSeparate(JNIEnv *env, jclass clazz, jint face, jint sfail, jint dpfail, jint dppass) { + glStencilOpSeparate(face, sfail, dpfail, dppass); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglDrawBuffers(JNIEnv *env, jclass clazz, jint size, jobject buffers, jint buffers_position) { + const GLenum *buffers_address = ((const GLenum *)(*env)->GetDirectBufferAddress(env, buffers)) + buffers_position; + glDrawBuffers(size, buffers_address); +} + +static jint JNICALL Java_org_lwjgl_opengl_GL20_nglGetAttribLocation(JNIEnv *env, jclass clazz, jint program, jobject name, jint name_position) { + const GLchar *name_address = ((const GLchar *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + GLint __result = glGetAttribLocation(program, name_address); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetActiveAttrib(JNIEnv *env, jclass clazz, jint program, jint index, jint maxLength, jobject length, jint length_position, jobject size, jint size_position, jobject type, jint type_position, jobject name, jint name_position) { + GLsizei *length_address = ((GLsizei *)safeGetBufferAddress(env, length)) + length_position; + GLint *size_address = ((GLint *)(*env)->GetDirectBufferAddress(env, size)) + size_position; + GLenum *type_address = ((GLenum *)(*env)->GetDirectBufferAddress(env, type)) + type_position; + const GLchar *name_address = ((const GLchar *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + glGetActiveAttrib(program, index, maxLength, length_address, size_address, type_address, name_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglBindAttribLocation(JNIEnv *env, jclass clazz, jint program, jint index, jobject name, jint name_position) { + const GLchar *name_address = ((const GLchar *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + glBindAttribLocation(program, index, name_address); +} + +static jobject JNICALL Java_org_lwjgl_opengl_GL20_nglGetVertexAttribPointerv(JNIEnv *env, jclass clazz, jint index, jint pname, jint result_size) { + GLvoid * __result; + glGetVertexAttribPointerv(index, pname, &__result); + return safeNewBuffer(env, __result, result_size); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetVertexAttribiv(JNIEnv *env, jclass clazz, jint index, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetVertexAttribiv(index, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetVertexAttribfv(JNIEnv *env, jclass clazz, jint index, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetVertexAttribfv(index, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glDisableVertexAttribArray(JNIEnv *env, jclass clazz, jint index) { + glDisableVertexAttribArray(index); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glEnableVertexAttribArray(JNIEnv *env, jclass clazz, jint index) { + glEnableVertexAttribArray(index); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglVertexAttribPointer(JNIEnv *env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jobject buffer, jint buffer_position) { + const GLvoid *buffer_address = ((const GLvoid *)(((char *)(*env)->GetDirectBufferAddress(env, buffer)) + buffer_position)); + glVertexAttribPointer(index, size, type, normalized, stride, buffer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglVertexAttribPointerBO(JNIEnv *env, jclass clazz, jint index, jint size, jint type, jboolean normalized, jint stride, jint buffer_buffer_offset) { + const GLvoid *buffer_address = ((const GLvoid *)offsetToPointer(buffer_buffer_offset)); + glVertexAttribPointer(index, size, type, normalized, stride, buffer_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib4Nub(JNIEnv *env, jclass clazz, jint index, jbyte x, jbyte y, jbyte z, jbyte w) { + glVertexAttrib4Nub(index, x, y, z, w); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib4f(JNIEnv *env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z, jfloat w) { + glVertexAttrib4f(index, x, y, z, w); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib4s(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y, jshort z, jshort w) { + glVertexAttrib4s(index, x, y, z, w); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib3f(JNIEnv *env, jclass clazz, jint index, jfloat x, jfloat y, jfloat z) { + glVertexAttrib3f(index, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib3s(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y, jshort z) { + glVertexAttrib3s(index, x, y, z); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib2f(JNIEnv *env, jclass clazz, jint index, jfloat x, jfloat y) { + glVertexAttrib2f(index, x, y); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib2s(JNIEnv *env, jclass clazz, jint index, jshort x, jshort y) { + glVertexAttrib2s(index, x, y); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib1f(JNIEnv *env, jclass clazz, jint index, jfloat x) { + glVertexAttrib1f(index, x); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glVertexAttrib1s(JNIEnv *env, jclass clazz, jint index, jshort x) { + glVertexAttrib1s(index, x); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetShaderSource(JNIEnv *env, jclass clazz, jint shader, jint maxLength, jobject length, jint length_position, jobject source, jint source_position) { + GLsizei *length_address = ((GLsizei *)safeGetBufferAddress(env, length)) + length_position; + GLchar *source_address = ((GLchar *)(*env)->GetDirectBufferAddress(env, source)) + source_position; + glGetShaderSource(shader, maxLength, length_address, source_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetUniformiv(JNIEnv *env, jclass clazz, jint program, jint location, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetUniformiv(program, location, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetUniformfv(JNIEnv *env, jclass clazz, jint program, jint location, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetUniformfv(program, location, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetActiveUniform(JNIEnv *env, jclass clazz, jint program, jint index, jint maxLength, jobject length, jint length_position, jobject size, jint size_position, jobject type, jint type_position, jobject name, jint name_position) { + GLsizei *length_address = ((GLsizei *)safeGetBufferAddress(env, length)) + length_position; + GLsizei *size_address = ((GLsizei *)(*env)->GetDirectBufferAddress(env, size)) + size_position; + GLenum *type_address = ((GLenum *)(*env)->GetDirectBufferAddress(env, type)) + type_position; + GLchar *name_address = ((GLchar *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + glGetActiveUniform(program, index, maxLength, length_address, size_address, type_address, name_address); +} + +static jint JNICALL Java_org_lwjgl_opengl_GL20_nglGetUniformLocation(JNIEnv *env, jclass clazz, jint program, jobject name, jint name_position) { + const GLchar *name_address = ((const GLchar *)(*env)->GetDirectBufferAddress(env, name)) + name_position; + GLint __result = glGetUniformLocation(program, name_address); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetAttachedShaders(JNIEnv *env, jclass clazz, jint program, jint maxCount, jobject count, jint count_position, jobject shaders, jint shaders_position) { + GLsizei *count_address = ((GLsizei *)safeGetBufferAddress(env, count)) + count_position; + GLuint *shaders_address = ((GLuint *)(*env)->GetDirectBufferAddress(env, shaders)) + shaders_position; + glGetAttachedShaders(program, maxCount, count_address, shaders_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetProgramInfoLog(JNIEnv *env, jclass clazz, jint program, jint maxLength, jobject length, jint length_position, jobject infoLog, jint infoLog_position) { + GLsizei *length_address = ((GLsizei *)safeGetBufferAddress(env, length)) + length_position; + GLchar *infoLog_address = ((GLchar *)(*env)->GetDirectBufferAddress(env, infoLog)) + infoLog_position; + glGetProgramInfoLog(program, maxLength, length_address, infoLog_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetShaderInfoLog(JNIEnv *env, jclass clazz, jint shader, jint maxLength, jobject length, jint length_position, jobject infoLog, jint infoLog_position) { + GLsizei *length_address = ((GLsizei *)safeGetBufferAddress(env, length)) + length_position; + GLchar *infoLog_address = ((GLchar *)(*env)->GetDirectBufferAddress(env, infoLog)) + infoLog_position; + glGetShaderInfoLog(shader, maxLength, length_address, infoLog_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetProgramiv(JNIEnv *env, jclass clazz, jint program, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetProgramiv(program, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetProgramfv(JNIEnv *env, jclass clazz, jint program, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetProgramfv(program, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetShaderiv(JNIEnv *env, jclass clazz, jint shader, jint pname, jobject params, jint params_position) { + GLint *params_address = ((GLint *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetShaderiv(shader, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglGetShaderfv(JNIEnv *env, jclass clazz, jint shader, jint pname, jobject params, jint params_position) { + GLfloat *params_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, params)) + params_position; + glGetShaderfv(shader, pname, params_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniformMatrix4fv(JNIEnv *env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matrices_position) { + GLfloat *matrices_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, matrices)) + matrices_position; + glUniformMatrix4fv(location, count, transpose, matrices_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniformMatrix3fv(JNIEnv *env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matrices_position) { + GLfloat *matrices_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, matrices)) + matrices_position; + glUniformMatrix3fv(location, count, transpose, matrices_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniformMatrix2fv(JNIEnv *env, jclass clazz, jint location, jint count, jboolean transpose, jobject matrices, jint matrices_position) { + GLfloat *matrices_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, matrices)) + matrices_position; + glUniformMatrix2fv(location, count, transpose, matrices_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform4iv(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLint *values_address = ((GLint *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform4iv(location, count, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform3iv(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLint *values_address = ((GLint *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform3iv(location, count, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform2iv(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLint *values_address = ((GLint *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform2iv(location, count, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform1iv(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLint *values_address = ((GLint *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform1iv(location, count, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform4fv(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLfloat *values_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform4fv(location, count, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform3fv(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLfloat *values_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform3fv(location, count, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform2fv(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLfloat *values_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform2fv(location, count, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglUniform1fv(JNIEnv *env, jclass clazz, jint location, jint count, jobject values, jint values_position) { + GLfloat *values_address = ((GLfloat *)(*env)->GetDirectBufferAddress(env, values)) + values_position; + glUniform1fv(location, count, values_address); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform4i(JNIEnv *env, jclass clazz, jint location, jint v0, jint v1, jint v2, jint v3) { + glUniform4i(location, v0, v1, v2, v3); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform3i(JNIEnv *env, jclass clazz, jint location, jint v0, jint v1, jint v2) { + glUniform3i(location, v0, v1, v2); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform2i(JNIEnv *env, jclass clazz, jint location, jint v0, jint v1) { + glUniform2i(location, v0, v1); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform1i(JNIEnv *env, jclass clazz, jint location, jint v0) { + glUniform1i(location, v0); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform4f(JNIEnv *env, jclass clazz, jint location, jfloat v0, jfloat v1, jfloat v2, jfloat v3) { + glUniform4f(location, v0, v1, v2, v3); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform3f(JNIEnv *env, jclass clazz, jint location, jfloat v0, jfloat v1, jfloat v2) { + glUniform3f(location, v0, v1, v2); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform2f(JNIEnv *env, jclass clazz, jint location, jfloat v0, jfloat v1) { + glUniform2f(location, v0, v1); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glUniform1f(JNIEnv *env, jclass clazz, jint location, jfloat v0) { + glUniform1f(location, v0); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glDeleteProgram(JNIEnv *env, jclass clazz, jint program) { + glDeleteProgram(program); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glValidateProgram(JNIEnv *env, jclass clazz, jint program) { + glValidateProgram(program); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glUseProgram(JNIEnv *env, jclass clazz, jint program) { + glUseProgram(program); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glLinkProgram(JNIEnv *env, jclass clazz, jint program) { + glLinkProgram(program); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glDetachShader(JNIEnv *env, jclass clazz, jint program, jint shader) { + glDetachShader(program, shader); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glAttachShader(JNIEnv *env, jclass clazz, jint program, jint shader) { + glAttachShader(program, shader); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_GL20_glIsProgram(JNIEnv *env, jclass clazz, jint program) { + GLboolean __result = glIsProgram(program); + return __result; +} + +static jint JNICALL Java_org_lwjgl_opengl_GL20_glCreateProgram(JNIEnv *env, jclass clazz) { + GLint __result = glCreateProgram(); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glDeleteShader(JNIEnv *env, jclass clazz, jint shader) { + glDeleteShader(shader); +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_glCompileShader(JNIEnv *env, jclass clazz, jint shader) { + glCompileShader(shader); +} + +static jboolean JNICALL Java_org_lwjgl_opengl_GL20_glIsShader(JNIEnv *env, jclass clazz, jint shader) { + GLboolean __result = glIsShader(shader); + return __result; +} + +static jint JNICALL Java_org_lwjgl_opengl_GL20_glCreateShader(JNIEnv *env, jclass clazz, jint type) { + GLint __result = glCreateShader(type); + return __result; +} + +static void JNICALL Java_org_lwjgl_opengl_GL20_nglShaderSource(JNIEnv *env, jclass clazz, jint shader, jint count, jobject string, jint string_position, jint length) { + const GLchar *string_address = ((const GLchar *)(*env)->GetDirectBufferAddress(env, string)) + string_position; + glShaderSource(shader, count, &string_address, &length); +} + JNIEXPORT void JNICALL Java_org_lwjgl_opengl_GL20_initNativeStubs(JNIEnv *env, jclass clazz) { JavaMethodAndExtFunction functions[] = { - // ARB_shader_objects - {"glIsShader", "(I)Z", (void*)&Java_org_lwjgl_opengl_GL20_glIsShader, "glIsShader", (void*)&glIsShader}, - {"glIsProgram", "(I)Z", (void*)&Java_org_lwjgl_opengl_GL20_glIsProgram, "glIsProgram", (void*)&glIsProgram}, - {"glDeleteShader", "(I)V", (void*)&Java_org_lwjgl_opengl_GL20_glDeleteShader, "glDeleteShader", (void*)&glDeleteShader}, - {"glDeleteProgram", "(I)V", (void*)&Java_org_lwjgl_opengl_GL20_glDeleteProgram, "glDeleteProgram", (void*)&glDeleteProgram}, - {"glDetachShader", "(II)V", (void*)&Java_org_lwjgl_opengl_GL20_glDetachShader, "glDetachShader", (void*)&glDetachShader}, - {"glCreateShader", "(I)I", (void*)&Java_org_lwjgl_opengl_GL20_glCreateShader, "glCreateShader", (void*)&glCreateShader}, - {"initShaderSource", "(I)V", (void*)&Java_org_lwjgl_opengl_GL20_initShaderSource, NULL, NULL}, - {"setShaderString", "(ILjava/nio/ByteBuffer;II)V", (void*)&Java_org_lwjgl_opengl_GL20_setShaderString, NULL, NULL}, - {"nglShaderSource", "(I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglShaderSource, "glShaderSource", (void*)&glShaderSource}, - {"glCompileShader", "(I)V", (void*)&Java_org_lwjgl_opengl_GL20_glCompileShader, "glCompileShader", (void*)&glCompileShader}, - {"glCreateProgram", "()I", (void*)&Java_org_lwjgl_opengl_GL20_glCreateProgram, "glCreateProgram", (void*)&glCreateProgram}, - {"glAttachShader", "(II)V", (void*)&Java_org_lwjgl_opengl_GL20_glAttachShader, "glAttachShader", (void*)&glAttachShader}, - {"glLinkProgram", "(I)V", (void*)&Java_org_lwjgl_opengl_GL20_glLinkProgram, "glLinkProgram", (void*)&glLinkProgram}, - {"glUseProgram", "(I)V", (void*)&Java_org_lwjgl_opengl_GL20_glUseProgram, "glUseProgram", (void*)&glUseProgram}, - {"glValidateProgram", "(I)V", (void*)&Java_org_lwjgl_opengl_GL20_glValidateProgram, "glValidateProgram", (void*)&glValidateProgram}, - {"glUniform1f", "(IF)V", (void*)&Java_org_lwjgl_opengl_GL20_glUniform1f, "glUniform1f", (void*)&glUniform1f}, - {"glUniform2f", "(IFF)V", (void*)&Java_org_lwjgl_opengl_GL20_glUniform2f, "glUniform2f", (void*)&glUniform2f}, - {"glUniform3f", "(IFFF)V", (void*)&Java_org_lwjgl_opengl_GL20_glUniform3f, "glUniform3f", (void*)&glUniform3f}, - {"glUniform4f", "(IFFFF)V", (void*)&Java_org_lwjgl_opengl_GL20_glUniform4f, "glUniform4f", (void*)&glUniform4f}, - {"glUniform1i", "(II)V", (void*)&Java_org_lwjgl_opengl_GL20_glUniform1i, "glUniform1i", (void*)&glUniform1i}, - {"glUniform2i", "(III)V", (void*)&Java_org_lwjgl_opengl_GL20_glUniform2i, "glUniform2i", (void*)&glUniform2i}, - {"glUniform3i", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL20_glUniform3i, "glUniform3i", (void*)&glUniform3i}, - {"glUniform4i", "(IIIII)V", (void*)&Java_org_lwjgl_opengl_GL20_glUniform4i, "glUniform4i", (void*)&glUniform4i}, - {"nglUniform1fv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniform1fv, "glUniform1fv", (void*)&glUniform1fv}, - {"nglUniform2fv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniform2fv, "glUniform2fv", (void*)&glUniform2fv}, - {"nglUniform3fv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniform3fv, "glUniform3fv", (void*)&glUniform3fv}, - {"nglUniform4fv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniform4fv, "glUniform4fv", (void*)&glUniform4fv}, - {"nglUniform1iv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniform1iv, "glUniform1iv", (void*)&glUniform1iv}, - {"nglUniform2iv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniform2iv, "glUniform2iv", (void*)&glUniform2iv}, - {"nglUniform3iv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniform3iv, "glUniform3iv", (void*)&glUniform3iv}, - {"nglUniform4iv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniform4iv, "glUniform4iv", (void*)&glUniform4iv}, - {"nglUniformMatrix2fv", "(IIZLjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniformMatrix2fv, "glUniformMatrix2fv", (void*)&glUniformMatrix2fv}, - {"nglUniformMatrix3fv", "(IIZLjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniformMatrix3fv, "glUniformMatrix3fv", (void*)&glUniformMatrix3fv}, - {"nglUniformMatrix4fv", "(IIZLjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglUniformMatrix4fv, "glUniformMatrix4fv", (void*)&glUniformMatrix4fv}, - {"nglGetShaderfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetShaderfv, "glGetShaderfv", (void*)&glGetShaderfv}, - {"nglGetShaderiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetShaderiv, "glGetShaderiv", (void*)&glGetShaderiv}, - {"nglGetProgramfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetProgramfv, "glGetProgramfv", (void*)&glGetProgramfv}, - {"nglGetProgramiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetProgramiv, "glGetProgramiv", (void*)&glGetProgramiv}, - {"nglGetShaderInfoLog", "(IILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetShaderInfoLog, "glGetShaderInfoLog", (void*)&glGetShaderInfoLog}, - {"nglGetProgramInfoLog", "(IILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetProgramInfoLog, "glGetProgramInfoLog", (void*)&glGetProgramInfoLog}, - {"nglGetAttachedShaders", "(IILjava/nio/IntBuffer;ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetAttachedShaders, "glGetAttachedShaders", (void*)&glGetAttachedShaders}, - {"nglGetUniformLocation", "(ILjava/nio/ByteBuffer;I)I", (void*)&Java_org_lwjgl_opengl_GL20_nglGetUniformLocation, "glGetUniformLocation", (void*)&glGetUniformLocation}, - {"nglGetActiveUniform", "(IIILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetActiveUniform, "glGetActiveUniform", (void*)&glGetActiveUniform}, - {"nglGetUniformfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetUniformfv, "glGetUniformfv", (void*)&glGetUniformfv}, - {"nglGetUniformiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetUniformiv, "glGetUniformiv", (void*)&glGetUniformiv}, - {"nglGetShaderSource", "(IILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetShaderSource, "glGetShaderSource", (void*)&glGetShaderSource}, - // ARB_vertex_program - {"glVertexAttrib1s", "(IS)V", (void*)&Java_org_lwjgl_opengl_GL20_glVertexAttrib1s, "glVertexAttrib1s", (void*)&glVertexAttrib1s}, - {"glVertexAttrib1f", "(IF)V", (void*)&Java_org_lwjgl_opengl_GL20_glVertexAttrib1f, "glVertexAttrib1f", (void*)&glVertexAttrib1f}, - {"glVertexAttrib2s", "(ISS)V", (void*)&Java_org_lwjgl_opengl_GL20_glVertexAttrib2s, "glVertexAttrib2s", (void*)&glVertexAttrib2s}, - {"glVertexAttrib2f", "(IFF)V", (void*)&Java_org_lwjgl_opengl_GL20_glVertexAttrib2f, "glVertexAttrib2f", (void*)&glVertexAttrib2f}, - {"glVertexAttrib3s", "(ISSS)V", (void*)&Java_org_lwjgl_opengl_GL20_glVertexAttrib3s, "glVertexAttrib3s", (void*)&glVertexAttrib3s}, - {"glVertexAttrib3f", "(IFFF)V", (void*)&Java_org_lwjgl_opengl_GL20_glVertexAttrib3f, "glVertexAttrib3f", (void*)&glVertexAttrib3f}, - {"glVertexAttrib4s", "(ISSSS)V", (void*)&Java_org_lwjgl_opengl_GL20_glVertexAttrib4s, "glVertexAttrib4s", (void*)&glVertexAttrib4s}, - {"glVertexAttrib4f", "(IFFFF)V", (void*)&Java_org_lwjgl_opengl_GL20_glVertexAttrib4f, "glVertexAttrib4f", (void*)&glVertexAttrib4f}, - {"glVertexAttrib4Nub", "(IBBBB)V", (void*)&Java_org_lwjgl_opengl_GL20_glVertexAttrib4Nub, "glVertexAttrib4Nub", (void*)&glVertexAttrib4Nub}, - {"nglVertexAttribPointer", "(IIIZILjava/nio/Buffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglVertexAttribPointer, "glVertexAttribPointer", (void*)&glVertexAttribPointer}, - {"nglVertexAttribPointerVBO", "(IIIZII)V", (void*)&Java_org_lwjgl_opengl_GL20_nglVertexAttribPointerVBO, NULL, NULL}, - {"glEnableVertexAttribArray", "(I)V", (void*)&Java_org_lwjgl_opengl_GL20_glEnableVertexAttribArray, "glEnableVertexAttribArray", (void*)&glEnableVertexAttribArray}, - {"glDisableVertexAttribArray", "(I)V", (void*)&Java_org_lwjgl_opengl_GL20_glDisableVertexAttribArray, "glDisableVertexAttribArray", (void*)&glDisableVertexAttribArray}, - {"nglGetVertexAttribfv", "(IILjava/nio/FloatBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetVertexAttribfv, "glGetVertexAttribfv", (void*)&glGetVertexAttribfv}, - {"nglGetVertexAttribiv", "(IILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetVertexAttribiv, "glGetVertexAttribiv", (void*)&glGetVertexAttribiv}, - {"glGetVertexAttribPointer", "(III)Ljava/nio/ByteBuffer;", (void*)&Java_org_lwjgl_opengl_GL20_glGetVertexAttribPointer, "glGetVertexAttribPointerv", (void*)&glGetVertexAttribPointerv}, - // ARB_vertex_shader - {"nglBindAttribLocation", "(IILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglBindAttribLocation, "glBindAttribLocation", (void*)&glBindAttribLocation}, - {"nglGetActiveAttrib", "(IIILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglGetActiveAttrib, "glGetActiveAttrib", (void*)&glGetActiveAttrib}, - {"nglGetAttribLocation", "(ILjava/nio/ByteBuffer;I)I", (void*)&Java_org_lwjgl_opengl_GL20_nglGetAttribLocation, "glGetAttribLocation", (void*)&glGetAttribLocation}, - // ARB_draw_buffers - {"nglDrawBuffers", "(ILjava/nio/IntBuffer;I)V", (void*)&Java_org_lwjgl_opengl_GL20_nglDrawBuffers, "glDrawBuffers", (void*)&glDrawBuffers}, - // Two-Sided Stencil - {"glStencilOpSeparate", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL20_glStencilOpSeparate, "glStencilOpSeparate", (void*)&glStencilOpSeparate}, - {"glStencilFuncSeparate", "(IIII)V", (void*)&Java_org_lwjgl_opengl_GL20_glStencilFuncSeparate, "glStencilFuncSeparate", (void*)&glStencilFuncSeparate}, - {"glStencilMaskSeparate", "(II)V", (void*)&Java_org_lwjgl_opengl_GL20_glStencilMaskSeparate, "glStencilMaskSeparate", (void*)&glStencilMaskSeparate}, - // EXT_blend_equation_separate - {"glBlendEquationSeparate", "(II)V", (void*)&Java_org_lwjgl_opengl_GL20_glBlendEquationSeparate, "glBlendEquationSeparate", (void*)&glBlendEquationSeparate} + {"glBlendEquationSeparate", "(II)V", (void *)&Java_org_lwjgl_opengl_GL20_glBlendEquationSeparate, "glBlendEquationSeparate", (void *)&glBlendEquationSeparate}, + {"glStencilMaskSeparate", "(II)V", (void *)&Java_org_lwjgl_opengl_GL20_glStencilMaskSeparate, "glStencilMaskSeparate", (void *)&glStencilMaskSeparate}, + {"glStencilFuncSeparate", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL20_glStencilFuncSeparate, "glStencilFuncSeparate", (void *)&glStencilFuncSeparate}, + {"glStencilOpSeparate", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL20_glStencilOpSeparate, "glStencilOpSeparate", (void *)&glStencilOpSeparate}, + {"nglDrawBuffers", "(ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglDrawBuffers, "glDrawBuffers", (void *)&glDrawBuffers}, + {"nglGetAttribLocation", "(ILjava/nio/ByteBuffer;I)I", (void *)&Java_org_lwjgl_opengl_GL20_nglGetAttribLocation, "glGetAttribLocation", (void *)&glGetAttribLocation}, + {"nglGetActiveAttrib", "(IIILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetActiveAttrib, "glGetActiveAttrib", (void *)&glGetActiveAttrib}, + {"nglBindAttribLocation", "(IILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglBindAttribLocation, "glBindAttribLocation", (void *)&glBindAttribLocation}, + {"nglGetVertexAttribPointerv", "(III)Ljava/nio/ByteBuffer;", (void *)&Java_org_lwjgl_opengl_GL20_nglGetVertexAttribPointerv, "glGetVertexAttribPointerv", (void *)&glGetVertexAttribPointerv}, + {"nglGetVertexAttribiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetVertexAttribiv, "glGetVertexAttribiv", (void *)&glGetVertexAttribiv}, + {"nglGetVertexAttribfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetVertexAttribfv, "glGetVertexAttribfv", (void *)&glGetVertexAttribfv}, + {"glDisableVertexAttribArray", "(I)V", (void *)&Java_org_lwjgl_opengl_GL20_glDisableVertexAttribArray, "glDisableVertexAttribArray", (void *)&glDisableVertexAttribArray}, + {"glEnableVertexAttribArray", "(I)V", (void *)&Java_org_lwjgl_opengl_GL20_glEnableVertexAttribArray, "glEnableVertexAttribArray", (void *)&glEnableVertexAttribArray}, + {"nglVertexAttribPointer", "(IIIZILjava/nio/Buffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglVertexAttribPointer, "glVertexAttribPointer", (void *)&glVertexAttribPointer}, + {"nglVertexAttribPointerBO", "(IIIZII)V", (void *)&Java_org_lwjgl_opengl_GL20_nglVertexAttribPointerBO, "glVertexAttribPointer", (void *)&glVertexAttribPointer}, + {"glVertexAttrib4Nub", "(IBBBB)V", (void *)&Java_org_lwjgl_opengl_GL20_glVertexAttrib4Nub, "glVertexAttrib4Nub", (void *)&glVertexAttrib4Nub}, + {"glVertexAttrib4f", "(IFFFF)V", (void *)&Java_org_lwjgl_opengl_GL20_glVertexAttrib4f, "glVertexAttrib4f", (void *)&glVertexAttrib4f}, + {"glVertexAttrib4s", "(ISSSS)V", (void *)&Java_org_lwjgl_opengl_GL20_glVertexAttrib4s, "glVertexAttrib4s", (void *)&glVertexAttrib4s}, + {"glVertexAttrib3f", "(IFFF)V", (void *)&Java_org_lwjgl_opengl_GL20_glVertexAttrib3f, "glVertexAttrib3f", (void *)&glVertexAttrib3f}, + {"glVertexAttrib3s", "(ISSS)V", (void *)&Java_org_lwjgl_opengl_GL20_glVertexAttrib3s, "glVertexAttrib3s", (void *)&glVertexAttrib3s}, + {"glVertexAttrib2f", "(IFF)V", (void *)&Java_org_lwjgl_opengl_GL20_glVertexAttrib2f, "glVertexAttrib2f", (void *)&glVertexAttrib2f}, + {"glVertexAttrib2s", "(ISS)V", (void *)&Java_org_lwjgl_opengl_GL20_glVertexAttrib2s, "glVertexAttrib2s", (void *)&glVertexAttrib2s}, + {"glVertexAttrib1f", "(IF)V", (void *)&Java_org_lwjgl_opengl_GL20_glVertexAttrib1f, "glVertexAttrib1f", (void *)&glVertexAttrib1f}, + {"glVertexAttrib1s", "(IS)V", (void *)&Java_org_lwjgl_opengl_GL20_glVertexAttrib1s, "glVertexAttrib1s", (void *)&glVertexAttrib1s}, + {"nglGetShaderSource", "(IILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetShaderSource, "glGetShaderSource", (void *)&glGetShaderSource}, + {"nglGetUniformiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetUniformiv, "glGetUniformiv", (void *)&glGetUniformiv}, + {"nglGetUniformfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetUniformfv, "glGetUniformfv", (void *)&glGetUniformfv}, + {"nglGetActiveUniform", "(IIILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetActiveUniform, "glGetActiveUniform", (void *)&glGetActiveUniform}, + {"nglGetUniformLocation", "(ILjava/nio/ByteBuffer;I)I", (void *)&Java_org_lwjgl_opengl_GL20_nglGetUniformLocation, "glGetUniformLocation", (void *)&glGetUniformLocation}, + {"nglGetAttachedShaders", "(IILjava/nio/IntBuffer;ILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetAttachedShaders, "glGetAttachedShaders", (void *)&glGetAttachedShaders}, + {"nglGetProgramInfoLog", "(IILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetProgramInfoLog, "glGetProgramInfoLog", (void *)&glGetProgramInfoLog}, + {"nglGetShaderInfoLog", "(IILjava/nio/IntBuffer;ILjava/nio/ByteBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetShaderInfoLog, "glGetShaderInfoLog", (void *)&glGetShaderInfoLog}, + {"nglGetProgramiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetProgramiv, "glGetProgramiv", (void *)&glGetProgramiv}, + {"nglGetProgramfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetProgramfv, "glGetProgramfv", (void *)&glGetProgramfv}, + {"nglGetShaderiv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetShaderiv, "glGetShaderiv", (void *)&glGetShaderiv}, + {"nglGetShaderfv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglGetShaderfv, "glGetShaderfv", (void *)&glGetShaderfv}, + {"nglUniformMatrix4fv", "(IIZLjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniformMatrix4fv, "glUniformMatrix4fv", (void *)&glUniformMatrix4fv}, + {"nglUniformMatrix3fv", "(IIZLjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniformMatrix3fv, "glUniformMatrix3fv", (void *)&glUniformMatrix3fv}, + {"nglUniformMatrix2fv", "(IIZLjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniformMatrix2fv, "glUniformMatrix2fv", (void *)&glUniformMatrix2fv}, + {"nglUniform4iv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniform4iv, "glUniform4iv", (void *)&glUniform4iv}, + {"nglUniform3iv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniform3iv, "glUniform3iv", (void *)&glUniform3iv}, + {"nglUniform2iv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniform2iv, "glUniform2iv", (void *)&glUniform2iv}, + {"nglUniform1iv", "(IILjava/nio/IntBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniform1iv, "glUniform1iv", (void *)&glUniform1iv}, + {"nglUniform4fv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniform4fv, "glUniform4fv", (void *)&glUniform4fv}, + {"nglUniform3fv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniform3fv, "glUniform3fv", (void *)&glUniform3fv}, + {"nglUniform2fv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniform2fv, "glUniform2fv", (void *)&glUniform2fv}, + {"nglUniform1fv", "(IILjava/nio/FloatBuffer;I)V", (void *)&Java_org_lwjgl_opengl_GL20_nglUniform1fv, "glUniform1fv", (void *)&glUniform1fv}, + {"glUniform4i", "(IIIII)V", (void *)&Java_org_lwjgl_opengl_GL20_glUniform4i, "glUniform4i", (void *)&glUniform4i}, + {"glUniform3i", "(IIII)V", (void *)&Java_org_lwjgl_opengl_GL20_glUniform3i, "glUniform3i", (void *)&glUniform3i}, + {"glUniform2i", "(III)V", (void *)&Java_org_lwjgl_opengl_GL20_glUniform2i, "glUniform2i", (void *)&glUniform2i}, + {"glUniform1i", "(II)V", (void *)&Java_org_lwjgl_opengl_GL20_glUniform1i, "glUniform1i", (void *)&glUniform1i}, + {"glUniform4f", "(IFFFF)V", (void *)&Java_org_lwjgl_opengl_GL20_glUniform4f, "glUniform4f", (void *)&glUniform4f}, + {"glUniform3f", "(IFFF)V", (void *)&Java_org_lwjgl_opengl_GL20_glUniform3f, "glUniform3f", (void *)&glUniform3f}, + {"glUniform2f", "(IFF)V", (void *)&Java_org_lwjgl_opengl_GL20_glUniform2f, "glUniform2f", (void *)&glUniform2f}, + {"glUniform1f", "(IF)V", (void *)&Java_org_lwjgl_opengl_GL20_glUniform1f, "glUniform1f", (void *)&glUniform1f}, + {"glDeleteProgram", "(I)V", (void *)&Java_org_lwjgl_opengl_GL20_glDeleteProgram, "glDeleteProgram", (void *)&glDeleteProgram}, + {"glValidateProgram", "(I)V", (void *)&Java_org_lwjgl_opengl_GL20_glValidateProgram, "glValidateProgram", (void *)&glValidateProgram}, + {"glUseProgram", "(I)V", (void *)&Java_org_lwjgl_opengl_GL20_glUseProgram, "glUseProgram", (void *)&glUseProgram}, + {"glLinkProgram", "(I)V", (void *)&Java_org_lwjgl_opengl_GL20_glLinkProgram, "glLinkProgram", (void *)&glLinkProgram}, + {"glDetachShader", "(II)V", (void *)&Java_org_lwjgl_opengl_GL20_glDetachShader, "glDetachShader", (void *)&glDetachShader}, + {"glAttachShader", "(II)V", (void *)&Java_org_lwjgl_opengl_GL20_glAttachShader, "glAttachShader", (void *)&glAttachShader}, + {"glIsProgram", "(I)Z", (void *)&Java_org_lwjgl_opengl_GL20_glIsProgram, "glIsProgram", (void *)&glIsProgram}, + {"glCreateProgram", "()I", (void *)&Java_org_lwjgl_opengl_GL20_glCreateProgram, "glCreateProgram", (void *)&glCreateProgram}, + {"glDeleteShader", "(I)V", (void *)&Java_org_lwjgl_opengl_GL20_glDeleteShader, "glDeleteShader", (void *)&glDeleteShader}, + {"glCompileShader", "(I)V", (void *)&Java_org_lwjgl_opengl_GL20_glCompileShader, "glCompileShader", (void *)&glCompileShader}, + {"glIsShader", "(I)Z", (void *)&Java_org_lwjgl_opengl_GL20_glIsShader, "glIsShader", (void *)&glIsShader}, + {"glCreateShader", "(I)I", (void *)&Java_org_lwjgl_opengl_GL20_glCreateShader, "glCreateShader", (void *)&glCreateShader}, + {"nglShaderSource", "(IILjava/nio/ByteBuffer;II)V", (void *)&Java_org_lwjgl_opengl_GL20_nglShaderSource, "glShaderSource", (void *)&glShaderSource} }; int num_functions = NUMFUNCTIONS(functions); extgl_InitializeClass(env, clazz, num_functions, functions); } -#ifdef __cplusplus -} -#endif diff --git a/src/native/linux/Makefile b/src/native/linux/Makefile index d24cdc73..e41ea2cf 100644 --- a/src/native/linux/Makefile +++ b/src/native/linux/Makefile @@ -4,7 +4,7 @@ CC=gcc LINKER=gcc STRIP=strip CFLAGS_LINK=-shared -Wall -LIBS=-L/usr/X11/lib -lX11 -lXext -lXxf86vm -lpthread -L/usr/lib/jvm/java-1.4.2-sun-1.4.2.06/jre/lib/i386/ -ljawt -Wl,-static,-lXcursor,-lXrender,-lXrandr,-call_shared +LIBS=-L/usr/X11/lib -lX11 -lXext -lXxf86vm -lpthread -L/usr/lib/jvm/java-1.5.0-sun-1.5.0.01/jre/lib/i386/ -ljawt -Wl,-static,-lXcursor,-lXrender,-lXrandr,-call_shared CFLAGS_O=-fPIC -O2 -D_X11 -Wall -pthread -c -I../common -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux SRC=$(wildcard *.c) $(wildcard ../common/*.c) $(wildcard ../common/arb/*.c) $(wildcard ../common/ati/*.c) $(wildcard ../common/ext/*.c) $(wildcard ../common/nv/*.c) OBJECTS=$(subst .c,.o,$(SRC)) diff --git a/src/templates/org/lwjgl/openal/AL10.java b/src/templates/org/lwjgl/openal/AL10.java new file mode 100644 index 00000000..80ca63b1 --- /dev/null +++ b/src/templates/org/lwjgl/openal/AL10.java @@ -0,0 +1,1207 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.openal; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.ShortBuffer; +import java.nio.IntBuffer; +import java.nio.FloatBuffer; + +import org.lwjgl.generator.*; + +/** + * $Id$ + *
+ * This is the core OpenAL class. This class implements + * AL.h version 1.0 + * + * @author Brian Matzon + * @version $Revision$ + */ +public interface AL10 { + /** Bad value */ + public static final int AL_INVALID = -1; + + /** Disable value */ + public static final int AL_NONE = 0; + + /** Boolean False */ + public static final int AL_FALSE = 0; + + /** Boolean True */ + public static final int AL_TRUE = 1; + + /** + * Indicate the type of SOURCE. + * Sources can be spatialized + */ + public static final int AL_SOURCE_TYPE = 0x200; + + /** Indicate source has absolute coordinates */ + public static final int AL_SOURCE_ABSOLUTE = 0x201; + + /** Indicate Source has listener relative coordinates */ + public static final int AL_SOURCE_RELATIVE = 0x202; + + /** + * Directional source, inner cone angle, in degrees + * Range: [0-360] + * Default: 360 + */ + public static final int AL_CONE_INNER_ANGLE = 0x1001; + + /** + * Directional source, outer cone angle, in degrees. + * Range: [0-360] + * Default: 360 + */ + public static final int AL_CONE_OUTER_ANGLE = 0x1002; + + /** + * Specify the pitch to be applied, either at source, + * or on mixer results, at listener. + * Range: [0.5-2.0] + * Default: 1.0 + */ + public static final int AL_PITCH = 0x1003; + + /** + * Specify the current location in three dimensional space. + * OpenAL, like OpenGL, uses a right handed coordinate system, + * where in a frontal default view X (thumb) points right, + * Y points up (index finger), and Z points towards the + * viewer/camera (middle finger). + * To switch from a left handed coordinate system, flip the + * sign on the Z coordinate. + * Listener position is always in the world coordinate system. + */ + public static final int AL_POSITION = 0x1004; + + /** Specify the current direction as forward vector. */ + public static final int AL_DIRECTION = 0x1005; + + /** Specify the current velocity in three dimensional space. */ + public static final int AL_VELOCITY = 0x1006; + + /** + * Indicate whether source has to loop infinite. + * Type: ALboolean + * Range: [TRUE, FALSE] + * Default: FALSE + */ + public static final int AL_LOOPING = 0x1007; + + /** + * Indicate the buffer to provide sound samples. + * Type: ALuint. + * Range: any valid Buffer id. + */ + public static final int AL_BUFFER = 0x1009; + + /** + * Indicate the gain (volume amplification) applied. + * Type: ALfloat. + * Range: ]0.0- ] + * A value of 1.0 means un-attenuated/unchanged. + * Each division by 2 equals an attenuation of -6dB. + * Each multiplicaton with 2 equals an amplification of +6dB. + * A value of 0.0 is meaningless with respect to a logarithmic + * scale; it is interpreted as zero volume - the channel + * is effectively disabled. + */ + public static final int AL_GAIN = 0x100A; + + /** + * Indicate minimum source attenuation. + * Type: ALfloat + * Range: [0.0 - 1.0] + */ + public static final int AL_MIN_GAIN = 0x100D; + + /** + * Indicate maximum source attenuation. + * Type: ALfloat + * Range: [0.0 - 1.0] + */ + public static final int AL_MAX_GAIN = 0x100E; + + /** + * Specify the current orientation. + * Type: ALfv6 (at/up) + * Range: N/A + */ + public static final int AL_ORIENTATION = 0x100F; + + /* byte offset into source (in canon format). -1 if source + * is not playing. Don't set this, get this. + * + * Type: ALfloat + * Range: [0.0 - ] + * Default: 1.0 + */ + public static final int AL_REFERENCE_DISTANCE = 0x1020; + + /** + * Indicate the rolloff factor for the source. + * Type: ALfloat + * Range: [0.0 - ] + * Default: 1.0 + */ + public static final int AL_ROLLOFF_FACTOR = 0x1021; + + /** + * Indicate the gain (volume amplification) applied. + * Type: ALfloat. + * Range: ]0.0- ] + * A value of 1.0 means un-attenuated/unchanged. + * Each division by 2 equals an attenuation of -6dB. + * Each multiplicaton with 2 equals an amplification of +6dB. + * A value of 0.0 is meaningless with respect to a logarithmic + * scale; it is interpreted as zero volume - the channel + * is effectively disabled. + */ + public static final int AL_CONE_OUTER_GAIN = 0x1022; + + /** + * Specify the maximum distance. + * Type: ALfloat + * Range: [0.0 - ] + */ + public static final int AL_MAX_DISTANCE = 0x1023; + + /** + * Specify the channel mask. (Creative) + * Type: ALuint + * Range: [0 - 255] + */ + public static final int AL_CHANNEL_MASK = 0x3000; + + /** Source state information */ + public static final int AL_SOURCE_STATE = 0x1010; + + /** Source state information */ + public static final int AL_INITIAL = 0x1011; + + /** Source state information */ + public static final int AL_PLAYING = 0x1012; + + /** Source state information */ + public static final int AL_PAUSED = 0x1013; + + /** Source state information */ + public static final int AL_STOPPED = 0x1014; + + /** Buffer Queue params */ + public static final int AL_BUFFERS_QUEUED = 0x1015; + + /** Buffer Queue params */ + public static final int AL_BUFFERS_PROCESSED = 0x1016; + + /** Sound buffers: format specifier. */ + public static final int AL_FORMAT_MONO8 = 0x1100; + + /** Sound buffers: format specifier. */ + public static final int AL_FORMAT_MONO16 = 0x1101; + + /** Sound buffers: format specifier. */ + public static final int AL_FORMAT_STEREO8 = 0x1102; + + /** Sound buffers: format specifier. */ + public static final int AL_FORMAT_STEREO16 = 0x1103; + + /** Ogg Vorbis format specifier. */ + public static final int AL_FORMAT_VORBIS_EXT = 0x10003; + + /** + * Sound buffers: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ + public static final int AL_FREQUENCY = 0x2001; + + /** + * Sound buffers: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ + public static final int AL_BITS = 0x2002; + + /** + * Sound buffers: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ + public static final int AL_CHANNELS = 0x2003; + + /** + * Sound buffers: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ + public static final int AL_SIZE = 0x2004; + + /** + * Sound buffers: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ + public static final int AL_DATA = 0x2005; + + /** + * Buffer state. + * + * Not supported for public use (yet). + */ + public static final int AL_UNUSED = 0x2010; + + /** + * Buffer state. + * + * Not supported for public use (yet). + */ + public static final int AL_PENDING = 0x2011; + + /** + * Buffer state. + * + * Not supported for public use (yet). + */ + public static final int AL_PROCESSED = 0x2012; + + /** Errors: No Error. */ + public static final int AL_NO_ERROR = AL_FALSE; + + /** Illegal name passed as an argument to an AL call. */ + public static final int AL_INVALID_NAME = 0xA001; + + /** Illegal enum passed as an argument to an AL call. */ + public static final int AL_INVALID_ENUM = 0xA002; + + /** + * Illegal value passed as an argument to an AL call. + * Applies to parameter values, but not to enumerations. + */ + public static final int AL_INVALID_VALUE = 0xA003; + + /** + * A function was called at inappropriate time, + * or in an inappropriate way, causing an illegal state. + * This can be an incompatible ALenum, object ID, + * and/or function. + */ + public static final int AL_INVALID_OPERATION = 0xA004; + + /** + * A function could not be completed, + * because there is not enough memory available. + */ + public static final int AL_OUT_OF_MEMORY = 0xA005; + + /** Context strings: Vendor */ + public static final int AL_VENDOR = 0xB001; + + /** Context strings: Version */ + public static final int AL_VERSION = 0xB002; + + /** Context strings: Renderer */ + public static final int AL_RENDERER = 0xB003; + + /** Context strings: Extensions */ + public static final int AL_EXTENSIONS = 0xB004; + + /** Doppler scale. Default 1.0 */ + public static final int AL_DOPPLER_FACTOR = 0xC000; + + /** Doppler velocity. Default 1.0 */ + public static final int AL_DOPPLER_VELOCITY = 0xC001; + + /** Distance model. Default INVERSE_DISTANCE_CLAMPED */ + public static final int AL_DISTANCE_MODEL = 0xD000; + + /** Distance model */ + public static final int AL_INVERSE_DISTANCE = 0xD001; + + /** Distance model */ + public static final int AL_INVERSE_DISTANCE_CLAMPED = 0xD002; + + /** + * The application can temporarily disable certain AL capabilities on a per Context + * basis. This allows the driver implementation to optimize for certain subsets of + * operations. Enabling and disabling capabilities is handled using a function pair. + * + * @param capability name of a capability to enable + */ + @ALvoid + public void alEnable(int capability); + + /** + * The application can temporarily disable certain AL capabilities on a per Context + * basis. This allows the driver implementation to optimize for certain subsets of + * operations. Enabling and disabling capabilities is handled using a function pair. + * + * @param capability name of a capability to disable + */ + @ALvoid + public void alDisable(@ALenum int capability); + + /** + * The application can also query whether a given capability is currently enabled or + * not. + *

+ * If the token used to specify target is not legal, an AL_INVALID_ENUM error will be + * generated. + *

+ *

+ * At this time, this mechanism is not used. There are no valid targets. + *

+ * + * @param capability name of a capability to check + * @return true if named feature is enabled + */ + public boolean alIsEnabled(@ALenum int capability); + + /** + * Hinting for implementation + * NOTE: This method is a NOP, but is provided for completeness. + * + * @param target The target to hint + * @param mode Mode to hint + */ +// @ALvoid +// public void alHint(@ALenum int target, @ALenum int mode); + + /** + * Like OpenGL, AL uses a simplified interface for querying global state. + * + * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, + * AL_DISTANCE_MODEL. + *

+ * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors + * in specifying pName. The amount of memory required in the destination + * depends on the actual state requested. + *

+ * + * @return boolean state described by pname will be returned. + */ + public boolean alGetBoolean(@ALenum int pname); + + /** + * Like OpenGL, AL uses a simplified interface for querying global state. + * + * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, + * AL_DISTANCE_MODEL. + *

+ * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors + * in specifying pName. The amount of memory required in the destination + * depends on the actual state requested. + *

+ * + * @return int state described by pname will be returned. + */ + public int alGetInteger(@ALenum int pname); + + /** + * Like OpenGL, AL uses a simplified interface for querying global state. + * + * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, + * AL_DISTANCE_MODEL. + *

+ * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors + * in specifying pName. The amount of memory required in the destination + * depends on the actual state requested. + *

+ * + * @return float state described by pname will be returned. + */ + public float alGetFloat(@ALenum int pname); + + /** + * Like OpenGL, AL uses a simplified interface for querying global state. + * + * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, + * AL_DISTANCE_MODEL. + *

+ * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors + * in specifying pName. The amount of memory required in the destination + * depends on the actual state requested. + *

+ * + * @param pname state to be queried + * @param data Buffer to place the integers in + */ + @StripPostfix("data") + @ALvoid + public void alGetIntegerv(@ALenum int pname, @Check("1") IntBuffer data); + + /** + * Like OpenGL, AL uses a simplified interface for querying global state. + * + * Legal values are e.g. AL_DOPPLER_FACTOR, AL_DOPPLER_VELOCITY, + * AL_DISTANCE_MODEL. + *

+ * null destinations are quietly ignored. AL_INVALID_ENUM is the response to errors + * in specifying pName. The amount of memory required in the destination + * depends on the actual state requested. + *

+ * + * @param pname state to be queried + * @param data Buffer to place the floats in + */ + @StripPostfix("data") + @ALvoid + public void alGetFloatv(@ALenum int pname, @Check("1") FloatBuffer data); + + /** + * The application can retrieve state information global to the current AL Context. + * GetString will return a pointer to a constant string. Valid values for param are + * VERSION, RENDERER, VENDOR, and EXTENSIONS, as well as the error codes + * defined by AL. The application can use GetString to retrieve a string for an error + * code. + * + * @param pname The property to be returned + * @return OpenAL String property + */ + @NoErrorCheck + public String alGetString(@ALenum int pname); + + /** + * The AL detects only a subset of those conditions that could be considered errors. + * This is because in many cases error checking would adversely impact the + * performance of an error-free program. + *

+ * Each detectable error is assigned a numeric + * code. When an error is detected by AL, a flag is set and the error code is recorded. + * Further errors, if they occur, do not affect this recorded code. When GetError is + * called, the code is returned and the flag is cleared, so that a further error will again + * record its code. If a call to GetError returns AL_NO_ERROR then there has been no + * detectable error since the last call to GetError (or since the AL was initialized). + *

+ *

+ * Error codes can be mapped to strings. The GetString function returns a pointer to a + * constant (literal) string that is identical to the identifier used for the enumeration + * value, as defined in the specification. + *

+ *

+ * AL_NO_ERROR - "No Error" token.
+ * AL_INVALID_NAME - Invalid Name parameter.
+ * AL_INVALID_ENUM - Invalid parameter.
+ * AL_INVALID_VALUE - Invalid enum parameter value.
+ * AL_INVALID_OPERATION - Illegal call.
+ * AL_OUT_OF_MEMORY - Unable to allocate memory.
+ *

+ *

+ * The table summarizes the AL errors. Currently, when an error flag is set, results of + * AL operations are undefined only if AL_OUT_OF_MEMORY has occured. In other + * cases, the command generating the error is ignored so that it has no effect on AL + * state or output buffer contents. If the error generating command returns a value, it + * returns zero. If the generating command modifies values through a pointer + * argument, no change is made to these values. These error semantics apply only to + * AL errors, not to system errors such as memory access errors. + *

+ *

+ * Several error generation conditions are implicit in the description of the various AL + * commands. First, if a command that requires an enumerated value is passed a value + * that is not one of those specified as allowable for that command, the error + * AL_INVALID_ENUM results. This is the case even if the argument is a pointer to a + * symbolic constant if that value is not allowable for the given command. This will + * occur whether the value is allowable for other functions, or an invalid integer value. + *

+ *

+ * Integer parameters that are used as names for AL objects such as Buffers and + * Sources are checked for validity. If an invalid name parameter is specified in an AL + * command, an AL_INVALID_NAME error will be generated, and the command is + * ignored. + *

+ *

+ * If a negative integer is provided where an argument of type sizei is specified, the + * error AL_INVALID_VALUE results. The same error will result from attempts to set + * integral and floating point values for attributes exceeding the legal range for these. + * The specification does not guarantee that the implementation emits + * AL_INVALID_VALUE if a NaN or Infinity value is passed in for a float or double + * argument (as the specification does not enforce possibly expensive testing of + * floating point values). + *

+ *

+ * Commands can be invalid. For example, certain commands might not be applicable + * to a given object. There are also illegal combinations of tokens and values as + * arguments to a command. AL responds to any such illegal command with an + * AL_INVALID_OPERATION error. + *

+ *

+ * If memory is exhausted as a side effect of the execution of an AL command, either + * on system level or by exhausting the allocated resources at AL's internal disposal, + * the error AL_OUT_OF_MEMORY may be generated. This can also happen independent + * of recent commands if AL has to request memory for an internal task and fails to + * allocate the required memory from the operating system. + *

+ *

+ * Otherwise errors are generated only for conditions that are explicitely described in + * this specification. + *

+ * + * @return current error state + */ + @NoErrorCheck + public @ALenum int alGetError(); + + /** + * To verify that a given extension is available for the current context and the device it + * is associated with, use this method. + *

+ * A null name argument returns AL_FALSE, as do invalid and unsupported string + * tokens. A null deviceHandle will result in an INVALID_DEVICE error. + *

+ * + * @param fname String describing the desired extension + * @return true if extension is available, false if not + */ + public boolean alIsExtensionPresent(String fname); + + /** + *

+ * To obtain enumeration values for extensions, the application has to use + * GetEnumValue of an extension token. Enumeration values are defined within the + * AL namespace and allocated according to specification of the core API and the + * extensions, thus they are context-independent. + *

+ *

+ * Returns 0 if the enumeration can not be found. The presence of an enum value does + * not guarantee the applicability of an extension to the current context. A non-zero + * return indicates merely that the implementation is aware of the existence of this + * extension. Implementations should not attempt to return 0 to indicate that the + * extensions is not supported for the current context. + *

+ * + * @param ename String describing an OpenAL enum + * @return Actual int for the described enumeration name + */ + public @ALenum int alGetEnumValue(String ename); + + /** + * Listener attributes are changed using the Listener group of commands. + * + * @param pname name of the attribute to be set + * @param value value to set the attribute to + */ + @ALvoid + public void alListeneri(@ALenum int pname, int value); + + /** + * Listener attributes are changed using the Listener group of commands. + * + * @param pname name of the attribute to be set + * @param value floating point value to set the attribute to + */ + @ALvoid + public void alListenerf(@ALenum int pname, float value); + + /** + * Listener attributes are changed using the Listener group of commands. + * + * @param pname name of the attribute to be set + * @param value FloatBuffer containing value to set the attribute to + */ + @StripPostfix("value") + @ALvoid + public void alListenerfv(@ALenum int pname, @Check("1") FloatBuffer value); + + /** + * Listener attributes are changed using the Listener group of commands. + * + * @param pname name of the attribute to be set + * @param v1 value value 1 + * @param v2 value value 2 + * @param v3 float value 3 + */ + @ALvoid + public void alListener3f(@ALenum int pname, float v1, float v2, float v3); + + + /** + * Listener state is maintained inside the AL implementation and can be queried in + * full. + * + * @param pname name of the attribute to be retrieved + * @return int + */ + public int alGetListeneri(@ALenum int pname); + + /** + * Listener state is maintained inside the AL implementation and can be queried in + * full. + * + * @param pname name of the attribute to be retrieved + * @return float + */ + public float alGetListenerf(@ALenum int pname); + + /** + * Listener state is maintained inside the AL implementation and can be queried in + * full. + * + * @param pname name of the attribute to be retrieved + * @param floatdata Buffer to write floats to + */ + // TODO: What's the real minimum number of elements? + @StripPostfix("floatdata") + @ALvoid + public void alGetListenerfv(@ALenum int pname, @Check("1") FloatBuffer floatdata); + + /** + * The application requests a number of Sources using GenSources. + * + * @param sources array holding sources + */ + @ALvoid + public void alGenSources(@AutoSize("sources") @ALsizei int n, @ALuint IntBuffer sources); + + /** + * The application requests deletion of a number of Sources by DeleteSources. + * + * @param source Source array to delete from + */ + @ALvoid + public void alDeleteSources(@AutoSize("sources") @ALsizei int n, @ALuint IntBuffer sources); + + /** + * The application can verify whether a source name is valid using the IsSource query. + * + * @param id id of source to be testes for validity + * @return true if id is valid, false if not + */ + public boolean alIsSource(@ALuint int id); + + /** + * Specifies the position and other properties as taken into account during + * sound processing. + * + * @param source Source to det property on + * @param pname property to set + * @param value value of property + */ + @ALvoid + public void alSourcei(@ALuint int source, @ALenum int pname, int value); + + /** + * Specifies the position and other properties as taken into account during + * sound processing. + * + * @param source Source to det property on + * @param pname property to set + * @param value value of property + */ + @ALvoid + public void alSourcef(@ALuint int source, @ALenum int pname, float value); + + /** + * Specifies the position and other properties as taken into account during + * sound processing. + * + * @param source Source to set property on + * @param pname property to set + * @param value FloatBuffer containing value of property + */ + // TODO: What's the correct minimum value? + @StripPostfix("value") + @ALvoid + public void alSourcefv(@ALuint int source, @ALenum int pname, @Check("1") FloatBuffer value); + + /** + * Specifies the position and other properties as taken into account during + * sound processing. + * + * @param source Source to set property on + * @param pname property to set + * @param v1 value 1 of property + * @param v2 value 2 of property + * @param v3 value 3 of property + */ + @ALvoid + public void alSource3f( + @ALuint int source, + @ALenum int pname, + float v1, + float v2, + float v3); + + + /** + * Source state is maintained inside the AL implementation, and the current attributes + * can be queried. The performance of such queries is implementation dependent, no + * performance guarantees are made. + * + * @param source source to get property from + * @param pname name of property + * @return int + */ + @ALvoid + public void alGetSourcei(@ALuint int source, @ALenum int pname, @Result int value); + + /** + * Source state is maintained inside the AL implementation, and the current attributes + * can be queried. The performance of such queries is implementation dependent, no + * performance guarantees are made. + * + * @param source source to get property from + * @param pname name of property + * @return float + */ + @ALvoid + public void alGetSourcef(@ALuint int source, @ALenum int pname, @Result float value); + + /** + * Source state is maintained inside the AL implementation, and the current attributes + * can be queried. The performance of such queries is implementation dependent, no + * performance guarantees are made. + * + * @param source Source to get property from + * @param pname property to get + * @param floatdata Buffer to write floats to + */ + // TODO: What's the correct minimum value? + @StripPostfix("floatdata") + @ALvoid + public void alGetSourcefv(@ALuint int source, @ALenum int pname, @Check("1") FloatBuffer floatdata); + + /** + * Play() applied to an AL_INITIAL Source will promote the Source to AL_PLAYING, thus + * the data found in the Buffer will be fed into the processing, starting at the + * beginning. Play() applied to a AL_PLAYING Source will restart the Source from the + * beginning. It will not affect the configuration, and will leave the Source in + * AL_PLAYING state, but reset the sampling offset to the beginning. Play() applied to a + * AL_PAUSED Source will resume processing using the Source state as preserved at the + * Pause() operation. Play() applied to a AL_STOPPED Source will propagate it to + * AL_INITIAL then to AL_PLAYING immediately. + * + * @param sources array of sources to play + */ + @StripPostfix("sources") + @ALvoid + public void alSourcePlayv(@AutoSize("sources") @ALsizei int n, @ALuint IntBuffer sources); + + /** + * Pause() applied to an AL_INITIAL Source is a legal NOP. Pause() applied to a + * AL_PLAYING Source will change its state to AL_PAUSED. The Source is exempt from + * processing, its current state is preserved. Pause() applied to a AL_PAUSED Source is a + * legal NOP. Pause() applied to a AL_STOPPED Source is a legal NOP. + * + * @param sources array of sources to pause + */ + @StripPostfix("sources") + @ALvoid + public void alSourcePausev(@AutoSize("sources") @ALsizei int n, @ALuint IntBuffer sources); + + /** + * Stop() applied to an AL_INITIAL Source is a legal NOP. Stop() applied to a AL_PLAYING + * Source will change its state to AL_STOPPED. The Source is exempt from processing, + * its current state is preserved. Stop() applied to a AL_PAUSED Source will change its + * state to AL_STOPPED, with the same consequences as on a AL_PLAYING Source. Stop() + * applied to a AL_STOPPED Source is a legal NOP. + * + * @param sources array of sources to stop + */ + @StripPostfix("sources") + @ALvoid + public void alSourceStopv(@AutoSize("sources") @ALsizei int n, @ALuint IntBuffer sources); + + /** + * Rewind() applied to an AL_INITIAL Source is a legal NOP. Rewind() applied to a + * AL_PLAYING Source will change its state to AL_STOPPED then AL_INITIAL. The Source is + * exempt from processing, its current state is preserved, with the exception of the + * sampling offset which is reset to the beginning. Rewind() applied to a AL_PAUSED + * Source will change its state to AL_INITIAL, with the same consequences as on a + * AL_PLAYING Source. Rewind() applied to a AL_STOPPED Source promotes the Source to + * AL_INITIAL, resetting the sampling offset to the beginning. + * + * @param sources array of sources to rewind + */ + @StripPostfix("sources") + @ALvoid + public void alSourceRewindv(@AutoSize("sources") @ALsizei int n, @ALuint IntBuffer sources); + + /** + * Play() applied to an AL_INITIAL Source will promote the Source to AL_PLAYING, thus + * the data found in the Buffer will be fed into the processing, starting at the + * beginning. Play() applied to a AL_PLAYING Source will restart the Source from the + * beginning. It will not affect the configuration, and will leave the Source in + * AL_PLAYING state, but reset the sampling offset to the beginning. Play() applied to a + * AL_PAUSED Source will resume processing using the Source state as preserved at the + * Pause() operation. Play() applied to a AL_STOPPED Source will propagate it to + * AL_INITIAL then to AL_PLAYING immediately. + * + * @param source Source to play + */ + @ALvoid + public void alSourcePlay(@ALuint int source); + + /** + * Pause() applied to an AL_INITIAL Source is a legal NOP. Pause() applied to a + * AL_PLAYING Source will change its state to AL_PAUSED. The Source is exempt from + * processing, its current state is preserved. Pause() applied to a AL_PAUSED Source is a + * legal NOP. Pause() applied to a AL_STOPPED Source is a legal NOP. + * + * @param source Source to pause + */ + @ALvoid + public void alSourcePause(@ALuint int source); + + /** + * Stop() applied to an AL_INITIAL Source is a legal NOP. Stop() applied to a AL_PLAYING + * Source will change its state to AL_STOPPED. The Source is exempt from processing, + * its current state is preserved. Stop() applied to a AL_PAUSED Source will change its + * state to AL_STOPPED, with the same consequences as on a AL_PLAYING Source. Stop() + * applied to a AL_STOPPED Source is a legal NOP. + * + * @param source Source to stop + */ + @ALvoid + public void alSourceStop(@ALuint int source); + + /** + * Rewind() applied to an AL_INITIAL Source is a legal NOP. Rewind() applied to a + * AL_PLAYING Source will change its state to AL_STOPPED then AL_INITIAL. The Source is + * exempt from processing, its current state is preserved, with the exception of the + * sampling offset which is reset to the beginning. Rewind() applied to a AL_PAUSED + * Source will change its state to AL_INITIAL, with the same consequences as on a + * AL_PLAYING Source. Rewind() applied to a AL_STOPPED Source promotes the Source to + * AL_INITIAL, resetting the sampling offset to the beginning. + * + * @param source Source to rewind + */ + @ALvoid + public void alSourceRewind(@ALuint int source); + + /** + * The application requests a number of Buffers using GenBuffers. + * + * @param buffers holding buffers + */ + @ALvoid + public void alGenBuffers(@AutoSize("buffers") @ALsizei int n, @ALuint IntBuffer buffers); + + /** + *

+ * The application requests deletion of a number of Buffers by calling DeleteBuffers. + *

+ *

+ * Once deleted, Names are no longer valid for use with AL function calls. Any such + * use will cause an AL_INVALID_NAME error. The implementation is free to defer actual + * release of resources. + *

+ *

+ * IsBuffer(bname) can be used to verify deletion of a buffer. Deleting bufferName 0 is + * a legal NOP in both scalar and vector forms of the command. The same is true for + * unused buffer names, e.g. such as not allocated yet, or as released already. + * + * @param buffers Buffer to delete from + */ + @ALvoid + public void alDeleteBuffers(@AutoSize("buffers") @ALsizei int n, @ALuint IntBuffer buffers); + + /** + * The application can verify whether a buffer Name is valid using the IsBuffer query. + * + * @param buffer buffer to be tested for validity + * @return true if supplied buffer is valid, false if not + */ + public boolean alIsBuffer(@ALuint int buffer); + + /** + *

+ * A special case of Buffer state is the actual sound sample data stored in asociation + * with the Buffer. Applications can specify sample data using BufferData. + *

+ *

+ * The data specified is copied to an internal software, or if possible, hardware buffer. + * The implementation is free to apply decompression, conversion, resampling, and + * filtering as needed. The internal format of the Buffer is not exposed to the + * application, and not accessible. Valid formats are AL_FORMAT_MONO8, + * AL_FORMAT_MONO16, AL_FORMAT_STEREO8, and AL_FORMAT_STEREO16. An + * implementation may expose other formats, see the chapter on Extensions for + * information on determining if additional formats are supported. + *

+ *

+ * Applications should always check for an error condition after attempting to specify + * buffer data in case an implementation has to generate an AL_OUT_OF_MEMORY or + * conversion related AL_INVALID_VALUE error. The application is free to reuse the + * memory specified by the data pointer once the call to BufferData returns. The + * implementation has to dereference, e.g. copy, the data during BufferData execution. + *

+ * + * @param buffer Buffer to fill + * @param format format sound data is in + * @param data location of data + * @param freq frequency of data + */ + @ALvoid + public void alBufferData( + @ALuint int buffer, + @ALenum int format, + @ALbyte + @ALshort + @ALint + Buffer data, + @AutoSize("data") + @ALsizei int size, + @ALsizei int freq); + + /** + * Buffer state is maintained inside the AL implementation and can be queried in full.
+ * ALC_FREQUENCY - specified in samples per second, i.e. units of Hertz [Hz].
+ * ALC_SIZE - Size in bytes of the buffer data.
+ * + * @param buffer buffer to get property from + * @param pname name of property to retrieve + */ + @ALvoid + public void alGetBufferi(@ALuint int buffer, @ALenum int pname, @Result int value); + + /** + * Buffer state is maintained inside the AL implementation and can be queried in full.
+ * ALC_FREQUENCY - specified in samples per second, i.e. units of Hertz [Hz].
+ * ALC_SIZE - Size in bytes of the buffer data.
+ * + * @param buffer buffer to get property from + * @param pname name of property to retrieve + * @return float + */ + @ALvoid + public void alGetBufferf(@ALuint int buffer, @ALenum int pname, @Result float value); + + /** + *

+ * The application can queue up one or multiple buffer names using + * SourceQueueBuffers. The buffers will be queued in the sequence in which they + * appear in the array. + *

+ *

+ * This command is legal on a Source in any state (to allow for streaming, queueing + * has to be possible on a AL_PLAYING Source). Queues are read-only with exception of + * the unqueue operation. The Buffer Name AL_NONE (i.e. 0) can be queued. + *

+ * + * @param source source to queue buffers onto + * @param buffers buffers to be queued + */ + @ALvoid + public void alSourceQueueBuffers(@ALuint int source, @AutoSize("buffers") @ALsizei int n, @ALuint IntBuffer buffers); + + /** + *

+ * Once a queue entry for a buffer has been appended to a queue and is pending + * processing, it should not be changed. Removal of a given queue entry is not possible + * unless either the Source is AL_STOPPED (in which case then entire queue is considered + * processed), or if the queue entry has already been processed (AL_PLAYING or AL_PAUSED + * Source). + *

+ *

+ * The Unqueue command removes a number of buffers entries that have nished + * processing, in the order of appearance, from the queue. The operation will fail if + * more buffers are requested than available, leaving the destination arguments + * unchanged. An AL_INVALID_VALUE error will be thrown. If no error, the destination + * argument will have been updated accordingly. + *

+ * + * @param source source to unqueue buffers from + * @param buffers buffers to be unqueued + */ + @ALvoid + public void alSourceUnqueueBuffers(@ALuint int source, @AutoSize("buffers") @ALsizei int n, @ALuint IntBuffer buffers); + + /** + *

+ * Samples usually use the entire dynamic range of the chosen format/encoding, + * independent of their real world intensity. In other words, a jet engine and a + * clockwork both will have samples with full amplitude. The application will then + * have to adjust Source AL_GAIN accordingly to account for relative differences. + *

+ *

+ * Source AL_GAIN is then attenuated by distance. The effective attenuation of a Source + * depends on many factors, among which distance attenuation and source and + * Listener AL_GAIN are only some of the contributing factors. Even if the source and + * Listener AL_GAIN exceed 1.0 (amplification beyond the guaranteed dynamic range), + * distance and other attenuation might ultimately limit the overall AL_GAIN to a value + * below 1.0. + *

+ *

+ * AL currently supports three modes of operation with respect to distance + * attenuation. It supports two distance-dependent attenuation models, one which is + * similar to the IASIG I3DL2 (and DS3D) model. The application choses one of these + * two models (or can chose to disable distance-dependent attenuation effects model) + * on a per-context basis. + *

+ *

+ * Legal arguments are AL_NONE, AL_INVERSE_DISTANCE, and + * AL_INVERSE_DISTANCE_CLAMPED. + *
+ *
+ * AL_NONE bypasses all distance attenuation + * calculation for all Sources. The implementation is expected to optimize this + * situation. + *
+ *
+ * AL_INVERSE_DISTANCE_CLAMPED is the DS3D model, with + * AL_REFERENCE_DISTANCE indicating both the reference distance and the distance + * below which gain will be clamped. + *
+ *
+ * AL_INVERSE_DISTANCE is equivalent to the DS3D + * model with the exception that AL_REFERENCE_DISTANCE does not imply any + * clamping. + *
+ *
+ * The AL implementation is still free to apply any range clamping as + * necessary. The current distance model chosen can be queried using GetIntegerv and + * AL_DISTANCE_MODEL. + *

+ * + * @param value distance model to be set + */ + @ALvoid + public void alDistanceModel(@ALenum int value); + + /** + * The Doppler Effect depends on the velocities of Source and Listener relative to the + * medium, and the propagation speed of sound in that medium. The application + * might want to emphasize or de-emphasize the Doppler Effect as physically accurate + * calculation might not give the desired results. The amount of frequency shift (pitch + * change) is proportional to the speed of listener and source along their line of sight. + * The application can increase or decrease that frequency shift by specifying the + * scaling factor AL should apply to the result of the calculation. + *
+ *
+ * The Doppler Effect as implemented by AL is described by the formula below. Effects + * of the medium (air, water) moving with respect to listener and source are ignored. + * AL_DOPPLER_VELOCITY is the propagation speed relative to which the Source + * velocities are interpreted. + * + *

+ *

+	 *	 VD: AL_DOPPLER_VELOCITY
+	 *	 DF: AL_DOPPLER_FACTOR
+	 *	 vl: Listener velocity (scalar, projected on source-listener vector)
+	 *	 vs: Source verlocity (scalar, projected on source-listener vector)
+	 *	 f: Frequency in sample
+	 *	 f': effective Doppler shifted frequency
+	 *	 
+	 *	 f' = DF * f * (VD-vl)/(VD+vs)
+	 * 
+	 *	 vl<0, vs>0 : source and listener approaching each other
+	 *	 vl>0, vs<0 : source and listener moving away from each other
+	 * 
+ *

+ *

+ * The implementation has to clamp the projected Listener velocity vl, if abs(vl) is + * greater or equal VD. It similarly has to clamp the projected Source velocity vs if + * abs(vs) is greater or equal VD. + *

+ *

+ * There are two API calls global to the current context that provide control of the two + * related parameters. + *

+ *

+ * AL_DOPPLER_FACTOR is a simple scaling to exaggerate or + * deemphasize the Doppler (pitch) shift resulting from the calculation. + *

+ *

+ * A negative value will result in an AL_INVALID_VALUE error, the command is then + * ignored. The default value is 1. The current setting can be queried using GetFloatv + * and AL_DOPPLER_FACTOR. The implementation is free to optimize the case of + * AL_DOPPLER_FACTOR being set to zero, as this effectively disables the effect. + *

+ * + * @param value Doppler scale value to set + */ + @ALvoid + public void alDopplerFactor(float value); + + /** + * The Doppler Effect depends on the velocities of Source and Listener relative to the + * medium, and the propagation speed of sound in that medium. The application + * might want to emphasize or de-emphasize the Doppler Effect as physically accurate + * calculation might not give the desired results. The amount of frequency shift (pitch + * change) is proportional to the speed of listener and source along their line of sight. + * The application can increase or decrease that frequency shift by specifying the + * scaling factor AL should apply to the result of the calculation. + *
+ *
+ * The Doppler Effect as implemented by AL is described by the formula below. Effects + * of the medium (air, water) moving with respect to listener and source are ignored. + * AL_DOPPLER_VELOCITY is the propagation speed relative to which the Source + * velocities are interpreted. + * + *

+ *

+	 *	 VD: AL_DOPPLER_VELOCITY
+	 *	 DF: AL_DOPPLER_FACTOR
+	 *	 vl: Listener velocity (scalar, projected on source-listener vector)
+	 *	 vs: Source verlocity (scalar, projected on source-listener vector)
+	 *	 f: Frequency in sample
+	 *	 f': effective Doppler shifted frequency
+	 *	 
+	 *	 f' = DF * f * (VD-vl)/(VD+vs)
+	 * 
+	 *	 vl<0, vs>0 : source and listener approaching each other
+	 *	 vl>0, vs<0 : source and listener moving away from each other
+	 * 
+ *

+ *

+ * The implementation has to clamp the projected Listener velocity vl, if abs(vl) is + * greater or equal VD. It similarly has to clamp the projected Source velocity vs if + * abs(vs) is greater or equal VD. + *

+ *

+ * There are two API calls global to the current context that provide control of the two + * related parameters. + *

+ *

+ * AL_DOPPLER_VELOCITY allows the application to change the reference (propagation) + * velocity used in the Doppler Effect calculation. This permits the application to use a + * velocity scale appropriate to its purposes. + *

+ *

+ * A negative or zero value will result in an AL_INVALID_VALUE error, the command is + * then ignored. The default value is 1. The current setting can be queried using + * GetFloatv and AL_DOPPLER_VELOCITY. + *

+ * + * @param value Doppler velocity value to set + */ + @ALvoid + public void alDopplerVelocity(float value); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_buffer_object.java b/src/templates/org/lwjgl/opengl/ARB_buffer_object.java new file mode 100644 index 00000000..f5ca0ae3 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_buffer_object.java @@ -0,0 +1,127 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.BufferChecks; +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +import java.nio.*; + +@Extension(postfix="ARB", isFinal=false) +public interface ARB_buffer_object { + /* + * Accepted by the parameter of BufferDataARB: + */ + public static final int GL_STREAM_DRAW_ARB = 0x88E0; + public static final int GL_STREAM_READ_ARB = 0x88E1; + public static final int GL_STREAM_COPY_ARB = 0x88E2; + public static final int GL_STATIC_DRAW_ARB = 0x88E4; + public static final int GL_STATIC_READ_ARB = 0x88E5; + public static final int GL_STATIC_COPY_ARB = 0x88E6; + public static final int GL_DYNAMIC_DRAW_ARB = 0x88E8; + public static final int GL_DYNAMIC_READ_ARB = 0x88E9; + public static final int GL_DYNAMIC_COPY_ARB = 0x88EA; + + /* + * Accepted by the parameter of MapBufferARB: + */ + public static final int GL_READ_ONLY_ARB = 0x88B8; + public static final int GL_WRITE_ONLY_ARB = 0x88B9; + public static final int GL_READ_WRITE_ARB = 0x88BA; + + /* + * Accepted by the parameter of GetBufferParameterivARB: + */ + public static final int GL_BUFFER_SIZE_ARB = 0x8764; + public static final int GL_BUFFER_USAGE_ARB = 0x8765; + public static final int GL_BUFFER_ACCESS_ARB = 0x88BB; + public static final int GL_BUFFER_MAPPED_ARB = 0x88BC; + public static final int GL_BUFFER_MAP_POINTER_ARB = 0x88BD; + + @Code( " BufferObjectTracker.bindBuffer(target, buffer);") + public void glBindBufferARB(@GLenum int target, @GLuint int buffer); + @Code( " BufferObjectTracker.deleteBuffers(buffers);") + public void glDeleteBuffersARB(@AutoSize("buffers") @GLsizei int n, @Const @GLuint IntBuffer buffers); + public void glGenBuffersARB(@AutoSize("buffers") int n, @GLuint IntBuffer buffers); + public boolean glIsBufferARB(@GLuint int buffer); + + @GenerateAutos + public void glBufferDataARB(@GLenum int target, @AutoSize("data") @GLsizeiptrARB int size, + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data, @GLenum int usage); + + public void glBufferSubDataARB(@GLenum int target, @GLintptrARB int offset, @AutoSize("data") @GLsizeiptrARB int size, + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + public void glGetBufferSubDataARB(@GLenum int target, @GLintptrARB int offset, @AutoSize("data") @GLsizeiptrARB int size, + @Check + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + /** + * glMapBufferARB maps a gl vertex buffer buffer to a ByteBuffer. The oldBuffer argument can be null, + * in which case a new ByteBuffer will be created, pointing to the returned memory. If oldBuffer is non-null, + * it will be returned if it points to the same mapped memory, otherwise a new ByteBuffer is created. That + * way, an application will normally use glMapBufferARB like this: + *

+ * ByteBuffer mapped_buffer; mapped_buffer = glMapBufferARB(..., ..., ..., null); ... // Another map on the same buffer mapped_buffer = glMapBufferARB(..., ..., ..., mapped_buffer); + * + * @param size The size of the buffer area. + * @param oldBuffer A ByteBuffer. If this argument points to the same address as the new mapping, it will be returned and no new buffer will be created. In that case, size is ignored. + * + * @return A ByteBuffer representing the mapped buffer memory. + */ + @CachedResult + public @GLvoid ByteBuffer glMapBufferARB(@GLenum int target, @GLenum int access); + + public boolean glUnmapBufferARB(@GLenum int target); + + @StripPostfix("params") + public void glGetBufferParameterivARB(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("pointer") + public void glGetBufferPointervARB(@GLenum int target, @GLenum int pname, @Result @GLvoid ByteBuffer pointer); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_color_buffer_float.java b/src/templates/org/lwjgl/opengl/ARB_color_buffer_float.java new file mode 100644 index 00000000..a637fd33 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_color_buffer_float.java @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; +import org.lwjgl.LWJGLException; + +public interface ARB_color_buffer_float { + /* + * Accepted by the parameters of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int RGBA_FLOAT_MODE_ARB = 0x8820; + + /* + * Accepted by the parameter of ClampColorARB and the + * parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev. + */ + public static final int CLAMP_VERTEX_COLOR_ARB = 0x891A; + public static final int CLAMP_FRAGMENT_COLOR_ARB = 0x891B; + public static final int CLAMP_READ_COLOR_ARB = 0x891C; + + /* + * Accepted by the parameter of ClampColorARB. + */ + public static final int FIXED_ONLY_ARB = 0x891D; + + /* + * Accepted as a value in the and + * parameter arrays of wglChoosePixelFormatARB, and returned in the + * parameter array of wglGetPixelFormatAttribivARB, and the + * parameter array of wglGetPixelFormatAttribfvARB: + */ + static final int WGL_TYPE_RGBA_FLOAT_ARB = 0x21A0; + + /* + * Accepted as values of the arguments in the + * glXCreateNewContext and glXCreateContext functions + */ + static final int GLX_RGBA_FLOAT_TYPE = 0x20B9; + + /* + * Accepted as a bit set in the GLX_RENDER_TYPE variable + */ + static final int GLX_RGBA_FLOAT_BIT = 0x00000004; + + public void glClampColorARB(@GLenum int target, @GLenum int clamp); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_depth_texture.java b/src/templates/org/lwjgl/opengl/ARB_depth_texture.java new file mode 100644 index 00000000..92639e98 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_depth_texture.java @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_depth_texture { + /* + * Accepted by the parameter of TexImage1D, TexImage2D, + * CopyTexImage1D and CopyTexImage2D: + */ + public static final int GL_DEPTH_COMPONENT16_ARB = 0x81A5; + public static final int GL_DEPTH_COMPONENT24_ARB = 0x81A6; + public static final int GL_DEPTH_COMPONENT32_ARB = 0x81A7; + + /* + * Accepted by the parameter of GetTexLevelParameterfv and + * GetTexLevelParameteriv: + */ + public static final int GL_TEXTURE_DEPTH_SIZE_ARB = 0x884A; + + /* + * Accepted by the parameter of TexParameterf, TexParameteri, + * TexParameterfv, TexParameteriv, GetTexParameterfv, and GetTexParameteriv: + */ + public static final int GL_DEPTH_TEXTURE_MODE_ARB = 0x884B; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_draw_buffers.java b/src/templates/org/lwjgl/opengl/ARB_draw_buffers.java new file mode 100644 index 00000000..c7acebfb --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_draw_buffers.java @@ -0,0 +1,64 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.BufferChecks; +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +import java.nio.IntBuffer; + +public interface ARB_draw_buffers { + /* + * Accepted by the parameters of GetIntegerv, GetFloatv, + * and GetDoublev: + */ + public static final int GL_MAX_DRAW_BUFFERS_ARB = 0x8824; + public static final int GL_DRAW_BUFFER0_ARB = 0x8825; + public static final int GL_DRAW_BUFFER1_ARB = 0x8826; + public static final int GL_DRAW_BUFFER2_ARB = 0x8827; + public static final int GL_DRAW_BUFFER3_ARB = 0x8828; + public static final int GL_DRAW_BUFFER4_ARB = 0x8829; + public static final int GL_DRAW_BUFFER5_ARB = 0x882A; + public static final int GL_DRAW_BUFFER6_ARB = 0x882B; + public static final int GL_DRAW_BUFFER7_ARB = 0x882C; + public static final int GL_DRAW_BUFFER8_ARB = 0x882D; + public static final int GL_DRAW_BUFFER9_ARB = 0x882E; + public static final int GL_DRAW_BUFFER10_ARB = 0x882F; + public static final int GL_DRAW_BUFFER11_ARB = 0x8830; + public static final int GL_DRAW_BUFFER12_ARB = 0x8831; + public static final int GL_DRAW_BUFFER13_ARB = 0x8832; + public static final int GL_DRAW_BUFFER14_ARB = 0x8833; + public static final int GL_DRAW_BUFFER15_ARB = 0x8834; + + public void glDrawBuffersARB(@AutoSize("buffers") @GLsizei int size, @Const @GLenum IntBuffer buffers); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_fragment_program.java b/src/templates/org/lwjgl/opengl/ARB_fragment_program.java new file mode 100644 index 00000000..6515b34a --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_fragment_program.java @@ -0,0 +1,68 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_fragment_program extends ARB_program { + /* + * Accepted by the parameter of Disable, Enable, and IsEnabled, by the + * parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev, + * and by the parameter of ProgramStringARB, BindProgramARB, + * ProgramEnvParameter4[df][v]ARB, ProgramLocalParameter4[df][v]ARB, + * GetProgramEnvParameter[df]vARB, GetProgramLocalParameter[df]vARB, + * GetProgramivARB and GetProgramStringARB. + */ + public static final int GL_FRAGMENT_PROGRAM_ARB = 0x8804; + + /* + * Accepted by the parameter of GetProgramivARB: + */ + public static final int GL_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x8805; + public static final int GL_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x8806; + public static final int GL_PROGRAM_TEX_INDIRECTIONS_ARB = 0x8807; + public static final int GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x8808; + public static final int GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x8809; + public static final int GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x880A; + public static final int GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x880B; + public static final int GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x880C; + public static final int GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB = 0x880D; + public static final int GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x880E; + public static final int GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x880F; + public static final int GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x8810; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, GetFloatv, + * and GetDoublev: + */ + public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; + public static final int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; +} + diff --git a/src/templates/org/lwjgl/opengl/ARB_fragment_shader.java b/src/templates/org/lwjgl/opengl/ARB_fragment_shader.java new file mode 100644 index 00000000..a4904fa6 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_fragment_shader.java @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_fragment_shader { + /* + * Accepted by the argument of CreateShaderObjectARB and + * returned by the parameter of GetObjectParameter{fi}vARB: + */ + public static final int GL_FRAGMENT_SHADER_ARB = 0x8B30; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = 0x8B49; + public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; + public static final int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; + + /* + * Accepted by the parameter of Hint and the parameter of + * GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev: + */ + public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = 0x8B8B; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_half_float_pixel.java b/src/templates/org/lwjgl/opengl/ARB_half_float_pixel.java new file mode 100644 index 00000000..7b30ae82 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_half_float_pixel.java @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_half_float_pixel { + /* + * Accepted by the parameter of DrawPixels, ReadPixels, + * TexImage1D, TexImage2D, TexImage3D, GetTexImage, TexSubImage1D, + * TexSubImage2D, TexSubImage3D, GetHistogram, GetMinmax, + * ConvolutionFilter1D, ConvolutionFilter2D, GetConvolutionFilter, + * SeparableFilter2D, GetSeparableFilter, ColorTable, ColorSubTable, + * and GetColorTable: + */ + public static final int HALF_FLOAT_ARB = 0x140B; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_imaging.java b/src/templates/org/lwjgl/opengl/ARB_imaging.java new file mode 100644 index 00000000..6a01aa1a --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_imaging.java @@ -0,0 +1,298 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.BufferChecks; +import org.lwjgl.BufferUtils; +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +/** + * $Id$ + *

+ * The GL12 imaging subset extension. + * + * @author cix_foo + * @version $Revision$ + */ + +@Extension(postfix="") +public interface ARB_imaging { + public static final int GL_CONSTANT_COLOR = 0x8001; + public static final int GL_ONE_MINUS_CONSTANT_COLOR = 0x8002; + public static final int GL_CONSTANT_ALPHA = 0x8003; + public static final int GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004; + public static final int GL_BLEND_COLOR = 0x8005; + public static final int GL_FUNC_ADD = 0x8006; + public static final int GL_MIN = 0x8007; + public static final int GL_MAX = 0x8008; + public static final int GL_BLEND_EQUATION = 0x8009; + public static final int GL_FUNC_SUBTRACT = 0x800A; + public static final int GL_FUNC_REVERSE_SUBTRACT = 0x800B; + public static final int GL_COLOR_MATRIX = 0x80B1; + public static final int GL_COLOR_MATRIX_STACK_DEPTH = 0x80B2; + public static final int GL_MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3; + public static final int GL_POST_COLOR_MATRIX_RED_SCALE = 0x80B4; + public static final int GL_POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5; + public static final int GL_POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6; + public static final int GL_POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7; + public static final int GL_POST_COLOR_MATRIX_RED_BIAS = 0x80B8; + public static final int GL_POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9; + public static final int GL_POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA; + public static final int GL_POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB; + public static final int GL_COLOR_TABLE = 0x80D0; + public static final int GL_POST_CONVOLUTION_COLOR_TABLE = 0x80D1; + public static final int GL_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D2; + public static final int GL_PROXY_COLOR_TABLE = 0x80D3; + public static final int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80D4; + public static final int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D5; + public static final int GL_COLOR_TABLE_SCALE = 0x80D6; + public static final int GL_COLOR_TABLE_BIAS = 0x80D7; + public static final int GL_COLOR_TABLE_FORMAT = 0x80D8; + public static final int GL_COLOR_TABLE_WIDTH = 0x80D9; + public static final int GL_COLOR_TABLE_RED_SIZE = 0x80DA; + public static final int GL_COLOR_TABLE_GREEN_SIZE = 0x80DB; + public static final int GL_COLOR_TABLE_BLUE_SIZE = 0x80DC; + public static final int GL_COLOR_TABLE_ALPHA_SIZE = 0x80DD; + public static final int GL_COLOR_TABLE_LUMINANCE_SIZE = 0x80DE; + public static final int GL_COLOR_TABLE_INTENSITY_SIZE = 0x80DF; + public static final int GL_CONVOLUTION_1D = 0x8010; + public static final int GL_CONVOLUTION_2D = 0x8011; + public static final int GL_SEPARABLE_2D = 0x8012; + public static final int GL_CONVOLUTION_BORDER_MODE = 0x8013; + public static final int GL_CONVOLUTION_FILTER_SCALE = 0x8014; + public static final int GL_CONVOLUTION_FILTER_BIAS = 0x8015; + public static final int GL_REDUCE = 0x8016; + public static final int GL_CONVOLUTION_FORMAT = 0x8017; + public static final int GL_CONVOLUTION_WIDTH = 0x8018; + public static final int GL_CONVOLUTION_HEIGHT = 0x8019; + public static final int GL_MAX_CONVOLUTION_WIDTH = 0x801A; + public static final int GL_MAX_CONVOLUTION_HEIGHT = 0x801B; + public static final int GL_POST_CONVOLUTION_RED_SCALE = 0x801C; + public static final int GL_POST_CONVOLUTION_GREEN_SCALE = 0x801D; + public static final int GL_POST_CONVOLUTION_BLUE_SCALE = 0x801E; + public static final int GL_POST_CONVOLUTION_ALPHA_SCALE = 0x801F; + public static final int GL_POST_CONVOLUTION_RED_BIAS = 0x8020; + public static final int GL_POST_CONVOLUTION_GREEN_BIAS = 0x8021; + public static final int GL_POST_CONVOLUTION_BLUE_BIAS = 0x8022; + public static final int GL_POST_CONVOLUTION_ALPHA_BIAS = 0x8023; + public static final int GL_IGNORE_BORDER = 0x8150; + public static final int GL_CONSTANT_BORDER = 0x8151; + public static final int GL_REPLICATE_BORDER = 0x8153; + public static final int GL_CONVOLUTION_BORDER_COLOR = 0x8154; + public static final int GL_HISTOGRAM = 0x8024; + public static final int GL_PROXY_HISTOGRAM = 0x8025; + public static final int GL_HISTOGRAM_WIDTH = 0x8026; + public static final int GL_HISTOGRAM_FORMAT = 0x8027; + public static final int GL_HISTOGRAM_RED_SIZE = 0x8028; + public static final int GL_HISTOGRAM_GREEN_SIZE = 0x8029; + public static final int GL_HISTOGRAM_BLUE_SIZE = 0x802A; + public static final int GL_HISTOGRAM_ALPHA_SIZE = 0x802B; + public static final int GL_HISTOGRAM_LUMINANCE_SIZE = 0x802C; + public static final int GL_HISTOGRAM_SINK = 0x802D; + public static final int GL_MINMAX = 0x802E; + public static final int GL_MINMAX_FORMAT = 0x802F; + public static final int GL_MINMAX_SINK = 0x8030; + + public void glColorTable(@GLenum int target, @GLenum int internalFormat, @GLsizei int width, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check("256") + @Const + @GLbyte + @GLfloat + Buffer data); + + public void glColorSubTable(@GLenum int target, @GLsizei int start, @GLsizei int count, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check("256") + @Const + @GLbyte + @GLfloat + Buffer data); + + @StripPostfix("params") + public void glColorTableParameteriv(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("params") + public void glColorTableParameterfv(@GLenum int target, @GLenum int pname, @Check("4") FloatBuffer params); + + public void glCopyColorSubTable(@GLenum int target, @GLsizei int start, int x, int y, @GLsizei int width); + + public void glCopyColorTable(@GLenum int target, @GLenum int internalformat, int x, int y, @GLsizei int width); + + public void glGetColorTable(@GLenum int target, @GLenum int format, @GLenum int type, + @Check("256") + @GLbyte + @GLfloat + Buffer data); + + @StripPostfix("params") + public void glGetColorTableParameteriv(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + @StripPostfix("params") + public void glGetColorTableParameterfv(@GLenum int target, @GLenum int pname, @Check("4") FloatBuffer params); + + public void glBlendEquation(@GLenum int mode); + + public void glBlendColor(@GLclampf float red, @GLclampf float green, @GLclampf float blue, @GLclampf float alpha); + + public void glHistogram(@GLenum int target, @GLsizei int width, @GLenum int internalformat, boolean sink); + + public void glResetHistogram(@GLenum int target); + + public void glGetHistogram(@GLenum int target, boolean reset, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.PackPBO) + @Check("256") + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer values); + + @StripPostfix("params") + public void glGetHistogramParameterfv(@GLenum int target, @GLenum int pname, @Check("256") FloatBuffer params); + @StripPostfix("params") + public void glGetHistogramParameteriv(@GLenum int target, @GLenum int pname, @Check("256") IntBuffer params); + + public void glMinmax(@GLenum int target, @GLenum int internalformat, boolean sink); + + public void glResetMinmax(@GLenum int target); + + public void glGetMinmax(@GLenum int target, boolean reset, @GLenum int format, @GLenum int types, + @BufferObject(BufferKind.PackPBO) + @Check("4") + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer values); + + @StripPostfix("params") + public void glGetMinmaxParameterfv(@GLenum int target, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetMinmaxParameteriv(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + + public void glConvolutionFilter1D(@GLenum int target, @GLenum int internalformat, @GLsizei int width, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check("GLBufferChecks.calculateImageStorage(image, format, type, width, 1, 1)") + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer image); + + public void glConvolutionFilter2D(@GLenum int target, @GLenum int internalformat, @GLsizei int width, @GLsizei int height, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check("GLBufferChecks.calculateImageStorage(image, format, type, width, height, 1)") + @GLbyte + @GLshort + @GLint + Buffer image); + + public void glConvolutionParameterf(@GLenum int target, @GLenum int pname, float params); + + @StripPostfix("params") + public void glConvolutionParameterfv(@GLenum int target, @GLenum int pname, @Check("4") @Const FloatBuffer params); + + public void glConvolutionParameteri(@GLenum int target, @GLenum int pname, int params); + + @StripPostfix("params") + public void glConvolutionParameteriv(@GLenum int target, @GLenum int pname, @Check("4") @Const IntBuffer params); + + public void glCopyConvolutionFilter1D(@GLenum int target, @GLenum int internalformat, int x, int y, @GLsizei int width); + + public void glCopyConvolutionFilter2D(@GLenum int target, @GLenum int internalformat, int x, int y, @GLsizei int width, @GLsizei int height); + + // TODO: check buffer size valid + public void glGetConvolutionFilter(@GLenum int target, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.PackPBO) + @Check + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer image); + + @StripPostfix("params") + public void glGetConvolutionParameterfv(@GLenum int target, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetConvolutionParameteriv(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + + // TODO: check buffer size valid + public void glSeparableFilter2D(@GLenum int target, @GLenum int internalformat, @GLsizei int width, @GLsizei int height, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer row, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer column); + + // TODO: check buffer size valid + public void glGetSeparableFilter(@GLenum int target, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.PackPBO) + @Check + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer row, + @BufferObject(BufferKind.PackPBO) + @Check + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer column, + @BufferObject(BufferKind.PackPBO) + @Check + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer span); +} + diff --git a/src/templates/org/lwjgl/opengl/ARB_matrix_palette.java b/src/templates/org/lwjgl/opengl/ARB_matrix_palette.java new file mode 100644 index 00000000..295b8c0c --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_matrix_palette.java @@ -0,0 +1,71 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import org.lwjgl.generator.*; + +public interface ARB_matrix_palette { + public static final int GL_MATRIX_PALETTE_ARB = 0x8840; + public static final int GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = 0x8841; + public static final int GL_MAX_PALETTE_MATRICES_ARB = 0x8842; + public static final int GL_CURRENT_PALETTE_MATRIX_ARB = 0x8843; + public static final int GL_MATRIX_INDEX_ARRAY_ARB = 0x8844; + public static final int GL_CURRENT_MATRIX_INDEX_ARB = 0x8845; + public static final int GL_MATRIX_INDEX_ARRAY_SIZE_ARB = 0x8846; + public static final int GL_MATRIX_INDEX_ARRAY_TYPE_ARB = 0x8847; + public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_ARB = 0x8848; + public static final int GL_MATRIX_INDEX_ARRAY_POINTER_ARB = 0x8849; + + public void glCurrentPaletteMatrixARB(int index); + + public void glMatrixIndexPointerARB(int size, @AutoType("pPointer") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @GLubyte + @GLushort + @GLuint + Buffer pPointer); + + @StripPostfix("pIndices") + public void glMatrixIndexubvARB(@AutoSize("pIndices") int size, @GLubyte ByteBuffer pIndices); + @StripPostfix("pIndices") + public void glMatrixIndexusvARB(@AutoSize("pIndices") int size, @GLushort ShortBuffer pIndices); + @StripPostfix("pIndices") + public void glMatrixIndexuivARB(@AutoSize("pIndices") int size, @GLuint IntBuffer pIndices); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_multisample.java b/src/templates/org/lwjgl/opengl/ARB_multisample.java new file mode 100644 index 00000000..14e47724 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_multisample.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +public interface ARB_multisample { + public static final int GL_MULTISAMPLE_ARB = 0x809D; + public static final int GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809E; + public static final int GL_SAMPLE_ALPHA_TO_ONE_ARB = 0x809F; + public static final int GL_SAMPLE_COVERAGE_ARB = 0x80A0; + public static final int GL_SAMPLE_BUFFERS_ARB = 0x80A8; + public static final int GL_SAMPLES_ARB = 0x80A9; + public static final int GL_SAMPLE_COVERAGE_VALUE_ARB = 0x80AA; + public static final int GL_SAMPLE_COVERAGE_INVERT_ARB = 0x80AB; + public static final int GL_MULTISAMPLE_BIT_ARB = 0x20000000; + + public void glSampleCoverageARB(@GLclampf float value, boolean invert); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_multitexture.java b/src/templates/org/lwjgl/opengl/ARB_multitexture.java new file mode 100644 index 00000000..c90867db --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_multitexture.java @@ -0,0 +1,101 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +public interface ARB_multitexture { + public static final int GL_TEXTURE0_ARB = 0x84C0; + public static final int GL_TEXTURE1_ARB = 0x84C1; + public static final int GL_TEXTURE2_ARB = 0x84C2; + public static final int GL_TEXTURE3_ARB = 0x84C3; + public static final int GL_TEXTURE4_ARB = 0x84C4; + public static final int GL_TEXTURE5_ARB = 0x84C5; + public static final int GL_TEXTURE6_ARB = 0x84C6; + public static final int GL_TEXTURE7_ARB = 0x84C7; + public static final int GL_TEXTURE8_ARB = 0x84C8; + public static final int GL_TEXTURE9_ARB = 0x84C9; + public static final int GL_TEXTURE10_ARB = 0x84CA; + public static final int GL_TEXTURE11_ARB = 0x84CB; + public static final int GL_TEXTURE12_ARB = 0x84CC; + public static final int GL_TEXTURE13_ARB = 0x84CD; + public static final int GL_TEXTURE14_ARB = 0x84CE; + public static final int GL_TEXTURE15_ARB = 0x84CF; + public static final int GL_TEXTURE16_ARB = 0x84D0; + public static final int GL_TEXTURE17_ARB = 0x84D1; + public static final int GL_TEXTURE18_ARB = 0x84D2; + public static final int GL_TEXTURE19_ARB = 0x84D3; + public static final int GL_TEXTURE20_ARB = 0x84D4; + public static final int GL_TEXTURE21_ARB = 0x84D5; + public static final int GL_TEXTURE22_ARB = 0x84D6; + public static final int GL_TEXTURE23_ARB = 0x84D7; + public static final int GL_TEXTURE24_ARB = 0x84D8; + public static final int GL_TEXTURE25_ARB = 0x84D9; + public static final int GL_TEXTURE26_ARB = 0x84DA; + public static final int GL_TEXTURE27_ARB = 0x84DB; + public static final int GL_TEXTURE28_ARB = 0x84DC; + public static final int GL_TEXTURE29_ARB = 0x84DD; + public static final int GL_TEXTURE30_ARB = 0x84DE; + public static final int GL_TEXTURE31_ARB = 0x84DF; + public static final int GL_ACTIVE_TEXTURE_ARB = 0x84E0; + public static final int GL_CLIENT_ACTIVE_TEXTURE_ARB = 0x84E1; + public static final int GL_MAX_TEXTURE_UNITS_ARB = 0x84E2; + + public void glClientActiveTextureARB(@GLenum int texture); + + public void glActiveTextureARB(@GLenum int texture); + + public void glMultiTexCoord1fARB(@GLenum int target, float s); + + public void glMultiTexCoord1iARB(@GLenum int target, int s); + + public void glMultiTexCoord1sARB(@GLenum int target, short s); + + public void glMultiTexCoord2fARB(@GLenum int target, float s, float t); + + public void glMultiTexCoord2iARB(@GLenum int target, int s, int t); + + public void glMultiTexCoord2sARB(@GLenum int target, short s, short t); + + public void glMultiTexCoord3fARB(@GLenum int target, float s, float t, float r); + + public void glMultiTexCoord3iARB(@GLenum int target, int s, int t, int r); + + public void glMultiTexCoord3sARB(@GLenum int target, short s, short t, short r); + + public void glMultiTexCoord4fARB(@GLenum int target, float s, float t, float r, float q); + + public void glMultiTexCoord4iARB(@GLenum int target, int s, int t, int r, int q); + + public void glMultiTexCoord4sARB(@GLenum int target, short s, short t, short r, short q); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_occlusion_query.java b/src/templates/org/lwjgl/opengl/ARB_occlusion_query.java new file mode 100644 index 00000000..e8673678 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_occlusion_query.java @@ -0,0 +1,77 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.IntBuffer; + +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +public interface ARB_occlusion_query { + /* + * Accepted by the parameter of BeginQueryARB, EndQueryARB, + * and GetQueryivARB: + */ + public static final int GL_SAMPLES_PASSED_ARB = 0x8914; + + /* + * Accepted by the parameter of GetQueryivARB: + */ + public static final int GL_QUERY_COUNTER_BITS_ARB = 0x8864; + public static final int GL_CURRENT_QUERY_ARB = 0x8865; + + /* + * Accepted by the parameter of GetQueryObjectivARB and + * GetQueryObjectuivARB: + */ + public static final int GL_QUERY_RESULT_ARB = 0x8866; + public static final int GL_QUERY_RESULT_AVAILABLE_ARB = 0x8867; + + public void glGenQueriesARB(@AutoSize("ids") @GLsizei int n, @GLuint IntBuffer ids); + + public void glDeleteQueriesARB(@AutoSize("ids") @GLsizei int n, @GLuint IntBuffer ids); + + public boolean glIsQueryARB(@GLuint int id); + + public void glBeginQueryARB(@GLenum int target, @GLuint int id); + + public void glEndQueryARB(@GLenum int target); + + @StripPostfix("params") + public void glGetQueryivARB(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("params") + public void glGetQueryObjectivARB(@GLuint int id, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("params") + public void glGetQueryObjectuivARB(@GLuint int id, @GLenum int pname, @Check("4") IntBuffer params); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_pixel_buffer_object.java b/src/templates/org/lwjgl/opengl/ARB_pixel_buffer_object.java new file mode 100644 index 00000000..a4585806 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_pixel_buffer_object.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_pixel_buffer_object extends ARB_buffer_object { + /* + * Accepted by the parameters of BindBuffer, BufferData, + * BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData, + * GetBufferParameteriv, and GetBufferPointerv: + */ + public static final int GL_PIXEL_PACK_BUFFER_ARB = 0x88EB; + public static final int GL_PIXEL_UNPACK_BUFFER_ARB = 0x88EC; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int PIXEL_PACK_BUFFER_BINDING_ARB = 0x88ED; + public static final int PIXEL_UNPACK_BUFFER_BINDING_ARB = 0x88EF; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_point_parameters.java b/src/templates/org/lwjgl/opengl/ARB_point_parameters.java new file mode 100644 index 00000000..3462a12a --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_point_parameters.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.FloatBuffer; + +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +public interface ARB_point_parameters { + public static final int GL_POINT_SIZE_MIN_ARB = 0x8126; + public static final int GL_POINT_SIZE_MAX_ARB = 0x8127; + public static final int GL_POINT_FADE_THRESHOLD_SIZE_ARB = 0x8128; + public static final int GL_POINT_DISTANCE_ATTENUATION_ARB = 0x8129; + + public void glPointParameterfARB(@GLenum int pname, float param); + + @StripPostfix("pfParams") + public void glPointParameterfvARB(@GLenum int pname, @Check("4") FloatBuffer pfParams); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_point_sprite.java b/src/templates/org/lwjgl/opengl/ARB_point_sprite.java new file mode 100644 index 00000000..880a5395 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_point_sprite.java @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface ARB_point_sprite { + /* + * Accepted by the parameter of Enable, Disable, and IsEnabled, by + * the parameter of GetBooleanv, GetIntegerv, GetFloatv, and + * GetDoublev, and by the parameter of TexEnvi, TexEnviv, + * TexEnvf, TexEnvfv, GetTexEnviv, and GetTexEnvfv: + */ + public static final int GL_POINT_SPRITE_ARB = 0x8861; + + /* + * When the parameter of TexEnvf, TexEnvfv, TexEnvi, TexEnviv, + * GetTexEnvfv, or GetTexEnviv is POINT_SPRITE_ARB, then the value of + * may be: + */ + public static final int GL_COORD_REPLACE_ARB = 0x8862; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_program.java b/src/templates/org/lwjgl/opengl/ARB_program.java new file mode 100644 index 00000000..c4c27afe --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_program.java @@ -0,0 +1,163 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.BufferUnderflowException; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +import org.lwjgl.BufferChecks; +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +@Extension(postfix="ARB", isFinal=false) +public interface ARB_program { + /* + * Accepted by the parameter of ProgramStringARB: + */ + public static final int GL_PROGRAM_FORMAT_ASCII_ARB = 0x8875; + + /* + * Accepted by the parameter of GetProgramivARB: + */ + public static final int GL_PROGRAM_LENGTH_ARB = 0x8627; + public static final int GL_PROGRAM_FORMAT_ARB = 0x8876; + public static final int GL_PROGRAM_BINDING_ARB = 0x8677; + public static final int GL_PROGRAM_INSTRUCTIONS_ARB = 0x88A0; + public static final int GL_MAX_PROGRAM_INSTRUCTIONS_ARB = 0x88A1; + public static final int GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A2; + public static final int GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A3; + public static final int GL_PROGRAM_TEMPORARIES_ARB = 0x88A4; + public static final int GL_MAX_PROGRAM_TEMPORARIES_ARB = 0x88A5; + public static final int GL_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A6; + public static final int GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A7; + public static final int GL_PROGRAM_PARAMETERS_ARB = 0x88A8; + public static final int GL_MAX_PROGRAM_PARAMETERS_ARB = 0x88A9; + public static final int GL_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AA; + public static final int GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AB; + public static final int GL_PROGRAM_ATTRIBS_ARB = 0x88AC; + public static final int GL_MAX_PROGRAM_ATTRIBS_ARB = 0x88AD; + public static final int GL_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AE; + public static final int GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AF; + public static final int GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = 0x88B4; + public static final int GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = 0x88B5; + public static final int GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = 0x88B6; + + /* + * Accepted by the parameter of GetProgramStringARB: + */ + public static final int GL_PROGRAM_STRING_ARB = 0x8628; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_PROGRAM_ERROR_POSITION_ARB = 0x864B; + public static final int GL_CURRENT_MATRIX_ARB = 0x8641; + public static final int GL_TRANSPOSE_CURRENT_MATRIX_ARB = 0x88B7; + public static final int GL_CURRENT_MATRIX_STACK_DEPTH_ARB = 0x8640; + public static final int GL_MAX_PROGRAM_MATRICES_ARB = 0x862F; + public static final int GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862E; + + /* + * Accepted by the parameter of GetString: + */ + public static final int GL_PROGRAM_ERROR_STRING_ARB = 0x8874; + + /* + * Accepted by the parameter of MatrixMode: + */ + public static final int GL_MATRIX0_ARB = 0x88C0; + public static final int GL_MATRIX1_ARB = 0x88C1; + public static final int GL_MATRIX2_ARB = 0x88C2; + public static final int GL_MATRIX3_ARB = 0x88C3; + public static final int GL_MATRIX4_ARB = 0x88C4; + public static final int GL_MATRIX5_ARB = 0x88C5; + public static final int GL_MATRIX6_ARB = 0x88C6; + public static final int GL_MATRIX7_ARB = 0x88C7; + public static final int GL_MATRIX8_ARB = 0x88C8; + public static final int GL_MATRIX9_ARB = 0x88C9; + public static final int GL_MATRIX10_ARB = 0x88CA; + public static final int GL_MATRIX11_ARB = 0x88CB; + public static final int GL_MATRIX12_ARB = 0x88CC; + public static final int GL_MATRIX13_ARB = 0x88CD; + public static final int GL_MATRIX14_ARB = 0x88CE; + public static final int GL_MATRIX15_ARB = 0x88CF; + public static final int GL_MATRIX16_ARB = 0x88D0; + public static final int GL_MATRIX17_ARB = 0x88D1; + public static final int GL_MATRIX18_ARB = 0x88D2; + public static final int GL_MATRIX19_ARB = 0x88D3; + public static final int GL_MATRIX20_ARB = 0x88D4; + public static final int GL_MATRIX21_ARB = 0x88D5; + public static final int GL_MATRIX22_ARB = 0x88D6; + public static final int GL_MATRIX23_ARB = 0x88D7; + public static final int GL_MATRIX24_ARB = 0x88D8; + public static final int GL_MATRIX25_ARB = 0x88D9; + public static final int GL_MATRIX26_ARB = 0x88DA; + public static final int GL_MATRIX27_ARB = 0x88DB; + public static final int GL_MATRIX28_ARB = 0x88DC; + public static final int GL_MATRIX29_ARB = 0x88DD; + public static final int GL_MATRIX30_ARB = 0x88DE; + public static final int GL_MATRIX31_ARB = 0x88DF; + + public void glProgramStringARB(@GLenum int target, @GLenum int format, @AutoSize("string") @GLsizei int length, @Const @GLbyte Buffer string); + + public void glBindProgramARB(@GLenum int target, @GLuint int program); + + public void glDeleteProgramsARB(@AutoSize("programs") @GLsizei int n, @Const @GLuint IntBuffer programs); + public void glGenProgramsARB(@AutoSize("programs") @GLsizei int n, @GLuint IntBuffer programs); + + public void glProgramEnvParameter4fARB(int target, int index, float x, float y, float z, float w); + + @StripPostfix("params") + public void glProgramEnvParameter4fvARB(@GLenum int target, @GLuint int index, @Check("4") @Const FloatBuffer params); + + public void glProgramLocalParameter4fARB(@GLenum int target, @GLuint int index, float x, float y, float z, float w); + + @StripPostfix("params") + public void glProgramLocalParameter4fvARB(@GLenum int target, @GLuint int index, @Check("4") @Const FloatBuffer params); + + @StripPostfix("params") + public void glGetProgramEnvParameterfvARB(@GLenum int target, @GLuint int index, @Check("4") FloatBuffer params); + + @StripPostfix("params") + public void glGetProgramLocalParameterfvARB(@GLenum int target, @GLuint int index, @Check("4") FloatBuffer params); + + @StripPostfix("params") + public void glGetProgramivARB(@GLenum int target, @GLenum int parameterName, @Check("4") IntBuffer params); + + public void glGetProgramStringARB(@GLenum int target, @GLenum int parameterName, @Check @GLbyte Buffer paramString); + + public boolean glIsProgramARB(@GLuint int program); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_shader_objects.java b/src/templates/org/lwjgl/opengl/ARB_shader_objects.java new file mode 100644 index 00000000..0d537ce4 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_shader_objects.java @@ -0,0 +1,227 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.BufferOverflowException; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +public interface ARB_shader_objects { + /* + * Accepted by the argument of GetHandleARB: + */ + public static final int GL_PROGRAM_OBJECT_ARB = 0x8B40; + + /* + * Accepted by the parameter of GetObjectParameter{fi}vARB: + */ + public static final int GL_OBJECT_TYPE_ARB = 0x8B4E; + public static final int GL_OBJECT_SUBTYPE_ARB = 0x8B4F; + public static final int GL_OBJECT_DELETE_STATUS_ARB = 0x8B80; + public static final int GL_OBJECT_COMPILE_STATUS_ARB = 0x8B81; + public static final int GL_OBJECT_LINK_STATUS_ARB = 0x8B82; + public static final int GL_OBJECT_VALIDATE_STATUS_ARB = 0x8B83; + public static final int GL_OBJECT_INFO_LOG_LENGTH_ARB = 0x8B84; + public static final int GL_OBJECT_ATTACHED_OBJECTS_ARB = 0x8B85; + public static final int GL_OBJECT_ACTIVE_UNIFORMS_ARB = 0x8B86; + public static final int GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = 0x8B87; + public static final int GL_OBJECT_SHADER_SOURCE_LENGTH_ARB = 0x8B88; + + /* + * Returned by the parameter of GetObjectParameter{fi}vARB: + */ + public static final int GL_SHADER_OBJECT_ARB = 0x8B48; + + /* + * Returned by the parameter of GetActiveUniformARB: + */ + public static final int GL_FLOAT = 0x1406; + public static final int GL_FLOAT_VEC2_ARB = 0x8B50; + public static final int GL_FLOAT_VEC3_ARB = 0x8B51; + public static final int GL_FLOAT_VEC4_ARB = 0x8B52; + public static final int GL_INT = 0x1404; + public static final int GL_INT_VEC2_ARB = 0x8B53; + public static final int GL_INT_VEC3_ARB = 0x8B54; + public static final int GL_INT_VEC4_ARB = 0x8B55; + public static final int GL_BOOL_ARB = 0x8B56; + public static final int GL_BOOL_VEC2_ARB = 0x8B57; + public static final int GL_BOOL_VEC3_ARB = 0x8B58; + public static final int GL_BOOL_VEC4_ARB = 0x8B59; + public static final int GL_FLOAT_MAT2_ARB = 0x8B5A; + public static final int GL_FLOAT_MAT3_ARB = 0x8B5B; + public static final int GL_FLOAT_MAT4_ARB = 0x8B5C; + public static final int GL_SAMPLER_1D_ARB = 0x8B5D; + public static final int GL_SAMPLER_2D_ARB = 0x8B5E; + public static final int GL_SAMPLER_3D_ARB = 0x8B5F; + public static final int GL_SAMPLER_CUBE_ARB = 0x8B60; + public static final int GL_SAMPLER_1D_SHADOW_ARB = 0x8B61; + public static final int GL_SAMPLER_2D_SHADOW_ARB = 0x8B62; + public static final int GL_SAMPLER_2D_RECT_ARB = 0x8B63; + public static final int GL_SAMPLER_2D_RECT_SHADOW_ARB = 0x8B64; + + public void glDeleteObjectARB(@GLhandleARB int obj); + + public @GLhandleARB int glGetHandleARB(@GLenum int pname); + + public void glDetachObjectARB(@GLhandleARB int containerObj, @GLhandleARB int attachedObj); + + public @GLhandleARB int glCreateShaderObjectARB(@GLenum int shaderType); + + /** + * The ARB_shader_objects extension allows multiple, optionally null-terminated, source strings to define a shader program. + *

+ * This method uses just a single string, that should NOT be null-terminated. + * + * @param shaderObj + * @param string + */ + public void glShaderSourceARB(@GLhandleARB int shader, @Constant("1") @GLsizei int count, + @Indirect + @Check + @Const + @GLcharARB + ByteBuffer string, + @AutoSize("string") + @Indirect + @Const + @GLint + int length); + + public void glCompileShaderARB(@GLhandleARB int shaderObj); + + public @GLhandleARB int glCreateProgramObjectARB(); + + public void glAttachObjectARB(@GLhandleARB int containerObj, @GLhandleARB int obj); + + public void glLinkProgramARB(@GLhandleARB int programObj); + + public void glUseProgramObjectARB(@GLhandleARB int programObj); + + public void glValidateProgramARB(@GLhandleARB int programObj); + + public void glUniform1fARB(int location, float v0); + + public void glUniform2fARB(int location, float v0, float v1); + + public void glUniform3fARB(int location, float v0, float v1, float v2); + + public void glUniform4fARB(int location, float v0, float v1, float v2, float v3); + + public void glUniform1iARB(int location, int v0); + + public void glUniform2iARB(int location, int v0, int v1); + + public void glUniform3iARB(int location, int v0, int v1, int v2); + + public void glUniform4iARB(int location, int v0, int v1, int v2, int v3); + + @StripPostfix("values") + public void glUniform1fvARB(int location, @AutoSize("values") @GLsizei int count, FloatBuffer values); + @StripPostfix("values") + public void glUniform2fvARB(int location, @AutoSize(value="values", expression=" >> 1") @GLsizei int count, FloatBuffer values); + @StripPostfix("values") + public void glUniform3fvARB(int location, @AutoSize(value="values", expression=" / 3") @GLsizei int count, FloatBuffer values); + @StripPostfix("values") + public void glUniform4fvARB(int location, @AutoSize(value="values", expression=" >> 2") @GLsizei int count, FloatBuffer values); + + @StripPostfix("values") + public void glUniform1ivARB(int location, @AutoSize(value="values") @GLsizei int count, IntBuffer values); + @StripPostfix("values") + public void glUniform2ivARB(int location, @AutoSize(value="values", expression=" >> 1") @GLsizei int count, IntBuffer values); + @StripPostfix("values") + public void glUniform3ivARB(int location, @AutoSize(value="values", expression=" / 3") @GLsizei int count, IntBuffer values); + @StripPostfix("values") + public void glUniform4ivARB(int location, @AutoSize(value="values", expression=" >> 2") @GLsizei int count, IntBuffer values); + + @StripPostfix("matrices") + public void glUniformMatrix2fvARB(int location, @AutoSize(value="matrices", expression=" >> 2") @GLsizei int count, boolean transpose, FloatBuffer matrices); + @StripPostfix("matrices") + public void glUniformMatrix3fvARB(int location, @AutoSize(value="matrices", expression=" / (3 * 3)") @GLsizei int count, boolean transpose, FloatBuffer matrices); + @StripPostfix("matrices") + public void glUniformMatrix4fvARB(int location, @AutoSize(value="matrices", expression=" >> 4") @GLsizei int count, boolean transpose, FloatBuffer matrices); + + @StripPostfix("params") + public void glGetObjectParameterfvARB(@GLhandleARB int obj, @GLenum int pname, @Check FloatBuffer params); + @StripPostfix("params") + public void glGetObjectParameterivARB(@GLhandleARB int obj, @GLenum int pname, @Check IntBuffer params); + + public void glGetInfoLogARB(@GLhandleARB int obj, @AutoSize("infoLog") @GLsizei int maxLength, + @Check(value="1", canBeNull=true) + @GLsizei IntBuffer length, + @GLcharARB + ByteBuffer infoLog); + + public void glGetAttachedObjectsARB(@GLhandleARB int containerObj, @AutoSize("obj") @GLsizei int maxCount, + @Check(value="1", canBeNull=true) + @GLsizei + IntBuffer count, + @GLhandleARB + IntBuffer obj); + + /** + * Returns the location of the uniform with the specified name. The ByteBuffer should contain the uniform name as a null-terminated string. + * + * @param programObj + * @param name + * + * @return + */ + public int glGetUniformLocationARB(@GLhandleARB int programObj, @NullTerminated @Const @GLcharARB ByteBuffer name); + + public void glGetActiveUniformARB(@GLhandleARB int programObj, @GLuint int index, @AutoSize("name") @GLsizei int maxLength, + @Check(value="1", canBeNull=true) + @GLsizei + IntBuffer length, + @Check("1") + IntBuffer size, + @Check("1") + @GLenum + IntBuffer type, + @GLcharARB + ByteBuffer name); + + @StripPostfix("params") + public void glGetUniformfvARB(@GLhandleARB int programObj, int location, @Check FloatBuffer params); + @StripPostfix("params") + public void glGetUniformivARB(@GLhandleARB int programObj, int location, @Check IntBuffer params); + + public void glGetShaderSourceARB(@GLhandleARB int obj, @AutoSize("source") @GLsizei int maxLength, + @Check(value="1", canBeNull=true) + @GLsizei + IntBuffer length, + @GLcharARB + ByteBuffer source); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_shading_language_100.java b/src/templates/org/lwjgl/opengl/ARB_shading_language_100.java new file mode 100644 index 00000000..868d8d8f --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_shading_language_100.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_shading_language_100 { + /** + * Accepted by the parameter of GetString: + */ + public static final int GL_SHADING_LANGUAGE_VERSION_ARB = 0x8B8C; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_shadow.java b/src/templates/org/lwjgl/opengl/ARB_shadow.java new file mode 100644 index 00000000..8a98e72b --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_shadow.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_shadow { + public static final int GL_TEXTURE_COMPARE_MODE_ARB = 0x884C; + public static final int GL_TEXTURE_COMPARE_FUNC_ARB = 0x884D; + public static final int GL_COMPARE_R_TO_TEXTURE_ARB = 0x884E; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_shadow_ambient.java b/src/templates/org/lwjgl/opengl/ARB_shadow_ambient.java new file mode 100644 index 00000000..85a467f6 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_shadow_ambient.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_shadow_ambient { + public static final int GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = 0x80BF; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_texture_border_clamp.java b/src/templates/org/lwjgl/opengl/ARB_texture_border_clamp.java new file mode 100644 index 00000000..93a389aa --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_texture_border_clamp.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_texture_border_clamp { + public static final int GL_CLAMP_TO_BORDER_ARB = 0x812D; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_texture_compression.java b/src/templates/org/lwjgl/opengl/ARB_texture_compression.java new file mode 100644 index 00000000..bbe176b2 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_texture_compression.java @@ -0,0 +1,125 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; +import org.lwjgl.generator.*; + +public interface ARB_texture_compression { + public static final int GL_COMPRESSED_ALPHA_ARB = 0x84E9; + public static final int GL_COMPRESSED_LUMINANCE_ARB = 0x84EA; + public static final int GL_COMPRESSED_LUMINANCE_ALPHA_ARB = 0x84EB; + public static final int GL_COMPRESSED_INTENSITY_ARB = 0x84EC; + public static final int GL_COMPRESSED_RGB_ARB = 0x84ED; + public static final int GL_COMPRESSED_RGBA_ARB = 0x84EE; + public static final int GL_TEXTURE_COMPRESSION_HINT_ARB = 0x84EF; + public static final int GL_TEXTURE_IMAGE_SIZE_ARB = 0x86A0; + public static final int GL_TEXTURE_COMPRESSED_ARB = 0x86A1; + public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A2; + public static final int GL_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A3; + + public void glCompressedTexImage1DARB(@GLenum int target, int level, @GLenum int internalformat, @GLsizei int width, int border, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pData); + + public void glCompressedTexImage2DARB(@GLenum int target, int level, @GLenum int internalformat, @GLsizei int width, @GLsizei int height, int border, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pData); + + public void glCompressedTexImage3DARB(@GLenum int target, int level, @GLenum int internalformat, @GLsizei int width, @GLsizei int height, @GLsizei int depth, int border, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pData); + + public void glCompressedTexSubImage1DARB(@GLenum int target, int level, int xoffset, @GLsizei int width, @GLenum int format, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pData); + + public void glCompressedTexSubImage2DARB(@GLenum int target, int level, int xoffset, int yoffset, @GLsizei int width, @GLsizei int height, @GLenum int format, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pData); + + public void glCompressedTexSubImage3DARB(@GLenum int target, int level, int xoffset, int yoffset, int zoffset, @GLsizei int width, @GLsizei int height, @GLsizei int depth, @GLenum int format, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pData); + + public void glGetCompressedTexImageARB(@GLenum int target, int lod, + @BufferObject(BufferKind.PackPBO) + @Check + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pImg); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_texture_cube_map.java b/src/templates/org/lwjgl/opengl/ARB_texture_cube_map.java new file mode 100644 index 00000000..5fb7833a --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_texture_cube_map.java @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_texture_cube_map { + public static final int GL_NORMAL_MAP_ARB = 0x8511; + public static final int GL_REFLECTION_MAP_ARB = 0x8512; + public static final int GL_TEXTURE_CUBE_MAP_ARB = 0x8513; + public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARB = 0x8514; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x8515; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = 0x8516; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x8517; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x8518; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = 0x8519; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x851A; + public static final int GL_PROXY_TEXTURE_CUBE_MAP_ARB = 0x851B; + public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = 0x851C; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_texture_env_combine.java b/src/templates/org/lwjgl/opengl/ARB_texture_env_combine.java new file mode 100644 index 00000000..52e2e38e --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_texture_env_combine.java @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_texture_env_combine { + public static final int GL_COMBINE_ARB = 0x8570; + public static final int GL_COMBINE_RGB_ARB = 0x8571; + public static final int GL_COMBINE_ALPHA_ARB = 0x8572; + public static final int GL_RGB_SCALE_ARB = 0x8573; + public static final int GL_ADD_SIGNED_ARB = 0x8574; + public static final int GL_INTERPOLATE_ARB = 0x8575; + public static final int GL_CONSTANT_ARB = 0x8576; + public static final int GL_PRIMARY_COLOR_ARB = 0x8577; + public static final int GL_PREVIOUS_ARB = 0x8578; + public static final int GL_SOURCE0_RGB_ARB = 0x8580; + public static final int GL_SOURCE1_RGB_ARB = 0x8581; + public static final int GL_SOURCE2_RGB_ARB = 0x8582; + public static final int GL_SOURCE0_ALPHA_ARB = 0x8588; + public static final int GL_SOURCE1_ALPHA_ARB = 0x8589; + public static final int GL_SOURCE2_ALPHA_ARB = 0x858A; + public static final int GL_OPERAND0_RGB_ARB = 0x8590; + public static final int GL_OPERAND1_RGB_ARB = 0x8591; + public static final int GL_OPERAND2_RGB_ARB = 0x8592; + public static final int GL_OPERAND0_ALPHA_ARB = 0x8598; + public static final int GL_OPERAND1_ALPHA_ARB = 0x8599; + public static final int GL_OPERAND2_ALPHA_ARB = 0x859A; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_texture_env_dot3.java b/src/templates/org/lwjgl/opengl/ARB_texture_env_dot3.java new file mode 100644 index 00000000..f981e306 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_texture_env_dot3.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_texture_env_dot3 { + public static final int GL_DOT3_RGB_ARB = 0x86AE; + public static final int GL_DOT3_RGBA_ARB = 0x86AF; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_texture_float.java b/src/templates/org/lwjgl/opengl/ARB_texture_float.java new file mode 100644 index 00000000..3a3e0853 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_texture_float.java @@ -0,0 +1,67 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_texture_float { + /* + * Accepted by the parameter of GetTexLevelParameter: + */ + public static final int TEXTURE_RED_TYPE_ARB = 0x8C10; + public static final int TEXTURE_GREEN_TYPE_ARB = 0x8C11; + public static final int TEXTURE_BLUE_TYPE_ARB = 0x8C12; + public static final int TEXTURE_ALPHA_TYPE_ARB = 0x8C13; + public static final int TEXTURE_LUMINANCE_TYPE_ARB = 0x8C14; + public static final int TEXTURE_INTENSITY_TYPE_ARB = 0x8C15; + public static final int TEXTURE_DEPTH_TYPE_ARB = 0x8C16; + + /* + * Returned by the parameter of GetTexLevelParameter: + */ + public static final int UNSIGNED_NORMALIZED_ARB = 0x8C17; + + /* + * Accepted by the parameter of TexImage1D, + * TexImage2D, and TexImage3D: + */ + public static final int RGBA32F_ARB = 0x8814; + public static final int RGB32F_ARB = 0x8815; + public static final int ALPHA32F_ARB = 0x8816; + public static final int INTENSITY32F_ARB = 0x8817; + public static final int LUMINANCE32F_ARB = 0x8818; + public static final int LUMINANCE_ALPHA32F_ARB = 0x8819; + public static final int RGBA16F_ARB = 0x881A; + public static final int RGB16F_ARB = 0x881B; + public static final int ALPHA16F_ARB = 0x881C; + public static final int INTENSITY16F_ARB = 0x881D; + public static final int LUMINANCE16F_ARB = 0x881E; + public static final int LUMINANCE_ALPHA16F_ARB = 0x881F; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_texture_mirrored_repeat.java b/src/templates/org/lwjgl/opengl/ARB_texture_mirrored_repeat.java new file mode 100644 index 00000000..21049c70 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_texture_mirrored_repeat.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_texture_mirrored_repeat { + public static final int GL_MIRRORED_REPEAT_ARB = 0x8370; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_texture_rectangle.java b/src/templates/org/lwjgl/opengl/ARB_texture_rectangle.java new file mode 100644 index 00000000..b75da7bd --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_texture_rectangle.java @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_texture_rectangle { + /* + * Accepted by the parameter of Enable, Disable and + * IsEnabled; by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv and GetDoublev; and by the parameter of + * BindTexture, GetTexParameterfv, GetTexParameteriv, + * TexParameterf, TexParameteri, TexParameterfv and TexParameteriv: + + * Accepted by the parameter of GetTexImage, + * GetTexLevelParameteriv, GetTexLevelParameterfv, TexImage2D, + * CopyTexImage2D, TexSubImage2D and CopySubTexImage2D: + */ + public static final int GL_TEXTURE_RECTANGLE_ARB = 0x84F5; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv and GetDoublev: + */ + public static final int GL_TEXTURE_BINDING_RECTANGLE_ARB = 0x84F6; + + /* + * Accepted by the parameter of GetTexLevelParameteriv, + * GetTexLevelParameterfv, GetTexParameteriv and TexImage2D: + */ + public static final int GL_PROXY_TEXTURE_RECTANGLE_ARB = 0x84F7; + + /* + * Accepted by the parameter of GetBooleanv, GetDoublev, + * GetIntegerv and GetFloatv: + */ + public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB = 0x84F8; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_transpose_matrix.java b/src/templates/org/lwjgl/opengl/ARB_transpose_matrix.java new file mode 100644 index 00000000..48c80e3f --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_transpose_matrix.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.FloatBuffer; + +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +public interface ARB_transpose_matrix { + public static final int GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84E3; + public static final int GL_TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84E4; + public static final int GL_TRANSPOSE_TEXTURE_MATRIX_ARB = 0x84E5; + public static final int GL_TRANSPOSE_COLOR_MATRIX_ARB = 0x84E6; + + @StripPostfix("pfMtx") + public void glLoadTransposeMatrixfARB(@Check("16") FloatBuffer pfMtx); + @StripPostfix("pfMtx") + public void glMultTransposeMatrixfARB(@Check("16") FloatBuffer pfMtx); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_vertex_blend.java b/src/templates/org/lwjgl/opengl/ARB_vertex_blend.java new file mode 100644 index 00000000..539d1431 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_vertex_blend.java @@ -0,0 +1,117 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +public interface ARB_vertex_blend { + public static final int GL_MAX_VERTEX_UNITS_ARB = 0x86A4; + public static final int GL_ACTIVE_VERTEX_UNITS_ARB = 0x86A5; + public static final int GL_WEIGHT_SUM_UNITY_ARB = 0x86A6; + public static final int GL_VERTEX_BLEND_ARB = 0x86A7; + public static final int GL_CURRENT_WEIGHT_ARB = 0x86A8; + public static final int GL_WEIGHT_ARRAY_TYPE_ARB = 0x86A9; + public static final int GL_WEIGHT_ARRAY_STRIDE_ARB = 0x86AA; + public static final int GL_WEIGHT_ARRAY_SIZE_ARB = 0x86AB; + public static final int GL_WEIGHT_ARRAY_POINTER_ARB = 0x86AC; + public static final int GL_WEIGHT_ARRAY_ARB = 0x86AD; + public static final int GL_MODELVIEW0_ARB = 0x1700; + public static final int GL_MODELVIEW1_ARB = 0x850a; + public static final int GL_MODELVIEW2_ARB = 0x8722; + public static final int GL_MODELVIEW3_ARB = 0x8723; + public static final int GL_MODELVIEW4_ARB = 0x8724; + public static final int GL_MODELVIEW5_ARB = 0x8725; + public static final int GL_MODELVIEW6_ARB = 0x8726; + public static final int GL_MODELVIEW7_ARB = 0x8727; + public static final int GL_MODELVIEW8_ARB = 0x8728; + public static final int GL_MODELVIEW9_ARB = 0x8729; + public static final int GL_MODELVIEW10_ARB = 0x872A; + public static final int GL_MODELVIEW11_ARB = 0x872B; + public static final int GL_MODELVIEW12_ARB = 0x872C; + public static final int GL_MODELVIEW13_ARB = 0x872D; + public static final int GL_MODELVIEW14_ARB = 0x872E; + public static final int GL_MODELVIEW15_ARB = 0x872F; + public static final int GL_MODELVIEW16_ARB = 0x8730; + public static final int GL_MODELVIEW17_ARB = 0x8731; + public static final int GL_MODELVIEW18_ARB = 0x8732; + public static final int GL_MODELVIEW19_ARB = 0x8733; + public static final int GL_MODELVIEW20_ARB = 0x8734; + public static final int GL_MODELVIEW21_ARB = 0x8735; + public static final int GL_MODELVIEW22_ARB = 0x8736; + public static final int GL_MODELVIEW23_ARB = 0x8737; + public static final int GL_MODELVIEW24_ARB = 0x8738; + public static final int GL_MODELVIEW25_ARB = 0x8739; + public static final int GL_MODELVIEW26_ARB = 0x873A; + public static final int GL_MODELVIEW27_ARB = 0x873B; + public static final int GL_MODELVIEW28_ARB = 0x873C; + public static final int GL_MODELVIEW29_ARB = 0x873D; + public static final int GL_MODELVIEW30_ARB = 0x873E; + public static final int GL_MODELVIEW31_ARB = 0x873F; + + @StripPostfix("pWeights") + public void glWeightbvARB(@AutoSize("pWeights") int size, ByteBuffer pWeights); + @StripPostfix("pWeights") + public void glWeightsvARB(@AutoSize("pWeights") int size, ShortBuffer pWeights); + @StripPostfix("pWeights") + public void glWeightivARB(@AutoSize("pWeights") int size, IntBuffer pWeights); + @StripPostfix("pWeights") + public void glWeightfvARB(@AutoSize("pWeights") int size, FloatBuffer pWeights); + + @StripPostfix("pWeights") + public void glWeightubvARB(@AutoSize("pWeights") int size, @GLubyte ByteBuffer pWeights); + @StripPostfix("pWeights") + public void glWeightusvARB(@AutoSize("pWeights") int size, @GLushort ShortBuffer pWeights); + @StripPostfix("pWeights") + public void glWeightuivARB(@AutoSize("pWeights") int size, @GLuint IntBuffer pWeights); + + public void glWeightPointerARB(int size, @AutoType("pPointer") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLbyte + @GLubyte + @GLshort + @GLushort + @GLint + @GLuint + @GLfloat + Buffer pPointer); + + public void glVertexBlendARB(int count); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_vertex_buffer_object.java b/src/templates/org/lwjgl/opengl/ARB_vertex_buffer_object.java new file mode 100644 index 00000000..f918ddc3 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_vertex_buffer_object.java @@ -0,0 +1,64 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ARB_vertex_buffer_object extends ARB_buffer_object { + /* + * Accepted by the parameters of BindBufferARB, BufferDataARB, + * BufferSubDataARB, MapBufferARB, UnmapBufferARB, + * GetBufferSubDataARB, GetBufferParameterivARB, and + * GetBufferPointervARB: + */ + public static final int GL_ARRAY_BUFFER_ARB = 0x8892; + public static final int GL_ELEMENT_ARRAY_BUFFER_ARB = 0x8893; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_ARRAY_BUFFER_BINDING_ARB = 0x8894; + public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB = 0x8895; + public static final int GL_VERTEX_ARRAY_BUFFER_BINDING_ARB = 0x8896; + public static final int GL_NORMAL_ARRAY_BUFFER_BINDING_ARB = 0x8897; + public static final int GL_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x8898; + public static final int GL_INDEX_ARRAY_BUFFER_BINDING_ARB = 0x8899; + public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = 0x889A; + public static final int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = 0x889B; + public static final int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x889C; + public static final int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = 0x889D; + public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB = 0x889E; + + /* + * Accepted by the parameter of GetVertexAttribivARB: + */ + public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = 0x889F; +} diff --git a/src/templates/org/lwjgl/opengl/ARB_vertex_program.java b/src/templates/org/lwjgl/opengl/ARB_vertex_program.java new file mode 100644 index 00000000..ef476a32 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_vertex_program.java @@ -0,0 +1,134 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +public interface ARB_vertex_program extends ARB_program { + /* + * Accepted by the parameter of Disable, Enable, and IsEnabled, by the + * parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev, + * and by the parameter of ProgramStringARB, BindProgramARB, + * ProgramEnvParameter4[df][v]ARB, ProgramLocalParameter4[df][v]ARB, + * GetProgramEnvParameter[df]vARB, GetProgramLocalParameter[df]vARB, + * GetProgramivARB, and GetProgramStringARB. + */ + public static final int GL_VERTEX_PROGRAM_ARB = 0x8620; + + /* + * Accepted by the parameter of Disable, Enable, and IsEnabled, and by + * the parameter of GetBooleanv, GetIntegerv, GetFloatv, and + * GetDoublev: + */ + public static final int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642; + public static final int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643; + public static final int GL_COLOR_SUM_ARB = 0x8458; + + /* + * Accepted by the parameter of GetVertexAttrib[dfi]vARB: + */ + public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622; + public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623; + public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624; + public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625; + public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A; + public static final int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626; + + /* + * Accepted by the parameter of GetVertexAttribPointervARB: + */ + public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645; + + /* + * Accepted by the parameter of GetProgramivARB: + */ + public static final int GL_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B0; + public static final int GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B1; + public static final int GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B2; + public static final int GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B3; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869; + + public void glVertexAttrib1sARB(@GLuint int index, short x); + + public void glVertexAttrib1fARB(@GLuint int index, float x); + + public void glVertexAttrib2sARB(@GLuint int index, short x, short y); + + public void glVertexAttrib2fARB(@GLuint int index, float x, float y); + + public void glVertexAttrib3sARB(@GLuint int index, short x, short y, short z); + + public void glVertexAttrib3fARB(@GLuint int index, float x, float y, float z); + + public void glVertexAttrib4sARB(@GLuint int index, short x, short y, short z, short w); + + public void glVertexAttrib4fARB(@GLuint int index, float x, float y, float z, float w); + + public void glVertexAttrib4NubARB(@GLuint int index, @GLubyte byte x, @GLubyte byte y, @GLubyte byte z, @GLubyte byte w); + + public void glVertexAttribPointerARB(@GLuint int index, int size, @AutoType("buffer") @GLenum int type, boolean normalized, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLbyte + @GLubyte + @GLshort + @GLushort + @GLint + @GLuint + @GLfloat + Buffer buffer); + + public void glEnableVertexAttribArrayARB(@GLuint int index); + + public void glDisableVertexAttribArrayARB(@GLuint int index); + + @StripPostfix("params") + public void glGetVertexAttribfvARB(@GLuint int index, @GLenum int pname, @Check FloatBuffer params); + @StripPostfix("params") + public void glGetVertexAttribivARB(@GLuint int index, @GLenum int pname, @Check IntBuffer params); + + @StripPostfix("result") + public void glGetVertexAttribPointervARB(@GLuint int index, @GLenum int pname, @Result @GLvoid ByteBuffer result); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_vertex_shader.java b/src/templates/org/lwjgl/opengl/ARB_vertex_shader.java new file mode 100644 index 00000000..744dae59 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_vertex_shader.java @@ -0,0 +1,118 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +import org.lwjgl.LWJGLException; +import org.lwjgl.generator.*; + +public interface ARB_vertex_shader { + /* + * Accepted by the argument of CreateShaderObjectARB and + * returned by the parameter of GetObjectParameter{if}vARB: + */ + public static final int GL_VERTEX_SHADER_ARB = 0x8B31; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB = 0x8B4A; + public static final int GL_MAX_VARYING_FLOATS_ARB = 0x8B4B; + public static final int GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869; + public static final int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; + public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8B4C; + public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = 0x8B4D; + public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; + + /* + * Accepted by the parameter of Disable, Enable, and IsEnabled, and + * by the parameter of GetBooleanv, GetIntegerv, GetFloatv, and + * GetDoublev: + */ + public static final int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642; + public static final int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643; + + /* + * Accepted by the parameter GetObjectParameter{if}vARB: + */ + public static final int GL_OBJECT_ACTIVE_ATTRIBUTES_ARB = 0x8B89; + public static final int GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = 0x8B8A; + + /* + * Accepted by the parameter of GetVertexAttrib{dfi}vARB: + */ + public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622; + public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623; + public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624; + public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625; + public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A; + public static final int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626; + + /* + * Accepted by the parameter of GetVertexAttribPointervARB: + */ + public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645; + + /* + * Returned by the parameter of GetActiveAttribARB: + */ + public static final int GL_FLOAT = 0x1406; + public static final int GL_FLOAT_VEC2_ARB = 0x8B50; + public static final int GL_FLOAT_VEC3_ARB = 0x8B51; + public static final int GL_FLOAT_VEC4_ARB = 0x8B52; + public static final int GL_FLOAT_MAT2_ARB = 0x8B5A; + public static final int GL_FLOAT_MAT3_ARB = 0x8B5B; + public static final int GL_FLOAT_MAT4_ARB = 0x8B5C; + + public void glBindAttribLocationARB(@GLhandleARB int programObj, @GLuint int index, @NullTerminated @Const @GLcharARB ByteBuffer name); + + // --------------------------- + public void glGetActiveAttribARB(@GLhandleARB int programObj, @GLuint int index, + @AutoSize("name") + @GLsizei + int maxLength, + @Check(value="1", canBeNull=true) + @GLsizei + IntBuffer length, + @Check("1") + IntBuffer size, + @Check("1") + @GLenum + IntBuffer type, + @GLcharARB + ByteBuffer name); + + public int glGetAttribLocationARB(@GLhandleARB int programObj, @NullTerminated @Const @GLcharARB ByteBuffer name); +} diff --git a/src/templates/org/lwjgl/opengl/ARB_window_pos.java b/src/templates/org/lwjgl/opengl/ARB_window_pos.java new file mode 100644 index 00000000..7a6df852 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ARB_window_pos.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.LWJGLException; + +public interface ARB_window_pos { + + public void glWindowPos2fARB(float x, float y); + + public void glWindowPos2iARB(int x, int y); + + public void glWindowPos2sARB(short x, short y); + + public void glWindowPos3fARB(float x, float y, float z); + + public void glWindowPos3iARB(int x, int y, int z); + + public void glWindowPos3sARB(short x, short y, short z); +} diff --git a/src/templates/org/lwjgl/opengl/ATI_draw_buffers.java b/src/templates/org/lwjgl/opengl/ATI_draw_buffers.java new file mode 100644 index 00000000..cdb810ee --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_draw_buffers.java @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; + +public interface ATI_draw_buffers { + /* + * Accepted by the parameters of GetIntegerv, GetFloatv, + * and GetDoublev: + */ + public static final int GL_MAX_DRAW_BUFFERS_ATI = 0x8824; + public static final int GL_DRAW_BUFFER0_ATI = 0x8825; + public static final int GL_DRAW_BUFFER1_ATI = 0x8826; + public static final int GL_DRAW_BUFFER2_ATI = 0x8827; + public static final int GL_DRAW_BUFFER3_ATI = 0x8828; + public static final int GL_DRAW_BUFFER4_ATI = 0x8829; + public static final int GL_DRAW_BUFFER5_ATI = 0x882A; + public static final int GL_DRAW_BUFFER6_ATI = 0x882B; + public static final int GL_DRAW_BUFFER7_ATI = 0x882C; + public static final int GL_DRAW_BUFFER8_ATI = 0x882D; + public static final int GL_DRAW_BUFFER9_ATI = 0x882E; + public static final int GL_DRAW_BUFFER10_ATI = 0x882F; + public static final int GL_DRAW_BUFFER11_ATI = 0x8830; + public static final int GL_DRAW_BUFFER12_ATI = 0x8831; + public static final int GL_DRAW_BUFFER13_ATI = 0x8832; + public static final int GL_DRAW_BUFFER14_ATI = 0x8833; + public static final int GL_DRAW_BUFFER15_ATI = 0x8834; + + public void glDrawBuffersATI(@AutoSize("buffers") @GLsizei int size, @Const @GLenum IntBuffer buffers); +} diff --git a/src/templates/org/lwjgl/opengl/ATI_element_array.java b/src/templates/org/lwjgl/opengl/ATI_element_array.java new file mode 100644 index 00000000..92573beb --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_element_array.java @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.generator.*; + +public interface ATI_element_array { + public static final int GL_ELEMENT_ARRAY_ATI = 0x8768; + public static final int GL_ELEMENT_ARRAY_TYPE_ATI = 0x8769; + public static final int GL_ELEMENT_ARRAY_POINTER_ATI = 0x876A; + + public void glElementPointerATI(@AutoType("pPointer") @GLenum int type, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLubyte + @GLushort + @GLuint + Buffer pPointer); + + public void glDrawElementArrayATI(@GLenum int mode, @GLsizei int count); + + public void glDrawRangeElementArrayATI(@GLenum int mode, @GLuint int start, @GLuint int end, @GLsizei int count); +} diff --git a/src/templates/org/lwjgl/opengl/ATI_envmap_bumpmap.java b/src/templates/org/lwjgl/opengl/ATI_envmap_bumpmap.java new file mode 100644 index 00000000..fb34c7ff --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_envmap_bumpmap.java @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; + +public interface ATI_envmap_bumpmap { + public static final int GL_BUMP_ROT_MATRIX_ATI = 0x8775; + public static final int GL_BUMP_ROT_MATRIX_SIZE_ATI = 0x8776; + public static final int GL_BUMP_NUM_TEX_UNITS_ATI = 0x8777; + public static final int GL_BUMP_TEX_UNITS_ATI = 0x8778; + public static final int GL_DUDV_ATI = 0x8779; + public static final int GL_DU8DV8_ATI = 0x877A; + public static final int GL_BUMP_ENVMAP_ATI = 0x877B; + public static final int GL_BUMP_TARGET_ATI = 0x877C; + + @StripPostfix("param") + public void glTexBumpParameterfvATI(@GLenum int pname, @Check("4") FloatBuffer param); + @StripPostfix("param") + public void glTexBumpParameterivATI(@GLenum int pname, @Check("4") IntBuffer param); + + @StripPostfix("param") + public void glGetTexBumpParameterfvATI(@GLenum int pname, @Check("4") FloatBuffer param); + @StripPostfix("param") + public void glGetTexBumpParameterivATI(@GLenum int pname, @Check("4") IntBuffer param); +} diff --git a/src/templates/org/lwjgl/opengl/ATI_fragment_shader.java b/src/templates/org/lwjgl/opengl/ATI_fragment_shader.java new file mode 100644 index 00000000..b1037f9d --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_fragment_shader.java @@ -0,0 +1,177 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + * Note: 2X_BIT_ATI, 4X_BIT_ATI and 8X_BIT_ATI has been changed to X2_BIT_ATI, X4_BIT_ATI and X8_BIT_ATI + * because variables cannot start with a number. + * + */ +package org.lwjgl.opengl; + +import java.nio.FloatBuffer; + +import org.lwjgl.generator.*; + +public interface ATI_fragment_shader { + public static final int GL_FRAGMENT_SHADER_ATI = 0x8920; + public static final int GL_REG_0_ATI = 0x8921; + public static final int GL_REG_1_ATI = 0x8922; + public static final int GL_REG_2_ATI = 0x8923; + public static final int GL_REG_3_ATI = 0x8924; + public static final int GL_REG_4_ATI = 0x8925; + public static final int GL_REG_5_ATI = 0x8926; + public static final int GL_REG_6_ATI = 0x8927; + public static final int GL_REG_7_ATI = 0x8928; + public static final int GL_REG_8_ATI = 0x8929; + public static final int GL_REG_9_ATI = 0x892A; + public static final int GL_REG_10_ATI = 0x892B; + public static final int GL_REG_11_ATI = 0x892C; + public static final int GL_REG_12_ATI = 0x892D; + public static final int GL_REG_13_ATI = 0x892E; + public static final int GL_REG_14_ATI = 0x892F; + public static final int GL_REG_15_ATI = 0x8930; + public static final int GL_REG_16_ATI = 0x8931; + public static final int GL_REG_17_ATI = 0x8932; + public static final int GL_REG_18_ATI = 0x8933; + public static final int GL_REG_19_ATI = 0x8934; + public static final int GL_REG_20_ATI = 0x8935; + public static final int GL_REG_21_ATI = 0x8936; + public static final int GL_REG_22_ATI = 0x8937; + public static final int GL_REG_23_ATI = 0x8938; + public static final int GL_REG_24_ATI = 0x8939; + public static final int GL_REG_25_ATI = 0x893A; + public static final int GL_REG_26_ATI = 0x893B; + public static final int GL_REG_27_ATI = 0x893C; + public static final int GL_REG_28_ATI = 0x893D; + public static final int GL_REG_29_ATI = 0x893E; + public static final int GL_REG_30_ATI = 0x893F; + public static final int GL_REG_31_ATI = 0x8940; + public static final int GL_CON_0_ATI = 0x8941; + public static final int GL_CON_1_ATI = 0x8942; + public static final int GL_CON_2_ATI = 0x8943; + public static final int GL_CON_3_ATI = 0x8944; + public static final int GL_CON_4_ATI = 0x8945; + public static final int GL_CON_5_ATI = 0x8946; + public static final int GL_CON_6_ATI = 0x8947; + public static final int GL_CON_7_ATI = 0x8948; + public static final int GL_CON_8_ATI = 0x8949; + public static final int GL_CON_9_ATI = 0x894A; + public static final int GL_CON_10_ATI = 0x894B; + public static final int GL_CON_11_ATI = 0x894C; + public static final int GL_CON_12_ATI = 0x894D; + public static final int GL_CON_13_ATI = 0x894E; + public static final int GL_CON_14_ATI = 0x894F; + public static final int GL_CON_15_ATI = 0x8950; + public static final int GL_CON_16_ATI = 0x8951; + public static final int GL_CON_17_ATI = 0x8952; + public static final int GL_CON_18_ATI = 0x8953; + public static final int GL_CON_19_ATI = 0x8954; + public static final int GL_CON_20_ATI = 0x8955; + public static final int GL_CON_21_ATI = 0x8956; + public static final int GL_CON_22_ATI = 0x8957; + public static final int GL_CON_23_ATI = 0x8958; + public static final int GL_CON_24_ATI = 0x8959; + public static final int GL_CON_25_ATI = 0x895A; + public static final int GL_CON_26_ATI = 0x895B; + public static final int GL_CON_27_ATI = 0x895C; + public static final int GL_CON_28_ATI = 0x895D; + public static final int GL_CON_29_ATI = 0x895E; + public static final int GL_CON_30_ATI = 0x895F; + public static final int GL_CON_31_ATI = 0x8960; + public static final int GL_MOV_ATI = 0x8961; + public static final int GL_ADD_ATI = 0x8963; + public static final int GL_MUL_ATI = 0x8964; + public static final int GL_SUB_ATI = 0x8965; + public static final int GL_DOT3_ATI = 0x8966; + public static final int GL_DOT4_ATI = 0x8967; + public static final int GL_MAD_ATI = 0x8968; + public static final int GL_LERP_ATI = 0x8969; + public static final int GL_CND_ATI = 0x896A; + public static final int GL_CND0_ATI = 0x896B; + public static final int GL_DOT2_ADD_ATI = 0x896C; + public static final int GL_SECONDARY_INTERPOLATOR_ATI = 0x896D; + public static final int GL_NUM_FRAGMENT_REGISTERS_ATI = 0x896E; + public static final int GL_NUM_FRAGMENT_CONSTANTS_ATI = 0x896F; + public static final int GL_NUM_PASSES_ATI = 0x8970; + public static final int GL_NUM_INSTRUCTIONS_PER_PASS_ATI = 0x8971; + public static final int GL_NUM_INSTRUCTIONS_TOTAL_ATI = 0x8972; + public static final int GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI = 0x8973; + public static final int GL_NUM_LOOPBACK_COMPONENTS_ATI = 0x8974; + public static final int GL_COLOR_ALPHA_PAIRING_ATI = 0x8975; + public static final int GL_SWIZZLE_STR_ATI = 0x8976; + public static final int GL_SWIZZLE_STQ_ATI = 0x8977; + public static final int GL_SWIZZLE_STR_DR_ATI = 0x8978; + public static final int GL_SWIZZLE_STQ_DQ_ATI = 0x8979; + public static final int GL_SWIZZLE_STRQ_ATI = 0x897A; + public static final int GL_SWIZZLE_STRQ_DQ_ATI = 0x897B; + public static final int GL_RED_BIT_ATI = 0x00000001; + public static final int GL_GREEN_BIT_ATI = 0x00000002; + public static final int GL_BLUE_BIT_ATI = 0x00000004; + public static final int GL_X2_BIT_ATI = 0x00000001; + public static final int GL_X4_BIT_ATI = 0x00000002; + public static final int GL_X8_BIT_ATI = 0x00000004; + public static final int GL_HALF_BIT_ATI = 0x00000008; + public static final int GL_QUARTER_BIT_ATI = 0x00000010; + public static final int GL_EIGHTH_BIT_ATI = 0x00000020; + public static final int GL_SATURATE_BIT_ATI = 0x00000040; + public static final int GL_COMP_BIT_ATI = 0x00000002; + public static final int GL_NEGATE_BIT_ATI = 0x00000004; + public static final int GL_BIAS_BIT_ATI = 0x00000008; + + public @GLuint int glGenFragmentShadersATI(@GLuint int range); + + public void glBindFragmentShaderATI(@GLuint int id); + + public void glDeleteFragmentShaderATI(@GLuint int id); + + public void glBeginFragmentShaderATI(); + + public void glEndFragmentShaderATI(); + + public void glPassTexCoordATI(@GLuint int dst, @GLuint int coord, @GLenum int swizzle); + + public void glSampleMapATI(@GLuint int dst, @GLuint int interp, @GLenum int swizzle); + + public void glColorFragmentOp1ATI(@GLenum int op, @GLuint int dst, @GLuint int dstMask, @GLuint int dstMod, @GLuint int arg1, @GLuint int arg1Rep, @GLuint int arg1Mod); + + public void glColorFragmentOp2ATI(@GLenum int op, @GLuint int dst, @GLuint int dstMask, @GLuint int dstMod, @GLuint int arg1, @GLuint int arg1Rep, @GLuint int arg1Mod, @GLuint int arg2, @GLuint int arg2Rep, @GLuint int arg2Mod); + + public void glColorFragmentOp3ATI(@GLenum int op, @GLuint int dst, @GLuint int dstMask, @GLuint int dstMod, @GLuint int arg1, @GLuint int arg1Rep, @GLuint int arg1Mod, @GLuint int arg2, @GLuint int arg2Rep, @GLuint int arg2Mod, @GLuint int arg3, @GLuint int arg3Rep, @GLuint int arg3Mod); + + public void glAlphaFragmentOp1ATI(@GLenum int op, @GLuint int dst, @GLuint int dstMod, @GLuint int arg1, @GLuint int arg1Rep, @GLuint int arg1Mod); + + public void glAlphaFragmentOp2ATI(@GLenum int op, @GLuint int dst, @GLuint int dstMod, @GLuint int arg1, @GLuint int arg1Rep, @GLuint int arg1Mod, @GLuint int arg2, @GLuint int arg2Rep, @GLuint int arg2Mod); + + public void glAlphaFragmentOp3ATI(@GLenum int op, @GLuint int dst, @GLuint int dstMod, @GLuint int arg1, @GLuint int arg1Rep, @GLuint int arg1Mod, @GLuint int arg2, @GLuint int arg2Rep, @GLuint int arg2Mod, @GLuint int arg3, @GLuint int arg3Rep, @GLuint int arg3Mod); + + // TODO:is the @Check correct? + public void glSetFragmentShaderConstantATI(@GLuint int dst, @Check("4") @Const FloatBuffer pfValue); +} diff --git a/src/templates/org/lwjgl/opengl/ATI_map_object_buffer.java b/src/templates/org/lwjgl/opengl/ATI_map_object_buffer.java new file mode 100644 index 00000000..e43be67d --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_map_object_buffer.java @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.ByteBuffer; + +import org.lwjgl.generator.*; + +public interface ATI_map_object_buffer { + /** + * glMapObjectBufferATI maps a gl object buffer to a ByteBuffer. The oldBuffer argument can be + * null, in which case a new ByteBuffer will be created, pointing to the returned memory. If + * oldBuffer is non-null, it will be returned if it points to the same mapped memory, otherwise a + * new ByteBuffer is created. + * + * @param result_size The size of the buffer area. + * @param old_buffer A ByteBuffer. If this argument points to the same address as the new mapping, + * it will be returned and no new buffer will be created. In that case, size is + * ignored. + * + * @return A ByteBuffer representing the mapped object buffer memory. + */ + @CachedResult + public @GLvoid ByteBuffer glMapObjectBufferATI(@GLuint int buffer); + + public void glUnmapObjectBufferATI(@GLuint int buffer); + +} diff --git a/src/templates/org/lwjgl/opengl/ATI_pn_triangles.java b/src/templates/org/lwjgl/opengl/ATI_pn_triangles.java new file mode 100644 index 00000000..35e91bf9 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_pn_triangles.java @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface ATI_pn_triangles { + public static final int GL_PN_TRIANGLES_ATI = 0x87F0; + public static final int GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F1; + public static final int GL_PN_TRIANGLES_POINT_MODE_ATI = 0x87F2; + public static final int GL_PN_TRIANGLES_NORMAL_MODE_ATI = 0x87F3; + public static final int GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F4; + public static final int GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI = 0x87F5; + public static final int GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI = 0x87F6; + public static final int GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI = 0x87F7; + public static final int GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI = 0x87F8; + + public void glPNTrianglesfATI(@GLenum int pname, float param); + + public void glPNTrianglesiATI(@GLenum int pname, int param); +} diff --git a/src/templates/org/lwjgl/opengl/ATI_separate_stencil.java b/src/templates/org/lwjgl/opengl/ATI_separate_stencil.java new file mode 100644 index 00000000..4541331d --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_separate_stencil.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface ATI_separate_stencil { + public static final int GL_STENCIL_BACK_FUNC_ATI = 0x8800; + public static final int GL_STENCIL_BACK_FAIL_ATI = 0x8801; + public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI = 0x8802; + public static final int GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI = 0x8803; + + public void glStencilOpSeparateATI(@GLenum int face, @GLenum int sfail, @GLenum int dpfail, @GLenum int dppass); + + public void glStencilFuncSeparateATI(@GLenum int frontfunc, @GLenum int backfunc, int ref, @GLuint int mask); +} diff --git a/src/templates/org/lwjgl/opengl/ATI_texture_compression_3dc.java b/src/templates/org/lwjgl/opengl/ATI_texture_compression_3dc.java new file mode 100644 index 00000000..345ea1bd --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_texture_compression_3dc.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +@Extension(postfix="ATI", className="ATITextureCompression3DC") +public interface ATI_texture_compression_3dc { + public static final int GL_COMPRESSED_RGB_3DC_ATI = 0x8837; +} diff --git a/src/templates/org/lwjgl/opengl/ATI_texture_float.java b/src/templates/org/lwjgl/opengl/ATI_texture_float.java new file mode 100644 index 00000000..8fc70535 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_texture_float.java @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ATI_texture_float { + /* + * Accepted by the parameter of TexImage1D, + * TexImage2D, and TexImage3D: + */ + public static final int GL_RGBA_FLOAT32_ATI = 0x8814; + public static final int GL_RGB_FLOAT32_ATI = 0x8815; + public static final int GL_ALPHA_FLOAT32_ATI = 0x8816; + public static final int GL_INTENSITY_FLOAT32_ATI = 0x8817; + public static final int GL_LUMINANCE_FLOAT32_ATI = 0x8818; + public static final int GL_LUMINANCE_ALPHA_FLOAT32_ATI = 0x8819; + public static final int GL_RGBA_FLOAT16_ATI = 0x881A; + public static final int GL_RGB_FLOAT16_ATI = 0x881B; + public static final int GL_ALPHA_FLOAT16_ATI = 0x881C; + public static final int GL_INTENSITY_FLOAT16_ATI = 0x881D; + public static final int GL_LUMINANCE_FLOAT16_ATI = 0x881E; + public static final int GL_LUMINANCE_ALPHA_FLOAT16_ATI = 0x881F; +} diff --git a/src/templates/org/lwjgl/opengl/ATI_texture_mirror_once.java b/src/templates/org/lwjgl/opengl/ATI_texture_mirror_once.java new file mode 100644 index 00000000..d33a40b0 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_texture_mirror_once.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface ATI_texture_mirror_once { + public static final int GL_MIRROR_CLAMP_ATI = 0x8742; + public static final int GL_MIRROR_CLAMP_TO_EDGE_ATI = 0x8743; +} diff --git a/src/templates/org/lwjgl/opengl/ATI_vertex_array_object.java b/src/templates/org/lwjgl/opengl/ATI_vertex_array_object.java new file mode 100644 index 00000000..34ff802b --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_vertex_array_object.java @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.generator.*; + +public interface ATI_vertex_array_object { + public static final int GL_STATIC_ATI = 0x8760; + public static final int GL_DYNAMIC_ATI = 0x8761; + public static final int GL_PRESERVE_ATI = 0x8762; + public static final int GL_DISCARD_ATI = 0x8763; + public static final int GL_OBJECT_BUFFER_SIZE_ATI = 0x8764; + public static final int GL_OBJECT_BUFFER_USAGE_ATI = 0x8765; + public static final int GL_ARRAY_OBJECT_BUFFER_ATI = 0x8766; + public static final int GL_ARRAY_OBJECT_OFFSET_ATI = 0x8767; + + @GenerateAutos + public @GLuint int glNewObjectBufferATI(@AutoSize("pPointer") @GLsizei int size, + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pPointer, @GLenum int usage); + + public boolean glIsObjectBufferATI(@GLuint int buffer); + + public void glUpdateObjectBufferATI(@GLuint int buffer, @GLuint int offset, @AutoSize("pPointer") @GLsizei int size, + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pPointer, @GLenum int preserve); + + @StripPostfix("params") + public void glGetObjectBufferfvATI(@GLuint int buffer, @GLenum int pname, @Check FloatBuffer params); + @StripPostfix("params") + public void glGetObjectBufferivATI(@GLuint int buffer, @GLenum int pname, @Check IntBuffer params); + + public void glFreeObjectBufferATI(@GLuint int buffer); + + public void glArrayObjectATI(@GLenum int array, int size, @GLenum int type, @GLsizei int stride, @GLuint int buffer, @GLuint int offset); + + @StripPostfix("params") + public void glGetArrayObjectfvATI(@GLenum int array, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetArrayObjectivATI(@GLenum int array, @GLenum int pname, @Check("4") IntBuffer params); + + public void glVariantArrayObjectATI(@GLuint int id, @GLenum int type, @GLsizei int stride, @GLuint int buffer, @GLuint int offset); + + @StripPostfix("params") + public void glGetVariantArrayObjectfvATI(@GLuint int id, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetVariantArrayObjectivATI(@GLuint int id, @GLenum int pname, @Check("4") IntBuffer params); +} diff --git a/src/templates/org/lwjgl/opengl/ATI_vertex_attrib_array_object.java b/src/templates/org/lwjgl/opengl/ATI_vertex_attrib_array_object.java new file mode 100644 index 00000000..456dc82c --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_vertex_attrib_array_object.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; + +public interface ATI_vertex_attrib_array_object { + public void glVertexAttribArrayObjectATI(@GLuint int index, int size, @GLenum int type, boolean normalized, @GLsizei int stride, @GLuint int buffer, @GLuint int offset); + + @StripPostfix("params") + public void glGetVertexAttribArrayObjectfvATI(@GLuint int index, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetVertexAttribArrayObjectivATI(@GLuint int index, @GLenum int pname, @Check("4") IntBuffer params); +} diff --git a/src/templates/org/lwjgl/opengl/ATI_vertex_streams.java b/src/templates/org/lwjgl/opengl/ATI_vertex_streams.java new file mode 100644 index 00000000..9823a486 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/ATI_vertex_streams.java @@ -0,0 +1,79 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface ATI_vertex_streams { + public static final int GL_MAX_VERTEX_STREAMS_ATI = 0x876B; + public static final int GL_VERTEX_SOURCE_ATI = 0x876C; + public static final int GL_VERTEX_STREAM0_ATI = 0x876D; + public static final int GL_VERTEX_STREAM1_ATI = 0x876E; + public static final int GL_VERTEX_STREAM2_ATI = 0x876F; + public static final int GL_VERTEX_STREAM3_ATI = 0x8770; + public static final int GL_VERTEX_STREAM4_ATI = 0x8771; + public static final int GL_VERTEX_STREAM5_ATI = 0x8772; + public static final int GL_VERTEX_STREAM6_ATI = 0x8773; + public static final int GL_VERTEX_STREAM7_ATI = 0x8774; + + public void glVertexStream2fATI(@GLenum int stream, float x, float y); + + public void glVertexStream2iATI(@GLenum int stream, int x, int y); + + public void glVertexStream2sATI(@GLenum int stream, short x, short y); + + public void glVertexStream3fATI(@GLenum int stream, float x, float y, float z); + + public void glVertexStream3iATI(@GLenum int stream, int x, int y, int z); + + public void glVertexStream3sATI(@GLenum int stream, short x, short y, short z); + + public void glVertexStream4fATI(@GLenum int stream, float x, float y, float z, float w); + + public void glVertexStream4iATI(@GLenum int stream, int x, int y, int z, int w); + + public void glVertexStream4sATI(@GLenum int stream, short x, short y, short z, short w); + + public void glNormalStream3bATI(@GLenum int stream, byte x, byte y, byte z); + + public void glNormalStream3fATI(@GLenum int stream, float x, float y, float z); + + public void glNormalStream3iATI(@GLenum int stream, int x, int y, int z); + + public void glNormalStream3sATI(@GLenum int stream, short x, short y, short z); + + public void glClientActiveVertexStreamATI(@GLenum int stream); + + public void glVertexBlendEnvfATI(@GLenum int pname, float param); + + public void glVertexBlendEnviATI(@GLenum int pname, int param); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_abgr.java b/src/templates/org/lwjgl/opengl/EXT_abgr.java new file mode 100644 index 00000000..e21f56ad --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_abgr.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_abgr { + public static final int GL_ABGR_EXT = 0x8000; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_bgra.java b/src/templates/org/lwjgl/opengl/EXT_bgra.java new file mode 100644 index 00000000..a9faf6ee --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_bgra.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +/** + * EXT_bgra_constants + * + * @author cas + */ +public interface EXT_bgra { + public static final int GL_BGR_EXT = 0x80E0; + public static final int GL_BGRA_EXT = 0x80E1; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_blend_equation_separate.java b/src/templates/org/lwjgl/opengl/EXT_blend_equation_separate.java new file mode 100644 index 00000000..edcde9fa --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_blend_equation_separate.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface EXT_blend_equation_separate { + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_BLEND_EQUATION_RGB_EXT = 0x8009; + public static final int GL_BLEND_EQUATION_ALPHA_EXT = 0x883D; + + public void glBlendEquationSeparateEXT(@GLenum int modeRGB, @GLenum int modeAlpha); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_blend_func_separate.java b/src/templates/org/lwjgl/opengl/EXT_blend_func_separate.java new file mode 100644 index 00000000..d692b3e9 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_blend_func_separate.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface EXT_blend_func_separate { + public static final int GL_BLEND_DST_RGB_EXT = 0x80C8; + public static final int GL_BLEND_SRC_RGB_EXT = 0x80C9; + public static final int GL_BLEND_DST_ALPHA_EXT = 0x80CA; + public static final int GL_BLEND_SRC_ALPHA_EXT = 0x80CB; + + public void glBlendFuncSeparateEXT(@GLenum int sfactorRGB, @GLenum int dfactorRGB, @GLenum int sfactorAlpha, @GLenum int dfactorAlpha); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_blend_subtract.java b/src/templates/org/lwjgl/opengl/EXT_blend_subtract.java new file mode 100644 index 00000000..00036889 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_blend_subtract.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +/** + * EXT_blend_subtract constants + * + * @author cas + */ +public interface EXT_blend_subtract { + public static final int GL_FUNC_SUBTRACT_EXT = 0x800A; + public static final int GL_FUNC_REVERSE_SUBTRACT_EXT = 0x800B; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_cg_shader.java b/src/templates/org/lwjgl/opengl/EXT_cg_shader.java new file mode 100644 index 00000000..c1e10597 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_cg_shader.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_cg_shader { + /** + * You can pass GL_CG_VERTEX_SHADER_EXT to glCreateShaderARB instead of GL_VERTEX_SHADER_ARB to create a vertex shader object + * that will parse and compile its shader source with the Cg compiler front-end rather than the GLSL front-end. Likewise, you + * can pass GL_CG_FRAGMENT_SHADER_EXT to glCreateShaderARB instead of GL_FRAGMENT_SHADER_ARB to create a fragment shader object + * that will parse and compile its shader source with the Cg front-end rather than the GLSL front-end. + */ + public static final int GL_CG_VERTEX_SHADER_EXT = 0x890E; + public static final int GL_CG_FRAGMENT_SHADER_EXT = 0x890F; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_compiled_vertex_array.java b/src/templates/org/lwjgl/opengl/EXT_compiled_vertex_array.java new file mode 100644 index 00000000..44fa09c5 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_compiled_vertex_array.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface EXT_compiled_vertex_array { + public static final int GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = 0x81A8; + public static final int GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = 0x81A9; + + public void glLockArraysEXT(int first, @GLsizei int count); + + public void glUnlockArraysEXT(); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_depth_bounds_test.java b/src/templates/org/lwjgl/opengl/EXT_depth_bounds_test.java new file mode 100644 index 00000000..92c1dab1 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_depth_bounds_test.java @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface EXT_depth_bounds_test { + /* + Accepted by the parameter of Enable, Disable, and IsEnabled, + and by the parameter of GetBooleanv, GetIntegerv, + GetFloatv, and GetDoublev: + */ + public static final int DEPTH_BOUNDS_TEST_EXT = 0x8890; + + /* + Accepted by the parameter of GetBooleanv, GetIntegerv, + GetFloatv, and GetDoublev: + */ + public static final int DEPTH_BOUNDS_EXT = 0x8891; + + public void glDepthBoundsEXT(@GLclampd double zmin, @GLclampd double zmax); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_draw_range_elements.java b/src/templates/org/lwjgl/opengl/EXT_draw_range_elements.java new file mode 100644 index 00000000..15db5c0e --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_draw_range_elements.java @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.generator.*; + +public interface EXT_draw_range_elements { + public static final int GL_MAX_ELEMENTS_VERTICES_EXT = 0x80E8; + public static final int GL_MAX_ELEMENTS_INDICES_EXT = 0x80E9; + + public void glDrawRangeElementsEXT(@GLenum int mode, @GLuint int start, @GLuint int end, @AutoSize("pIndices") @GLsizei int count, @AutoType("pIndices") @GLenum int type, + @BufferObject(BufferKind.ElementVBO) + @Const + @GLubyte + @GLushort + @GLuint + Buffer pIndices); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_fog_coord.java b/src/templates/org/lwjgl/opengl/EXT_fog_coord.java new file mode 100644 index 00000000..dc249b99 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_fog_coord.java @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.FloatBuffer; + +import org.lwjgl.generator.*; + +public interface EXT_fog_coord { + public static final int GL_FOG_COORDINATE_SOURCE_EXT = 0x8450; + public static final int GL_FOG_COORDINATE_EXT = 0x8451; + public static final int GL_FRAGMENT_DEPTH_EXT = 0x8452; + public static final int GL_CURRENT_FOG_COORDINATE_EXT = 0x8453; + public static final int GL_FOG_COORDINATE_ARRAY_TYPE_EXT = 0x8454; + public static final int GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = 0x8455; + public static final int GL_FOG_COORDINATE_ARRAY_POINTER_EXT = 0x8456; + public static final int GL_FOG_COORDINATE_ARRAY_EXT = 0x8457; + + public void glFogCoordfEXT(float coord); + + public void glFogCoordPointerEXT(@AutoType("data") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLfloat + Buffer data); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_framebuffer_object.java b/src/templates/org/lwjgl/opengl/EXT_framebuffer_object.java new file mode 100644 index 00000000..2fe36a52 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_framebuffer_object.java @@ -0,0 +1,164 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +import java.nio.IntBuffer; + +public interface EXT_framebuffer_object { + /* + * Accepted by the <target> parameter of BindFramebufferEXT, + * CheckFramebufferStatusEXT, FramebufferTexture{1D|2D|3D}EXT, and + * FramebufferRenderbufferEXT: + */ + public static final int GL_FRAMEBUFFER_EXT = 0x8D40; + + /* + * Accepted by the <target> parameter of BindRenderbufferEXT, + * RenderbufferStorageEXT, and GetRenderbufferParameterivEXT, and + * returned by GetFramebufferAttachmentParameterivEXT: + */ + public static final int GL_RENDERBUFFER_EXT = 0x8D41; + + /* + * Accepted by the <internalformat> parameter of + * RenderbufferStorageEXT: + */ + public static final int GL_STENCIL_INDEX_EXT = 0x8D45; + public static final int GL_STENCIL_INDEX1_EXT = 0x8D46; + public static final int GL_STENCIL_INDEX4_EXT = 0x8D47; + public static final int GL_STENCIL_INDEX8_EXT = 0x8D48; + public static final int GL_STENCIL_INDEX16_EXT = 0x8D49; + + /* + * Accepted by the <pname> parameter of GetRenderbufferParameterivEXT: + */ + public static final int GL_RENDERBUFFER_WIDTH_EXT = 0x8D42; + public static final int GL_RENDERBUFFER_HEIGHT_EXT = 0x8D43; + public static final int GL_RENDERBUFFER_INTERNAL_FORMAT_EXT = 0x8D44; + + /* + * Accepted by the <pname> parameter of + * GetFramebufferAttachmentParameterivEXT: + */ + public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = 0x8CD0; + public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = 0x8CD1; + public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = 0x8CD2; + public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = 0x8CD3; + public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = 0x8CD4; + + /* + * Accepted by the <attachment> parameter of + * FramebufferTexture{1D|2D|3D}EXT, FramebufferRenderbufferEXT, and + * GetFramebufferAttachmentParameterivEXT + */ + public static final int GL_COLOR_ATTACHMENT0_EXT = 0x8CE0; + public static final int GL_COLOR_ATTACHMENT1_EXT = 0x8CE1; + public static final int GL_COLOR_ATTACHMENT2_EXT = 0x8CE2; + public static final int GL_COLOR_ATTACHMENT3_EXT = 0x8CE3; + public static final int GL_COLOR_ATTACHMENT4_EXT = 0x8CE4; + public static final int GL_COLOR_ATTACHMENT5_EXT = 0x8CE5; + public static final int GL_COLOR_ATTACHMENT6_EXT = 0x8CE6; + public static final int GL_COLOR_ATTACHMENT7_EXT = 0x8CE7; + public static final int GL_COLOR_ATTACHMENT8_EXT = 0x8CE8; + public static final int GL_COLOR_ATTACHMENT9_EXT = 0x8CE9; + public static final int GL_COLOR_ATTACHMENT10_EXT = 0x8CEA; + public static final int GL_COLOR_ATTACHMENT11_EXT = 0x8CEB; + public static final int GL_COLOR_ATTACHMENT12_EXT = 0x8CEC; + public static final int GL_COLOR_ATTACHMENT13_EXT = 0x8CED; + public static final int GL_COLOR_ATTACHMENT14_EXT = 0x8CEE; + public static final int GL_COLOR_ATTACHMENT15_EXT = 0x8CEF; + public static final int GL_DEPTH_ATTACHMENT_EXT = 0x8D00; + public static final int GL_STENCIL_ATTACHMENT_EXT = 0x8D20; + + /** + * Returned by CheckFramebufferStatusEXT(): + */ + public static final int GL_FRAMEBUFFER_COMPLETE_EXT = 0x8CD5; + public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = 0x8CD6; + public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = 0x8CD7; + public static final int GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT = 0x8CD8; + public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = 0x8CD9; + public static final int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT = 0x8CDA; + public static final int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT = 0x8CDB; + public static final int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT = 0x8CDC; + public static final int GL_FRAMEBUFFER_UNSUPPORTED_EXT = 0x8CDD; + public static final int GL_FRAMEBUFFER_STATUS_ERROR_EXT = 0x8CDE; + + /** + * Accepted by GetIntegerv(): + */ + public static final int GL_FRAMEBUFFER_BINDING_EXT = 0x8CA6; + public static final int GL_RENDERBUFFER_BINDING_EXT = 0x8CA7; + public static final int GL_MAX_COLOR_ATTACHMENTS_EXT = 0x8CDF; + public static final int GL_MAX_RENDERBUFFER_SIZE_EXT = 0x84E8; + + /** + * Returned by GetError(): + */ + public static final int GL_INVALID_FRAMEBUFFER_OPERATION_EXT = 0x0506; + + public boolean glIsRenderbufferEXT(@GLuint int renderbuffer); + + public void glBindRenderbufferEXT(@GLenum int target, @GLuint int renderbuffer); + + public void glDeleteRenderbuffersEXT(@AutoSize("renderbuffers") int n, @Const @GLuint IntBuffer renderbuffers); + public void glGenRenderbuffersEXT(@AutoSize("renderbuffers") int n, @GLuint IntBuffer renderbuffers); + + public void glRenderbufferStorageEXT(@GLenum int target, @GLenum int internalformat, @GLsizei int width, @GLsizei int height); + + @StripPostfix("params") + public void glGetRenderbufferParameterivEXT(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + + public boolean glIsFramebufferEXT(@GLuint int framebuffer); + + public void glBindFramebufferEXT(@GLenum int target, @GLuint int framebuffer); + + public void glDeleteFramebuffersEXT(@AutoSize("framebuffers") int n, @Const @GLuint IntBuffer framebuffers); + public void glGenFramebuffersEXT(@AutoSize("framebuffers") int n, @Const @GLuint IntBuffer framebuffers); + + public @GLenum int glCheckFramebufferStatusEXT(@GLenum int target); + + public void glFramebufferTexture1DEXT(@GLenum int target, @GLenum int attachment, @GLenum int textarget, @GLuint int texture, int level); + + public void glFramebufferTexture2DEXT(@GLenum int target, @GLenum int attachment, @GLenum int textarget, @GLuint int texture, int level); + + public void glFramebufferTexture3DEXT(@GLenum int target, @GLenum int attachment, @GLenum int textarget, @GLuint int texture, int level, int zoffset); + + public void glFramebufferRenderbufferEXT(@GLenum int target, @GLenum int attachment, @GLenum int renderbuffertarget, @GLuint int renderbuffer); + + @StripPostfix("params") + public void glGetFramebufferAttachmentParameterivEXT(@GLenum int target, @GLenum int attachment, @GLenum int pname, @Check("4") IntBuffer params); + + public void glGenerateMipmapEXT(@GLenum int target); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_multi_draw_arrays.java b/src/templates/org/lwjgl/opengl/EXT_multi_draw_arrays.java new file mode 100644 index 00000000..6d93330b --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_multi_draw_arrays.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; + +public interface EXT_multi_draw_arrays { + @Code( " if (piFirst.remaining() != piCount.remaining()) {\n" + + " throw new IllegalArgumentException(\"piFirst.remaining() != piCount.remaining()\");\n" + + " }") + public void glMultiDrawArraysEXT(@GLenum int mode, IntBuffer piFirst, @Check @GLsizei IntBuffer piCount, @AutoSize("piFirst") int primcount); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_packed_pixels.java b/src/templates/org/lwjgl/opengl/EXT_packed_pixels.java new file mode 100644 index 00000000..0ec0e50a --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_packed_pixels.java @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_packed_pixels { + public static final int GL_UNSIGNED_BYTE_3_3_2_EXT = 0x8032; + public static final int GL_UNSIGNED_SHORT_4_4_4_4_EXT = 0x8033; + public static final int GL_UNSIGNED_SHORT_5_5_5_1_EXT = 0x8034; + public static final int GL_UNSIGNED_INT_8_8_8_8_EXT = 0x8035; + public static final int GL_UNSIGNED_INT_10_10_10_2_EXT = 0x8036; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_paletted_texture.java b/src/templates/org/lwjgl/opengl/EXT_paletted_texture.java new file mode 100644 index 00000000..def7f8e0 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_paletted_texture.java @@ -0,0 +1,98 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +import java.nio.*; + +public interface EXT_paletted_texture { + /* + * Accepted by the internalformat parameter of TexImage1D, TexImage2D and + * TexImage3DEXT: + */ + public static final int GL_COLOR_INDEX1_EXT = 0x80E2; + public static final int GL_COLOR_INDEX2_EXT = 0x80E3; + public static final int GL_COLOR_INDEX4_EXT = 0x80E4; + public static final int GL_COLOR_INDEX8_EXT = 0x80E5; + public static final int GL_COLOR_INDEX12_EXT = 0x80E6; + public static final int GL_COLOR_INDEX16_EXT = 0x80E7; + + /* + * Accepted by the pname parameter of GetColorTableParameterivEXT and + * GetColorTableParameterfvEXT: + */ + public static final int GL_COLOR_TABLE_FORMAT_EXT = 0x80D8; + public static final int GL_COLOR_TABLE_WIDTH_EXT = 0x80D9; + public static final int GL_COLOR_TABLE_RED_SIZE_EXT = 0x80DA; + public static final int GL_COLOR_TABLE_GREEN_SIZE_EXT = 0x80DB; + public static final int GL_COLOR_TABLE_BLUE_SIZE_EXT = 0x80DC; + public static final int GL_COLOR_TABLE_ALPHA_SIZE_EXT = 0x80DD; + public static final int GL_COLOR_TABLE_LUMINANCE_SIZE_EXT = 0x80DE; + public static final int GL_COLOR_TABLE_INTENSITY_SIZE_EXT = 0x80DF; + + /* + * Accepted by the value parameter of GetTexLevelParameter{if}v: + */ + public static final int GL_TEXTURE_INDEX_SIZE_EXT = 0x80ED; + + public void glColorTableEXT(@GLenum int target, @GLenum int internalFormat, @GLsizei int width, @GLenum int format, @GLenum int type, + @Check("GLBufferChecks.calculateImageStorage(data, format, type, width, 1, 1)") + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + public void glColorSubTableEXT(@GLenum int target, @GLsizei int start, @GLsizei int count, @GLenum int format, @GLenum int type, + @Check("GLBufferChecks.calculateImageStorage(data, format, type, count, 1, 1)") + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + public void glGetColorTableEXT(@GLenum int target, @GLenum int format, @GLenum int type, + @Check + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + @StripPostfix("params") + public void glGetColorTableParameterivEXT(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + @StripPostfix("params") + public void glGetColorTableParameterfvEXT(@GLenum int target, @GLenum int pname, @Check("4") FloatBuffer params); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_pixel_buffer_object.java b/src/templates/org/lwjgl/opengl/EXT_pixel_buffer_object.java new file mode 100644 index 00000000..acad8a7f --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_pixel_buffer_object.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_pixel_buffer_object extends ARB_buffer_object { + /* + * Accepted by the parameters of BindBuffer, BufferData, + * BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData, + * GetBufferParameteriv, and GetBufferPointerv: + */ + public static final int GL_PIXEL_PACK_BUFFER_EXT = 0x88EB; + public static final int GL_PIXEL_UNPACK_BUFFER_EXT = 0x88EC; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int PIXEL_PACK_BUFFER_BINDING_EXT = 0x88ED; + public static final int PIXEL_UNPACK_BUFFER_BINDING_EXT = 0x88EF; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_point_parameters.java b/src/templates/org/lwjgl/opengl/EXT_point_parameters.java new file mode 100644 index 00000000..873920dd --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_point_parameters.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.FloatBuffer; + +import org.lwjgl.generator.*; + +public interface EXT_point_parameters { + public static final int GL_POINT_SIZE_MIN_EXT = 0x8126; + public static final int GL_POINT_SIZE_MAX_EXT = 0x8127; + public static final int GL_POINT_FADE_THRESHOLD_SIZE_EXT = 0x8128; + public static final int GL_DISTANCE_ATTENUATION_EXT = 0x8129; + + public void glPointParameterfEXT(@GLenum int pname, float param); + + @StripPostfix("pfParams") + public void glPointParameterfvEXT(@GLenum int pname, @Check("4") @Const FloatBuffer pfParams); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_rescale_normal.java b/src/templates/org/lwjgl/opengl/EXT_rescale_normal.java new file mode 100644 index 00000000..e67cd47e --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_rescale_normal.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_rescale_normal { + public static final int GL_RESCALE_NORMAL_EXT = 0x803A; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_secondary_color.java b/src/templates/org/lwjgl/opengl/EXT_secondary_color.java new file mode 100644 index 00000000..0420d285 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_secondary_color.java @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; + +import org.lwjgl.generator.*; + +public interface EXT_secondary_color { + public static final int GL_COLOR_SUM_EXT = 0x8458; + public static final int GL_CURRENT_SECONDARY_COLOR_EXT = 0x8459; + public static final int GL_SECONDARY_COLOR_ARRAY_SIZE_EXT = 0x845A; + public static final int GL_SECONDARY_COLOR_ARRAY_TYPE_EXT = 0x845B; + public static final int GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT = 0x845C; + public static final int GL_SECONDARY_COLOR_ARRAY_POINTER_EXT = 0x845D; + public static final int GL_SECONDARY_COLOR_ARRAY_EXT = 0x845E; + + public void glSecondaryColor3bEXT(byte red, byte green, byte blue); + + public void glSecondaryColor3fEXT(float red, float green, float blue); + + public void glSecondaryColor3ubEXT(@GLubyte byte red, @GLubyte byte green, @GLubyte byte blue); + + public void glSecondaryColorPointerEXT(int size, @AutoType("pPointer") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @GLbyte + @GLubyte + @GLfloat + Buffer pPointer); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_separate_specular_color.java b/src/templates/org/lwjgl/opengl/EXT_separate_specular_color.java new file mode 100644 index 00000000..28c0e95d --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_separate_specular_color.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_separate_specular_color { + public static final int GL_SINGLE_COLOR_EXT = 0x81F9; + public static final int GL_SEPARATE_SPECULAR_COLOR_EXT = 0x81FA; + public static final int GL_LIGHT_MODEL_COLOR_CONTROL_EXT = 0x81F8; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_shared_texture_palette.java b/src/templates/org/lwjgl/opengl/EXT_shared_texture_palette.java new file mode 100644 index 00000000..904b88ac --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_shared_texture_palette.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_shared_texture_palette { + public static final int GL_SHARED_TEXTURE_PALETTE_EXT = 0x81FB; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_stencil_two_side.java b/src/templates/org/lwjgl/opengl/EXT_stencil_two_side.java new file mode 100644 index 00000000..c3da79f1 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_stencil_two_side.java @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface EXT_stencil_two_side { + public static final int GL_STENCIL_TEST_TWO_SIDE_EXT = 0x8910; + public static final int GL_ACTIVE_STENCIL_FACE_EXT = 0x8911; + + public void glActiveStencilFaceEXT(@GLenum int face); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_stencil_wrap.java b/src/templates/org/lwjgl/opengl/EXT_stencil_wrap.java new file mode 100644 index 00000000..ca9973f3 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_stencil_wrap.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_stencil_wrap { + public static final int GL_INCR_WRAP_EXT = 0x8507; + public static final int GL_DECR_WRAP_EXT = 0x8508; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_texture_compression_s3tc.java b/src/templates/org/lwjgl/opengl/EXT_texture_compression_s3tc.java new file mode 100644 index 00000000..cd85a49b --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_texture_compression_s3tc.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +@Extension(postfix="EXT", className="EXTTextureCompressionS3TC") +public interface EXT_texture_compression_s3tc { + public static final int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_texture_env_combine.java b/src/templates/org/lwjgl/opengl/EXT_texture_env_combine.java new file mode 100644 index 00000000..625928a4 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_texture_env_combine.java @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +/** Insert the type's description here. Creation date: (22/02/00 01:26:05) */ +public interface EXT_texture_env_combine { + public static final int GL_COMBINE_EXT = 0x8570; + public static final int GL_COMBINE_RGB_EXT = 0x8571; + public static final int GL_COMBINE_ALPHA_EXT = 0x8572; + public static final int GL_SOURCE0_RGB_EXT = 0x8580; + public static final int GL_SOURCE1_RGB_EXT = 0x8581; + public static final int GL_SOURCE2_RGB_EXT = 0x8582; + public static final int GL_SOURCE0_ALPHA_EXT = 0x8588; + public static final int GL_SOURCE1_ALPHA_EXT = 0x8589; + public static final int GL_SOURCE2_ALPHA_EXT = 0x858A; + public static final int GL_OPERAND0_RGB_EXT = 0x8590; + public static final int GL_OPERAND1_RGB_EXT = 0x8591; + public static final int GL_OPERAND2_RGB_EXT = 0x8592; + public static final int GL_OPERAND0_ALPHA_EXT = 0x8598; + public static final int GL_OPERAND1_ALPHA_EXT = 0x8599; + public static final int GL_OPERAND2_ALPHA_EXT = 0x859A; + public static final int GL_RGB_SCALE_EXT = 0x8573; + public static final int GL_ADD_SIGNED_EXT = 0x8574; + public static final int GL_INTERPOLATE_EXT = 0x8575; + public static final int GL_CONSTANT_EXT = 0x8576; + public static final int GL_PRIMARY_COLOR_EXT = 0x8577; + public static final int GL_PREVIOUS_EXT = 0x8578; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_texture_env_dot3.java b/src/templates/org/lwjgl/opengl/EXT_texture_env_dot3.java new file mode 100644 index 00000000..f4e61dd3 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_texture_env_dot3.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_texture_env_dot3 { + public static final int GL_DOT3_RGB_EXT = 0x8740; + public static final int GL_DOT3_RGBA_EXT = 0x8741; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_texture_filter_anisotropic.java b/src/templates/org/lwjgl/opengl/EXT_texture_filter_anisotropic.java new file mode 100644 index 00000000..0585538d --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_texture_filter_anisotropic.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_texture_filter_anisotropic { + public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE; + public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_texture_lod_bias.java b/src/templates/org/lwjgl/opengl/EXT_texture_lod_bias.java new file mode 100644 index 00000000..12317aa8 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_texture_lod_bias.java @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +@Extension(postfix="EXT", className="EXTTextureLODBias") +public interface EXT_texture_lod_bias { + public static final int GL_TEXTURE_FILTER_CONTROL_EXT = 0x8500; + public static final int GL_TEXTURE_LOD_BIAS_EXT = 0x8501; + public static final int GL_MAX_TEXTURE_LOD_BIAS_EXT = 0x84FD; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_texture_mirror_clamp.java b/src/templates/org/lwjgl/opengl/EXT_texture_mirror_clamp.java new file mode 100644 index 00000000..95984c9c --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_texture_mirror_clamp.java @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_texture_mirror_clamp { + /* + * Accepted by the parameter of TexParameteri and TexParameterf, + * and by the parameter of TexParameteriv and TexParameterfv, + * when their parameter is TEXTURE_WRAP_S, TEXTURE_WRAP_T, + * or TEXTURE_WRAP_R: + */ + public static final int GL_MIRROR_CLAMP_EXT = 0x8742; + public static final int GL_MIRROR_CLAMP_TO_EDGE_EXT = 0x8743; + public static final int GL_MIRROR_CLAMP_TO_BORDER_EXT = 0x8912; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_texture_rectangle.java b/src/templates/org/lwjgl/opengl/EXT_texture_rectangle.java new file mode 100644 index 00000000..aa7e2f4f --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_texture_rectangle.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface EXT_texture_rectangle { + public static final int GL_TEXTURE_RECTANGLE_EXT = 0x84F5; + public static final int GL_TEXTURE_BINDING_RECTANGLE_EXT = 0x84F6; + public static final int GL_PROXY_TEXTURE_RECTANGLE_EXT = 0x84F7; + public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT = 0x84F8; +} diff --git a/src/templates/org/lwjgl/opengl/EXT_vertex_shader.java b/src/templates/org/lwjgl/opengl/EXT_vertex_shader.java new file mode 100644 index 00000000..bbdd8b6a --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_vertex_shader.java @@ -0,0 +1,268 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.generator.*; + +public interface EXT_vertex_shader { + public static final int GL_VERTEX_SHADER_EXT = 0x8780; + public static final int GL_VERTEX_SHADER_BINDING_EXT = 0x8781; + public static final int GL_OP_INDEX_EXT = 0x8782; + public static final int GL_OP_NEGATE_EXT = 0x8783; + public static final int GL_OP_DOT3_EXT = 0x8784; + public static final int GL_OP_DOT4_EXT = 0x8785; + public static final int GL_OP_MUL_EXT = 0x8786; + public static final int GL_OP_ADD_EXT = 0x8787; + public static final int GL_OP_MADD_EXT = 0x8788; + public static final int GL_OP_FRAC_EXT = 0x8789; + public static final int GL_OP_MAX_EXT = 0x878A; + public static final int GL_OP_MIN_EXT = 0x878B; + public static final int GL_OP_SET_GE_EXT = 0x878C; + public static final int GL_OP_SET_LT_EXT = 0x878D; + public static final int GL_OP_CLAMP_EXT = 0x878E; + public static final int GL_OP_FLOOR_EXT = 0x878F; + public static final int GL_OP_ROUND_EXT = 0x8790; + public static final int GL_OP_EXP_BASE_2_EXT = 0x8791; + public static final int GL_OP_LOG_BASE_2_EXT = 0x8792; + public static final int GL_OP_POWER_EXT = 0x8793; + public static final int GL_OP_RECIP_EXT = 0x8794; + public static final int GL_OP_RECIP_SQRT_EXT = 0x8795; + public static final int GL_OP_SUB_EXT = 0x8796; + public static final int GL_OP_CROSS_PRODUCT_EXT = 0x8797; + public static final int GL_OP_MULTIPLY_MATRIX_EXT = 0x8798; + public static final int GL_OP_MOV_EXT = 0x8799; + public static final int GL_OUTPUT_VERTEX_EXT = 0x879A; + public static final int GL_OUTPUT_COLOR0_EXT = 0x879B; + public static final int GL_OUTPUT_COLOR1_EXT = 0x879C; + public static final int GL_OUTPUT_TEXTURE_COORD0_EXT = 0x879D; + public static final int GL_OUTPUT_TEXTURE_COORD1_EXT = 0x879E; + public static final int GL_OUTPUT_TEXTURE_COORD2_EXT = 0x879F; + public static final int GL_OUTPUT_TEXTURE_COORD3_EXT = 0x87A0; + public static final int GL_OUTPUT_TEXTURE_COORD4_EXT = 0x87A1; + public static final int GL_OUTPUT_TEXTURE_COORD5_EXT = 0x87A2; + public static final int GL_OUTPUT_TEXTURE_COORD6_EXT = 0x87A3; + public static final int GL_OUTPUT_TEXTURE_COORD7_EXT = 0x87A4; + public static final int GL_OUTPUT_TEXTURE_COORD8_EXT = 0x87A5; + public static final int GL_OUTPUT_TEXTURE_COORD9_EXT = 0x87A6; + public static final int GL_OUTPUT_TEXTURE_COORD10_EXT = 0x87A7; + public static final int GL_OUTPUT_TEXTURE_COORD11_EXT = 0x87A8; + public static final int GL_OUTPUT_TEXTURE_COORD12_EXT = 0x87A9; + public static final int GL_OUTPUT_TEXTURE_COORD13_EXT = 0x87AA; + public static final int GL_OUTPUT_TEXTURE_COORD14_EXT = 0x87AB; + public static final int GL_OUTPUT_TEXTURE_COORD15_EXT = 0x87AC; + public static final int GL_OUTPUT_TEXTURE_COORD16_EXT = 0x87AD; + public static final int GL_OUTPUT_TEXTURE_COORD17_EXT = 0x87AE; + public static final int GL_OUTPUT_TEXTURE_COORD18_EXT = 0x87AF; + public static final int GL_OUTPUT_TEXTURE_COORD19_EXT = 0x87B0; + public static final int GL_OUTPUT_TEXTURE_COORD20_EXT = 0x87B1; + public static final int GL_OUTPUT_TEXTURE_COORD21_EXT = 0x87B2; + public static final int GL_OUTPUT_TEXTURE_COORD22_EXT = 0x87B3; + public static final int GL_OUTPUT_TEXTURE_COORD23_EXT = 0x87B4; + public static final int GL_OUTPUT_TEXTURE_COORD24_EXT = 0x87B5; + public static final int GL_OUTPUT_TEXTURE_COORD25_EXT = 0x87B6; + public static final int GL_OUTPUT_TEXTURE_COORD26_EXT = 0x87B7; + public static final int GL_OUTPUT_TEXTURE_COORD27_EXT = 0x87B8; + public static final int GL_OUTPUT_TEXTURE_COORD28_EXT = 0x87B9; + public static final int GL_OUTPUT_TEXTURE_COORD29_EXT = 0x87BA; + public static final int GL_OUTPUT_TEXTURE_COORD30_EXT = 0x87BB; + public static final int GL_OUTPUT_TEXTURE_COORD31_EXT = 0x87BC; + public static final int GL_OUTPUT_FOG_EXT = 0x87BD; + public static final int GL_SCALAR_EXT = 0x87BE; + public static final int GL_VECTOR_EXT = 0x87BF; + public static final int GL_MATRIX_EXT = 0x87C0; + public static final int GL_VARIANT_EXT = 0x87C1; + public static final int GL_INVARIANT_EXT = 0x87C2; + public static final int GL_LOCAL_CONSTANT_EXT = 0x87C3; + public static final int GL_LOCAL_EXT = 0x87C4; + public static final int GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87C5; + public static final int GL_MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87C6; + public static final int GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = 0x87C7; + public static final int GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87C8; + public static final int GL_MAX_VERTEX_SHADER_LOCALS_EXT = 0x87C9; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CA; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = 0x87CB; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = 0x87CC; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87CD; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = 0x87CE; + public static final int GL_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CF; + public static final int GL_VERTEX_SHADER_VARIANTS_EXT = 0x87D0; + public static final int GL_VERTEX_SHADER_INVARIANTS_EXT = 0x87D1; + public static final int GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87D2; + public static final int GL_VERTEX_SHADER_LOCALS_EXT = 0x87D3; + public static final int GL_VERTEX_SHADER_OPTIMIZED_EXT = 0x87D4; + public static final int GL_X_EXT = 0x87D5; + public static final int GL_Y_EXT = 0x87D6; + public static final int GL_Z_EXT = 0x87D7; + public static final int GL_W_EXT = 0x87D8; + public static final int GL_NEGATIVE_X_EXT = 0x87D9; + public static final int GL_NEGATIVE_Y_EXT = 0x87DA; + public static final int GL_NEGATIVE_Z_EXT = 0x87DB; + public static final int GL_NEGATIVE_W_EXT = 0x87DC; + public static final int GL_ZERO_EXT = 0x87DD; + public static final int GL_ONE_EXT = 0x87DE; + public static final int GL_NEGATIVE_ONE_EXT = 0x87DF; + public static final int GL_NORMALIZED_RANGE_EXT = 0x87E0; + public static final int GL_FULL_RANGE_EXT = 0x87E1; + public static final int GL_CURRENT_VERTEX_EXT = 0x87E2; + public static final int GL_MVP_MATRIX_EXT = 0x87E3; + public static final int GL_VARIANT_VALUE_EXT = 0x87E4; + public static final int GL_VARIANT_DATATYPE_EXT = 0x87E5; + public static final int GL_VARIANT_ARRAY_STRIDE_EXT = 0x87E6; + public static final int GL_VARIANT_ARRAY_TYPE_EXT = 0x87E7; + public static final int GL_VARIANT_ARRAY_EXT = 0x87E8; + public static final int GL_VARIANT_ARRAY_POINTER_EXT = 0x87E9; + public static final int GL_INVARIANT_VALUE_EXT = 0x87EA; + public static final int GL_INVARIANT_DATATYPE_EXT = 0x87EB; + public static final int GL_LOCAL_CONSTANT_VALUE_EXT = 0x87EC; + public static final int GL_LOCAL_CONSTANT_DATATYPE_EXT = 0x87ED; + + public void glBeginVertexShaderEXT(); + + public void glEndVertexShaderEXT(); + + public void glBindVertexShaderEXT(@GLuint int id); + + public @GLuint int glGenVertexShadersEXT(@GLuint int range); + + public void glDeleteVertexShaderEXT(@GLuint int id); + + public void glShaderOp1EXT(@GLenum int op, @GLuint int res, @GLuint int arg1); + + public void glShaderOp2EXT(@GLenum int op, @GLuint int res, @GLuint int arg1, @GLuint int arg2); + + public void glShaderOp3EXT(@GLenum int op, @GLuint int res, @GLuint int arg1, @GLuint int arg2, @GLuint int arg3); + + public void glSwizzleEXT(@GLuint int res, @GLuint int in, @GLenum int outX, @GLenum int outY, @GLenum int outZ, @GLenum int outW); + + public void glWriteMaskEXT(@GLuint int res, @GLuint int in, @GLenum int outX, @GLenum int outY, @GLenum int outZ, @GLenum int outW); + + public void glInsertComponentEXT(@GLuint int res, @GLuint int src, @GLuint int num); + + public void glExtractComponentEXT(@GLuint int res, @GLuint int src, @GLuint int num); + + public @GLuint int glGenSymbolsEXT(@GLenum int dataType, @GLenum int storageType, @GLenum int range, @GLuint int components); + + public void glSetInvariantEXT(@GLuint int id, @AutoType("pAddr") @GLenum int type, + @Check("4") + @GLbyte + @GLubyte + @GLshort + @GLushort + @GLint + @GLuint + @GLfloat + Buffer pAddr); + + public void glSetLocalConstantEXT(@GLuint int id, @AutoType("pAddr") @GLenum int type, + @Check("4") + @GLbyte + @GLubyte + @GLshort + @GLushort + @GLint + @GLuint + @GLfloat + Buffer pAddr); + + @StripPostfix("pAddr") + public void glVariantbvEXT(@GLuint int id, @Check("4") ByteBuffer pAddr); + @StripPostfix("pAddr") + public void glVariantsvEXT(@GLuint int id, @Check("4") ShortBuffer pAddr); + @StripPostfix("pAddr") + public void glVariantivEXT(@GLuint int id, @Check("4") IntBuffer pAddr); + @StripPostfix("pAddr") + public void glVariantfvEXT(@GLuint int id, @Check("4") FloatBuffer pAddr); + + @StripPostfix("pAddr") + public void glVariantubvEXT(@GLuint int id, @Check("4") @GLubyte ByteBuffer pAddr); + @StripPostfix("pAddr") + public void glVariantusvEXT(@GLuint int id, @Check("4") @GLushort ShortBuffer pAddr); + @StripPostfix("pAddr") + public void glVariantuivEXT(@GLuint int id, @Check("4") @GLuint IntBuffer pAddr); + + public void glVariantPointerEXT(@GLuint int id, @AutoType("pAddr") @GLenum int type, @GLuint int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @GLbyte + @GLshort + @GLint + @GLubyte + @GLushort + @GLuint + @GLfloat + Buffer pAddr); + + public void glEnableVariantClientStateEXT(@GLuint int id); + + public void glDisableVariantClientStateEXT(@GLuint int id); + + public @GLuint int glBindLightParameterEXT(@GLenum int light, @GLenum int value); + + public @GLuint int glBindMaterialParameterEXT(@GLenum int face, @GLenum int value); + + public @GLuint int glBindTexGenParameterEXT(@GLenum int unit, @GLenum int coord, @GLenum int value); + + public @GLuint int glBindTextureUnitParameterEXT(@GLenum int unit, @GLenum int value); + + public @GLuint int glBindParameterEXT(@GLenum int value); + + public boolean glIsVariantEnabledEXT(@GLuint int id, @GLenum int cap); + + @StripPostfix("pbData") + public void glGetVariantBooleanvEXT(@GLuint int id, @GLenum int value, @Check("4") ByteBuffer pbData); + @StripPostfix("pbData") + public void glGetVariantIntegervEXT(@GLuint int id, @GLenum int value, @Check("4") IntBuffer pbData); + @StripPostfix("pbData") + public void glGetVariantFloatvEXT(@GLuint int id, @GLenum int value, @Check("4") FloatBuffer pbData); + @StripPostfix("pbData") + public void glGetVariantPointervEXT(@GLuint int id, @GLenum int value, @Result @GLvoid ByteBuffer pbData); + + @StripPostfix("pbData") + public void glGetInvariantBooleanvEXT(@GLuint int id, @GLenum int value, @Check("4") ByteBuffer pbData); + @StripPostfix("pbData") + public void glGetInvariantIntegervEXT(@GLuint int id, @GLenum int value, @Check("4") IntBuffer pbData); + @StripPostfix("pbData") + public void glGetInvariantFloatvEXT(@GLuint int id, @GLenum int value, @Check("4") FloatBuffer pbData); + + @StripPostfix("pbData") + public void glGetLocalConstantBooleanvEXT(@GLuint int id, @GLenum int value, @Check("4") ByteBuffer pbData); + @StripPostfix("pbData") + public void glGetLocalConstantIntegervEXT(@GLuint int id, @GLenum int value, @Check("4") IntBuffer pbData); + @StripPostfix("pbData") + public void glGetLocalConstantFloatvEXT(@GLuint int id, @GLenum int value, @Check("4") FloatBuffer pbData); +} diff --git a/src/templates/org/lwjgl/opengl/EXT_vertex_weighting.java b/src/templates/org/lwjgl/opengl/EXT_vertex_weighting.java new file mode 100644 index 00000000..7e7f3fd4 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/EXT_vertex_weighting.java @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.FloatBuffer; + +import org.lwjgl.generator.*; + +public interface EXT_vertex_weighting { + public static final int GL_MODELVIEW0_STACK_DEPTH_EXT = 0x0BA3; + public static final int GL_MODELVIEW1_STACK_DEPTH_EXT = 0x8502; + public static final int GL_MODELVIEW0_MATRIX_EXT = 0x0BA6; + public static final int GL_MODELVIEW1_MATRIX_EXT = 0x8506; + public static final int GL_VERTEX_WEIGHTING_EXT = 0x8509; + public static final int GL_MODELVIEW0_EXT = 0x1700; + public static final int GL_MODELVIEW1_EXT = 0x850A; + public static final int GL_CURRENT_VERTEX_WEIGHT_EXT = 0x850B; + public static final int GL_VERTEX_WEIGHT_ARRAY_EXT = 0x850C; + public static final int GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT = 0x850D; + public static final int GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT = 0x850E; + public static final int GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT = 0x850F; + public static final int GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT = 0x8510; + + public void glVertexWeightfEXT(float weight); + + public void glVertexWeightPointerEXT(@GLsizei int size, @AutoType("pPointer") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLfloat + Buffer pPointer); +} diff --git a/src/templates/org/lwjgl/opengl/GL11.java b/src/templates/org/lwjgl/opengl/GL11.java new file mode 100644 index 00000000..333a2da9 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/GL11.java @@ -0,0 +1,1140 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.*; + +import org.lwjgl.generator.*; + +/** + * $Id$ + * + * The core OpenGL1.1 API. + * + * @author cix_foo + * @version $Revision$ + */ + +public interface GL11 { + /* AccumOp */ + public static final int GL_ACCUM = 0x0100; + public static final int GL_LOAD = 0x0101; + public static final int GL_RETURN = 0x0102; + public static final int GL_MULT = 0x0103; + public static final int GL_ADD = 0x0104; + + /* AlphaFunction */ + public static final int GL_NEVER = 0x0200; + public static final int GL_LESS = 0x0201; + public static final int GL_EQUAL = 0x0202; + public static final int GL_LEQUAL = 0x0203; + public static final int GL_GREATER = 0x0204; + public static final int GL_NOTEQUAL = 0x0205; + public static final int GL_GEQUAL = 0x0206; + public static final int GL_ALWAYS = 0x0207; + + /* AttribMask */ + public static final int GL_CURRENT_BIT = 0x00000001; + public static final int GL_POINT_BIT = 0x00000002; + public static final int GL_LINE_BIT = 0x00000004; + public static final int GL_POLYGON_BIT = 0x00000008; + public static final int GL_POLYGON_STIPPLE_BIT = 0x00000010; + public static final int GL_PIXEL_MODE_BIT = 0x00000020; + public static final int GL_LIGHTING_BIT = 0x00000040; + public static final int GL_FOG_BIT = 0x00000080; + public static final int GL_DEPTH_BUFFER_BIT = 0x00000100; + public static final int GL_ACCUM_BUFFER_BIT = 0x00000200; + public static final int GL_STENCIL_BUFFER_BIT = 0x00000400; + public static final int GL_VIEWPORT_BIT = 0x00000800; + public static final int GL_TRANSFORM_BIT = 0x00001000; + public static final int GL_ENABLE_BIT = 0x00002000; + public static final int GL_COLOR_BUFFER_BIT = 0x00004000; + public static final int GL_HINT_BIT = 0x00008000; + public static final int GL_EVAL_BIT = 0x00010000; + public static final int GL_LIST_BIT = 0x00020000; + public static final int GL_TEXTURE_BIT = 0x00040000; + public static final int GL_SCISSOR_BIT = 0x00080000; + public static final int GL_ALL_ATTRIB_BITS = 0x000fffff; + + /* BeginMode */ + public static final int GL_POINTS = 0x0000; + public static final int GL_LINES = 0x0001; + public static final int GL_LINE_LOOP = 0x0002; + public static final int GL_LINE_STRIP = 0x0003; + public static final int GL_TRIANGLES = 0x0004; + public static final int GL_TRIANGLE_STRIP = 0x0005; + public static final int GL_TRIANGLE_FAN = 0x0006; + public static final int GL_QUADS = 0x0007; + public static final int GL_QUAD_STRIP = 0x0008; + public static final int GL_POLYGON = 0x0009; + + /* BlendingFactorDest */ + public static final int GL_ZERO = 0; + public static final int GL_ONE = 1; + public static final int GL_SRC_COLOR = 0x0300; + public static final int GL_ONE_MINUS_SRC_COLOR = 0x0301; + public static final int GL_SRC_ALPHA = 0x0302; + public static final int GL_ONE_MINUS_SRC_ALPHA = 0x0303; + public static final int GL_DST_ALPHA = 0x0304; + public static final int GL_ONE_MINUS_DST_ALPHA = 0x0305; + + /* BlendingFactorSrc */ + /* GL_ZERO */ + /* GL_ONE */ + public static final int GL_DST_COLOR = 0x0306; + public static final int GL_ONE_MINUS_DST_COLOR = 0x0307; + public static final int GL_SRC_ALPHA_SATURATE = 0x0308; + public static final int GL_CONSTANT_COLOR = 0x8001; + public static final int GL_ONE_MINUS_CONSTANT_COLOR = 0x8002; + public static final int GL_CONSTANT_ALPHA = 0x8003; + public static final int GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004; + + /* Boolean */ + public static final int GL_TRUE = 1; + public static final int GL_FALSE = 0; + + /* ClipPlaneName */ + public static final int GL_CLIP_PLANE0 = 0x3000; + public static final int GL_CLIP_PLANE1 = 0x3001; + public static final int GL_CLIP_PLANE2 = 0x3002; + public static final int GL_CLIP_PLANE3 = 0x3003; + public static final int GL_CLIP_PLANE4 = 0x3004; + public static final int GL_CLIP_PLANE5 = 0x3005; + + /* DataType */ + public static final int GL_BYTE = 0x1400; + public static final int GL_UNSIGNED_BYTE = 0x1401; + public static final int GL_SHORT = 0x1402; + public static final int GL_UNSIGNED_SHORT = 0x1403; + public static final int GL_INT = 0x1404; + public static final int GL_UNSIGNED_INT = 0x1405; + public static final int GL_FLOAT = 0x1406; + public static final int GL_2_BYTES = 0x1407; + public static final int GL_3_BYTES = 0x1408; + public static final int GL_4_BYTES = 0x1409; + public static final int GL_DOUBLE = 0x140A; + + /* DrawBufferMode */ + public static final int GL_NONE = 0; + public static final int GL_FRONT_LEFT = 0x0400; + public static final int GL_FRONT_RIGHT = 0x0401; + public static final int GL_BACK_LEFT = 0x0402; + public static final int GL_BACK_RIGHT = 0x0403; + public static final int GL_FRONT = 0x0404; + public static final int GL_BACK = 0x0405; + public static final int GL_LEFT = 0x0406; + public static final int GL_RIGHT = 0x0407; + public static final int GL_FRONT_AND_BACK = 0x0408; + public static final int GL_AUX0 = 0x0409; + public static final int GL_AUX1 = 0x040A; + public static final int GL_AUX2 = 0x040B; + public static final int GL_AUX3 = 0x040C; + + /* ErrorCode */ + public static final int GL_NO_ERROR = 0; + public static final int GL_INVALID_ENUM = 0x0500; + public static final int GL_INVALID_VALUE = 0x0501; + public static final int GL_INVALID_OPERATION = 0x0502; + public static final int GL_STACK_OVERFLOW = 0x0503; + public static final int GL_STACK_UNDERFLOW = 0x0504; + public static final int GL_OUT_OF_MEMORY = 0x0505; + + /* FeedBackMode */ + public static final int GL_2D = 0x0600; + public static final int GL_3D = 0x0601; + public static final int GL_3D_COLOR = 0x0602; + public static final int GL_3D_COLOR_TEXTURE = 0x0603; + public static final int GL_4D_COLOR_TEXTURE = 0x0604; + + /* FeedBackToken */ + public static final int GL_PASS_THROUGH_TOKEN = 0x0700; + public static final int GL_POINT_TOKEN = 0x0701; + public static final int GL_LINE_TOKEN = 0x0702; + public static final int GL_POLYGON_TOKEN = 0x0703; + public static final int GL_BITMAP_TOKEN = 0x0704; + public static final int GL_DRAW_PIXEL_TOKEN = 0x0705; + public static final int GL_COPY_PIXEL_TOKEN = 0x0706; + public static final int GL_LINE_RESET_TOKEN = 0x0707; + + /* FogMode */ + /* GL_LINEAR */ + public static final int GL_EXP = 0x0800; + public static final int GL_EXP2 = 0x0801; + + /* FrontFaceDirection */ + public static final int GL_CW = 0x0900; + public static final int GL_CCW = 0x0901; + + /* GetMapTarget */ + public static final int GL_COEFF = 0x0A00; + public static final int GL_ORDER = 0x0A01; + public static final int GL_DOMAIN = 0x0A02; + + /* GetTarget */ + public static final int GL_CURRENT_COLOR = 0x0B00; + public static final int GL_CURRENT_INDEX = 0x0B01; + public static final int GL_CURRENT_NORMAL = 0x0B02; + public static final int GL_CURRENT_TEXTURE_COORDS = 0x0B03; + public static final int GL_CURRENT_RASTER_COLOR = 0x0B04; + public static final int GL_CURRENT_RASTER_INDEX = 0x0B05; + public static final int GL_CURRENT_RASTER_TEXTURE_COORDS = 0x0B06; + public static final int GL_CURRENT_RASTER_POSITION = 0x0B07; + public static final int GL_CURRENT_RASTER_POSITION_VALID = 0x0B08; + public static final int GL_CURRENT_RASTER_DISTANCE = 0x0B09; + public static final int GL_POINT_SMOOTH = 0x0B10; + public static final int GL_POINT_SIZE = 0x0B11; + public static final int GL_POINT_SIZE_RANGE = 0x0B12; + public static final int GL_POINT_SIZE_GRANULARITY = 0x0B13; + public static final int GL_LINE_SMOOTH = 0x0B20; + public static final int GL_LINE_WIDTH = 0x0B21; + public static final int GL_LINE_WIDTH_RANGE = 0x0B22; + public static final int GL_LINE_WIDTH_GRANULARITY = 0x0B23; + public static final int GL_LINE_STIPPLE = 0x0B24; + public static final int GL_LINE_STIPPLE_PATTERN = 0x0B25; + public static final int GL_LINE_STIPPLE_REPEAT = 0x0B26; + public static final int GL_LIST_MODE = 0x0B30; + public static final int GL_MAX_LIST_NESTING = 0x0B31; + public static final int GL_LIST_BASE = 0x0B32; + public static final int GL_LIST_INDEX = 0x0B33; + public static final int GL_POLYGON_MODE = 0x0B40; + public static final int GL_POLYGON_SMOOTH = 0x0B41; + public static final int GL_POLYGON_STIPPLE = 0x0B42; + public static final int GL_EDGE_FLAG = 0x0B43; + public static final int GL_CULL_FACE = 0x0B44; + public static final int GL_CULL_FACE_MODE = 0x0B45; + public static final int GL_FRONT_FACE = 0x0B46; + public static final int GL_LIGHTING = 0x0B50; + public static final int GL_LIGHT_MODEL_LOCAL_VIEWER = 0x0B51; + public static final int GL_LIGHT_MODEL_TWO_SIDE = 0x0B52; + public static final int GL_LIGHT_MODEL_AMBIENT = 0x0B53; + public static final int GL_SHADE_MODEL = 0x0B54; + public static final int GL_COLOR_MATERIAL_FACE = 0x0B55; + public static final int GL_COLOR_MATERIAL_PARAMETER = 0x0B56; + public static final int GL_COLOR_MATERIAL = 0x0B57; + public static final int GL_FOG = 0x0B60; + public static final int GL_FOG_INDEX = 0x0B61; + public static final int GL_FOG_DENSITY = 0x0B62; + public static final int GL_FOG_START = 0x0B63; + public static final int GL_FOG_END = 0x0B64; + public static final int GL_FOG_MODE = 0x0B65; + public static final int GL_FOG_COLOR = 0x0B66; + public static final int GL_DEPTH_RANGE = 0x0B70; + public static final int GL_DEPTH_TEST = 0x0B71; + public static final int GL_DEPTH_WRITEMASK = 0x0B72; + public static final int GL_DEPTH_CLEAR_VALUE = 0x0B73; + public static final int GL_DEPTH_FUNC = 0x0B74; + public static final int GL_ACCUM_CLEAR_VALUE = 0x0B80; + public static final int GL_STENCIL_TEST = 0x0B90; + public static final int GL_STENCIL_CLEAR_VALUE = 0x0B91; + public static final int GL_STENCIL_FUNC = 0x0B92; + public static final int GL_STENCIL_VALUE_MASK = 0x0B93; + public static final int GL_STENCIL_FAIL = 0x0B94; + public static final int GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95; + public static final int GL_STENCIL_PASS_DEPTH_PASS = 0x0B96; + public static final int GL_STENCIL_REF = 0x0B97; + public static final int GL_STENCIL_WRITEMASK = 0x0B98; + public static final int GL_MATRIX_MODE = 0x0BA0; + public static final int GL_NORMALIZE = 0x0BA1; + public static final int GL_VIEWPORT = 0x0BA2; + public static final int GL_MODELVIEW_STACK_DEPTH = 0x0BA3; + public static final int GL_PROJECTION_STACK_DEPTH = 0x0BA4; + public static final int GL_TEXTURE_STACK_DEPTH = 0x0BA5; + public static final int GL_MODELVIEW_MATRIX = 0x0BA6; + public static final int GL_PROJECTION_MATRIX = 0x0BA7; + public static final int GL_TEXTURE_MATRIX = 0x0BA8; + public static final int GL_ATTRIB_STACK_DEPTH = 0x0BB0; + public static final int GL_CLIENT_ATTRIB_STACK_DEPTH = 0x0BB1; + public static final int GL_ALPHA_TEST = 0x0BC0; + public static final int GL_ALPHA_TEST_FUNC = 0x0BC1; + public static final int GL_ALPHA_TEST_REF = 0x0BC2; + public static final int GL_DITHER = 0x0BD0; + public static final int GL_BLEND_DST = 0x0BE0; + public static final int GL_BLEND_SRC = 0x0BE1; + public static final int GL_BLEND = 0x0BE2; + public static final int GL_LOGIC_OP_MODE = 0x0BF0; + public static final int GL_INDEX_LOGIC_OP = 0x0BF1; + public static final int GL_COLOR_LOGIC_OP = 0x0BF2; + public static final int GL_AUX_BUFFERS = 0x0C00; + public static final int GL_DRAW_BUFFER = 0x0C01; + public static final int GL_READ_BUFFER = 0x0C02; + public static final int GL_SCISSOR_BOX = 0x0C10; + public static final int GL_SCISSOR_TEST = 0x0C11; + public static final int GL_INDEX_CLEAR_VALUE = 0x0C20; + public static final int GL_INDEX_WRITEMASK = 0x0C21; + public static final int GL_COLOR_CLEAR_VALUE = 0x0C22; + public static final int GL_COLOR_WRITEMASK = 0x0C23; + public static final int GL_INDEX_MODE = 0x0C30; + public static final int GL_RGBA_MODE = 0x0C31; + public static final int GL_DOUBLEBUFFER = 0x0C32; + public static final int GL_STEREO = 0x0C33; + public static final int GL_RENDER_MODE = 0x0C40; + public static final int GL_PERSPECTIVE_CORRECTION_HINT = 0x0C50; + public static final int GL_POINT_SMOOTH_HINT = 0x0C51; + public static final int GL_LINE_SMOOTH_HINT = 0x0C52; + public static final int GL_POLYGON_SMOOTH_HINT = 0x0C53; + public static final int GL_FOG_HINT = 0x0C54; + public static final int GL_TEXTURE_GEN_S = 0x0C60; + public static final int GL_TEXTURE_GEN_T = 0x0C61; + public static final int GL_TEXTURE_GEN_R = 0x0C62; + public static final int GL_TEXTURE_GEN_Q = 0x0C63; + public static final int GL_PIXEL_MAP_I_TO_I = 0x0C70; + public static final int GL_PIXEL_MAP_S_TO_S = 0x0C71; + public static final int GL_PIXEL_MAP_I_TO_R = 0x0C72; + public static final int GL_PIXEL_MAP_I_TO_G = 0x0C73; + public static final int GL_PIXEL_MAP_I_TO_B = 0x0C74; + public static final int GL_PIXEL_MAP_I_TO_A = 0x0C75; + public static final int GL_PIXEL_MAP_R_TO_R = 0x0C76; + public static final int GL_PIXEL_MAP_G_TO_G = 0x0C77; + public static final int GL_PIXEL_MAP_B_TO_B = 0x0C78; + public static final int GL_PIXEL_MAP_A_TO_A = 0x0C79; + public static final int GL_PIXEL_MAP_I_TO_I_SIZE = 0x0CB0; + public static final int GL_PIXEL_MAP_S_TO_S_SIZE = 0x0CB1; + public static final int GL_PIXEL_MAP_I_TO_R_SIZE = 0x0CB2; + public static final int GL_PIXEL_MAP_I_TO_G_SIZE = 0x0CB3; + public static final int GL_PIXEL_MAP_I_TO_B_SIZE = 0x0CB4; + public static final int GL_PIXEL_MAP_I_TO_A_SIZE = 0x0CB5; + public static final int GL_PIXEL_MAP_R_TO_R_SIZE = 0x0CB6; + public static final int GL_PIXEL_MAP_G_TO_G_SIZE = 0x0CB7; + public static final int GL_PIXEL_MAP_B_TO_B_SIZE = 0x0CB8; + public static final int GL_PIXEL_MAP_A_TO_A_SIZE = 0x0CB9; + public static final int GL_UNPACK_SWAP_BYTES = 0x0CF0; + public static final int GL_UNPACK_LSB_FIRST = 0x0CF1; + public static final int GL_UNPACK_ROW_LENGTH = 0x0CF2; + public static final int GL_UNPACK_SKIP_ROWS = 0x0CF3; + public static final int GL_UNPACK_SKIP_PIXELS = 0x0CF4; + public static final int GL_UNPACK_ALIGNMENT = 0x0CF5; + public static final int GL_PACK_SWAP_BYTES = 0x0D00; + public static final int GL_PACK_LSB_FIRST = 0x0D01; + public static final int GL_PACK_ROW_LENGTH = 0x0D02; + public static final int GL_PACK_SKIP_ROWS = 0x0D03; + public static final int GL_PACK_SKIP_PIXELS = 0x0D04; + public static final int GL_PACK_ALIGNMENT = 0x0D05; + public static final int GL_MAP_COLOR = 0x0D10; + public static final int GL_MAP_STENCIL = 0x0D11; + public static final int GL_INDEX_SHIFT = 0x0D12; + public static final int GL_INDEX_OFFSET = 0x0D13; + public static final int GL_RED_SCALE = 0x0D14; + public static final int GL_RED_BIAS = 0x0D15; + public static final int GL_ZOOM_X = 0x0D16; + public static final int GL_ZOOM_Y = 0x0D17; + public static final int GL_GREEN_SCALE = 0x0D18; + public static final int GL_GREEN_BIAS = 0x0D19; + public static final int GL_BLUE_SCALE = 0x0D1A; + public static final int GL_BLUE_BIAS = 0x0D1B; + public static final int GL_ALPHA_SCALE = 0x0D1C; + public static final int GL_ALPHA_BIAS = 0x0D1D; + public static final int GL_DEPTH_SCALE = 0x0D1E; + public static final int GL_DEPTH_BIAS = 0x0D1F; + public static final int GL_MAX_EVAL_ORDER = 0x0D30; + public static final int GL_MAX_LIGHTS = 0x0D31; + public static final int GL_MAX_CLIP_PLANES = 0x0D32; + public static final int GL_MAX_TEXTURE_SIZE = 0x0D33; + public static final int GL_MAX_PIXEL_MAP_TABLE = 0x0D34; + public static final int GL_MAX_ATTRIB_STACK_DEPTH = 0x0D35; + public static final int GL_MAX_MODELVIEW_STACK_DEPTH = 0x0D36; + public static final int GL_MAX_NAME_STACK_DEPTH = 0x0D37; + public static final int GL_MAX_PROJECTION_STACK_DEPTH = 0x0D38; + public static final int GL_MAX_TEXTURE_STACK_DEPTH = 0x0D39; + public static final int GL_MAX_VIEWPORT_DIMS = 0x0D3A; + public static final int GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = 0x0D3B; + public static final int GL_SUBPIXEL_BITS = 0x0D50; + public static final int GL_INDEX_BITS = 0x0D51; + public static final int GL_RED_BITS = 0x0D52; + public static final int GL_GREEN_BITS = 0x0D53; + public static final int GL_BLUE_BITS = 0x0D54; + public static final int GL_ALPHA_BITS = 0x0D55; + public static final int GL_DEPTH_BITS = 0x0D56; + public static final int GL_STENCIL_BITS = 0x0D57; + public static final int GL_ACCUM_RED_BITS = 0x0D58; + public static final int GL_ACCUM_GREEN_BITS = 0x0D59; + public static final int GL_ACCUM_BLUE_BITS = 0x0D5A; + public static final int GL_ACCUM_ALPHA_BITS = 0x0D5B; + public static final int GL_NAME_STACK_DEPTH = 0x0D70; + public static final int GL_AUTO_NORMAL = 0x0D80; + public static final int GL_MAP1_COLOR_4 = 0x0D90; + public static final int GL_MAP1_INDEX = 0x0D91; + public static final int GL_MAP1_NORMAL = 0x0D92; + public static final int GL_MAP1_TEXTURE_COORD_1 = 0x0D93; + public static final int GL_MAP1_TEXTURE_COORD_2 = 0x0D94; + public static final int GL_MAP1_TEXTURE_COORD_3 = 0x0D95; + public static final int GL_MAP1_TEXTURE_COORD_4 = 0x0D96; + public static final int GL_MAP1_VERTEX_3 = 0x0D97; + public static final int GL_MAP1_VERTEX_4 = 0x0D98; + public static final int GL_MAP2_COLOR_4 = 0x0DB0; + public static final int GL_MAP2_INDEX = 0x0DB1; + public static final int GL_MAP2_NORMAL = 0x0DB2; + public static final int GL_MAP2_TEXTURE_COORD_1 = 0x0DB3; + public static final int GL_MAP2_TEXTURE_COORD_2 = 0x0DB4; + public static final int GL_MAP2_TEXTURE_COORD_3 = 0x0DB5; + public static final int GL_MAP2_TEXTURE_COORD_4 = 0x0DB6; + public static final int GL_MAP2_VERTEX_3 = 0x0DB7; + public static final int GL_MAP2_VERTEX_4 = 0x0DB8; + public static final int GL_MAP1_GRID_DOMAIN = 0x0DD0; + public static final int GL_MAP1_GRID_SEGMENTS = 0x0DD1; + public static final int GL_MAP2_GRID_DOMAIN = 0x0DD2; + public static final int GL_MAP2_GRID_SEGMENTS = 0x0DD3; + public static final int GL_TEXTURE_1D = 0x0DE0; + public static final int GL_TEXTURE_2D = 0x0DE1; + public static final int GL_FEEDBACK_BUFFER_POINTER = 0x0DF0; + public static final int GL_FEEDBACK_BUFFER_SIZE = 0x0DF1; + public static final int GL_FEEDBACK_BUFFER_TYPE = 0x0DF2; + public static final int GL_SELECTION_BUFFER_POINTER = 0x0DF3; + public static final int GL_SELECTION_BUFFER_SIZE = 0x0DF4; + + /* GetTextureParameter */ + /* GL_TEXTURE_MAG_FILTER */ + /* GL_TEXTURE_MIN_FILTER */ + /* GL_TEXTURE_WRAP_S */ + /* GL_TEXTURE_WRAP_T */ + public static final int GL_TEXTURE_WIDTH = 0x1000; + public static final int GL_TEXTURE_HEIGHT = 0x1001; + public static final int GL_TEXTURE_INTERNAL_FORMAT = 0x1003; + public static final int GL_TEXTURE_BORDER_COLOR = 0x1004; + public static final int GL_TEXTURE_BORDER = 0x1005; + /* GL_TEXTURE_RED_SIZE */ + /* GL_TEXTURE_GREEN_SIZE */ + /* GL_TEXTURE_BLUE_SIZE */ + /* GL_TEXTURE_ALPHA_SIZE */ + /* GL_TEXTURE_LUMINANCE_SIZE */ + /* GL_TEXTURE_INTENSITY_SIZE */ + /* GL_TEXTURE_PRIORITY */ + /* GL_TEXTURE_RESIDENT */ + + /* HintMode */ + public static final int GL_DONT_CARE = 0x1100; + public static final int GL_FASTEST = 0x1101; + public static final int GL_NICEST = 0x1102; + + /* LightName */ + public static final int GL_LIGHT0 = 0x4000; + public static final int GL_LIGHT1 = 0x4001; + public static final int GL_LIGHT2 = 0x4002; + public static final int GL_LIGHT3 = 0x4003; + public static final int GL_LIGHT4 = 0x4004; + public static final int GL_LIGHT5 = 0x4005; + public static final int GL_LIGHT6 = 0x4006; + public static final int GL_LIGHT7 = 0x4007; + + /* LightParameter */ + public static final int GL_AMBIENT = 0x1200; + public static final int GL_DIFFUSE = 0x1201; + public static final int GL_SPECULAR = 0x1202; + public static final int GL_POSITION = 0x1203; + public static final int GL_SPOT_DIRECTION = 0x1204; + public static final int GL_SPOT_EXPONENT = 0x1205; + public static final int GL_SPOT_CUTOFF = 0x1206; + public static final int GL_CONSTANT_ATTENUATION = 0x1207; + public static final int GL_LINEAR_ATTENUATION = 0x1208; + public static final int GL_QUADRATIC_ATTENUATION = 0x1209; + + /* ListMode */ + public static final int GL_COMPILE = 0x1300; + public static final int GL_COMPILE_AND_EXECUTE = 0x1301; + + /* LogicOp */ + public static final int GL_CLEAR = 0x1500; + public static final int GL_AND = 0x1501; + public static final int GL_AND_REVERSE = 0x1502; + public static final int GL_COPY = 0x1503; + public static final int GL_AND_INVERTED = 0x1504; + public static final int GL_NOOP = 0x1505; + public static final int GL_XOR = 0x1506; + public static final int GL_OR = 0x1507; + public static final int GL_NOR = 0x1508; + public static final int GL_EQUIV = 0x1509; + public static final int GL_INVERT = 0x150A; + public static final int GL_OR_REVERSE = 0x150B; + public static final int GL_COPY_INVERTED = 0x150C; + public static final int GL_OR_INVERTED = 0x150D; + public static final int GL_NAND = 0x150E; + public static final int GL_SET = 0x150F; + + /* MaterialParameter */ + public static final int GL_EMISSION = 0x1600; + public static final int GL_SHININESS = 0x1601; + public static final int GL_AMBIENT_AND_DIFFUSE = 0x1602; + public static final int GL_COLOR_INDEXES = 0x1603; + /* GL_AMBIENT */ + /* GL_DIFFUSE */ + /* GL_SPECULAR */ + + /* MatrixMode */ + public static final int GL_MODELVIEW = 0x1700; + public static final int GL_PROJECTION = 0x1701; + public static final int GL_TEXTURE = 0x1702; + + /* PixelCopyType */ + public static final int GL_COLOR = 0x1800; + public static final int GL_DEPTH = 0x1801; + public static final int GL_STENCIL = 0x1802; + + /* PixelFormat */ + public static final int GL_COLOR_INDEX = 0x1900; + public static final int GL_STENCIL_INDEX = 0x1901; + public static final int GL_DEPTH_COMPONENT = 0x1902; + public static final int GL_RED = 0x1903; + public static final int GL_GREEN = 0x1904; + public static final int GL_BLUE = 0x1905; + public static final int GL_ALPHA = 0x1906; + public static final int GL_RGB = 0x1907; + public static final int GL_RGBA = 0x1908; + public static final int GL_LUMINANCE = 0x1909; + public static final int GL_LUMINANCE_ALPHA = 0x190A; + + /* PixelType */ + public static final int GL_BITMAP = 0x1A00; + /* GL_BYTE */ + /* GL_UNSIGNED_BYTE */ + /* GL_SHORT */ + /* GL_UNSIGNED_SHORT */ + /* GL_INT */ + /* GL_UNSIGNED_INT */ + /* GL_FLOAT */ + + /* PolygonMode */ + public static final int GL_POINT = 0x1B00; + public static final int GL_LINE = 0x1B01; + public static final int GL_FILL = 0x1B02; + + /* RenderingMode */ + public static final int GL_RENDER = 0x1C00; + public static final int GL_FEEDBACK = 0x1C01; + public static final int GL_SELECT = 0x1C02; + + /* ShadingModel */ + public static final int GL_FLAT = 0x1D00; + public static final int GL_SMOOTH = 0x1D01; + + /* StencilOp */ + /* GL_ZERO */ + public static final int GL_KEEP = 0x1E00; + public static final int GL_REPLACE = 0x1E01; + public static final int GL_INCR = 0x1E02; + public static final int GL_DECR = 0x1E03; + /* GL_INVERT */ + + /* StringName */ + public static final int GL_VENDOR = 0x1F00; + public static final int GL_RENDERER = 0x1F01; + public static final int GL_VERSION = 0x1F02; + public static final int GL_EXTENSIONS = 0x1F03; + + /* TextureCoordName */ + public static final int GL_S = 0x2000; + public static final int GL_T = 0x2001; + public static final int GL_R = 0x2002; + public static final int GL_Q = 0x2003; + + /* TexCoordPointerType */ + /* GL_SHORT */ + /* GL_INT */ + /* GL_FLOAT */ + /* GL_DOUBLE */ + + /* TextureEnvMode */ + public static final int GL_MODULATE = 0x2100; + public static final int GL_DECAL = 0x2101; + /* GL_BLEND */ + /* GL_REPLACE */ + + /* TextureEnvParameter */ + public static final int GL_TEXTURE_ENV_MODE = 0x2200; + public static final int GL_TEXTURE_ENV_COLOR = 0x2201; + + /* TextureEnvTarget */ + public static final int GL_TEXTURE_ENV = 0x2300; + + /* TextureGenMode */ + public static final int GL_EYE_LINEAR = 0x2400; + public static final int GL_OBJECT_LINEAR = 0x2401; + public static final int GL_SPHERE_MAP = 0x2402; + + /* TextureGenParameter */ + public static final int GL_TEXTURE_GEN_MODE = 0x2500; + public static final int GL_OBJECT_PLANE = 0x2501; + public static final int GL_EYE_PLANE = 0x2502; + + /* TextureMagFilter */ + public static final int GL_NEAREST = 0x2600; + public static final int GL_LINEAR = 0x2601; + + /* TextureMinFilter */ + /* GL_NEAREST */ + /* GL_LINEAR */ + public static final int GL_NEAREST_MIPMAP_NEAREST = 0x2700; + public static final int GL_LINEAR_MIPMAP_NEAREST = 0x2701; + public static final int GL_NEAREST_MIPMAP_LINEAR = 0x2702; + public static final int GL_LINEAR_MIPMAP_LINEAR = 0x2703; + + /* TextureParameterName */ + public static final int GL_TEXTURE_MAG_FILTER = 0x2800; + public static final int GL_TEXTURE_MIN_FILTER = 0x2801; + public static final int GL_TEXTURE_WRAP_S = 0x2802; + public static final int GL_TEXTURE_WRAP_T = 0x2803; + /* GL_TEXTURE_BORDER_COLOR */ + /* GL_TEXTURE_PRIORITY */ + + /* TextureWrapMode */ + public static final int GL_CLAMP = 0x2900; + public static final int GL_REPEAT = 0x2901; + + /* ClientAttribMask */ + public static final int GL_CLIENT_PIXEL_STORE_BIT = 0x00000001; + public static final int GL_CLIENT_VERTEX_ARRAY_BIT = 0x00000002; + public static final int GL_ALL_CLIENT_ATTRIB_BITS = 0xffffffff; + + /* polygon_offset */ + public static final int GL_POLYGON_OFFSET_FACTOR = 0x8038; + public static final int GL_POLYGON_OFFSET_UNITS = 0x2A00; + public static final int GL_POLYGON_OFFSET_POINT = 0x2A01; + public static final int GL_POLYGON_OFFSET_LINE = 0x2A02; + public static final int GL_POLYGON_OFFSET_FILL = 0x8037; + + /* texture */ + public static final int GL_ALPHA4 = 0x803B; + public static final int GL_ALPHA8 = 0x803C; + public static final int GL_ALPHA12 = 0x803D; + public static final int GL_ALPHA16 = 0x803E; + public static final int GL_LUMINANCE4 = 0x803F; + public static final int GL_LUMINANCE8 = 0x8040; + public static final int GL_LUMINANCE12 = 0x8041; + public static final int GL_LUMINANCE16 = 0x8042; + public static final int GL_LUMINANCE4_ALPHA4 = 0x8043; + public static final int GL_LUMINANCE6_ALPHA2 = 0x8044; + public static final int GL_LUMINANCE8_ALPHA8 = 0x8045; + public static final int GL_LUMINANCE12_ALPHA4 = 0x8046; + public static final int GL_LUMINANCE12_ALPHA12 = 0x8047; + public static final int GL_LUMINANCE16_ALPHA16 = 0x8048; + public static final int GL_INTENSITY = 0x8049; + public static final int GL_INTENSITY4 = 0x804A; + public static final int GL_INTENSITY8 = 0x804B; + public static final int GL_INTENSITY12 = 0x804C; + public static final int GL_INTENSITY16 = 0x804D; + public static final int GL_R3_G3_B2 = 0x2A10; + public static final int GL_RGB4 = 0x804F; + public static final int GL_RGB5 = 0x8050; + public static final int GL_RGB8 = 0x8051; + public static final int GL_RGB10 = 0x8052; + public static final int GL_RGB12 = 0x8053; + public static final int GL_RGB16 = 0x8054; + public static final int GL_RGBA2 = 0x8055; + public static final int GL_RGBA4 = 0x8056; + public static final int GL_RGB5_A1 = 0x8057; + public static final int GL_RGBA8 = 0x8058; + public static final int GL_RGB10_A2 = 0x8059; + public static final int GL_RGBA12 = 0x805A; + public static final int GL_RGBA16 = 0x805B; + public static final int GL_TEXTURE_RED_SIZE = 0x805C; + public static final int GL_TEXTURE_GREEN_SIZE = 0x805D; + public static final int GL_TEXTURE_BLUE_SIZE = 0x805E; + public static final int GL_TEXTURE_ALPHA_SIZE = 0x805F; + public static final int GL_TEXTURE_LUMINANCE_SIZE = 0x8060; + public static final int GL_TEXTURE_INTENSITY_SIZE = 0x8061; + public static final int GL_PROXY_TEXTURE_1D = 0x8063; + public static final int GL_PROXY_TEXTURE_2D = 0x8064; + + /* texture_object */ + public static final int GL_TEXTURE_PRIORITY = 0x8066; + public static final int GL_TEXTURE_RESIDENT = 0x8067; + public static final int GL_TEXTURE_BINDING_1D = 0x8068; + public static final int GL_TEXTURE_BINDING_2D = 0x8069; + + /* vertex_array */ + public static final int GL_VERTEX_ARRAY = 0x8074; + public static final int GL_NORMAL_ARRAY = 0x8075; + public static final int GL_COLOR_ARRAY = 0x8076; + public static final int GL_INDEX_ARRAY = 0x8077; + public static final int GL_TEXTURE_COORD_ARRAY = 0x8078; + public static final int GL_EDGE_FLAG_ARRAY = 0x8079; + public static final int GL_VERTEX_ARRAY_SIZE = 0x807A; + public static final int GL_VERTEX_ARRAY_TYPE = 0x807B; + public static final int GL_VERTEX_ARRAY_STRIDE = 0x807C; + public static final int GL_NORMAL_ARRAY_TYPE = 0x807E; + public static final int GL_NORMAL_ARRAY_STRIDE = 0x807F; + public static final int GL_COLOR_ARRAY_SIZE = 0x8081; + public static final int GL_COLOR_ARRAY_TYPE = 0x8082; + public static final int GL_COLOR_ARRAY_STRIDE = 0x8083; + public static final int GL_INDEX_ARRAY_TYPE = 0x8085; + public static final int GL_INDEX_ARRAY_STRIDE = 0x8086; + public static final int GL_TEXTURE_COORD_ARRAY_SIZE = 0x8088; + public static final int GL_TEXTURE_COORD_ARRAY_TYPE = 0x8089; + public static final int GL_TEXTURE_COORD_ARRAY_STRIDE = 0x808A; + public static final int GL_EDGE_FLAG_ARRAY_STRIDE = 0x808C; + public static final int GL_VERTEX_ARRAY_POINTER = 0x808E; + public static final int GL_NORMAL_ARRAY_POINTER = 0x808F; + public static final int GL_COLOR_ARRAY_POINTER = 0x8090; + public static final int GL_INDEX_ARRAY_POINTER = 0x8091; + public static final int GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092; + public static final int GL_EDGE_FLAG_ARRAY_POINTER = 0x8093; + public static final int GL_V2F = 0x2A20; + public static final int GL_V3F = 0x2A21; + public static final int GL_C4UB_V2F = 0x2A22; + public static final int GL_C4UB_V3F = 0x2A23; + public static final int GL_C3F_V3F = 0x2A24; + public static final int GL_N3F_V3F = 0x2A25; + public static final int GL_C4F_N3F_V3F = 0x2A26; + public static final int GL_T2F_V3F = 0x2A27; + public static final int GL_T4F_V4F = 0x2A28; + public static final int GL_T2F_C4UB_V3F = 0x2A29; + public static final int GL_T2F_C3F_V3F = 0x2A2A; + public static final int GL_T2F_N3F_V3F = 0x2A2B; + public static final int GL_T2F_C4F_N3F_V3F = 0x2A2C; + public static final int GL_T4F_C4F_N3F_V4F = 0x2A2D; + + /* For compatibility with OpenGL v1.0 */ + public static final int GL_LOGIC_OP = GL_INDEX_LOGIC_OP; + public static final int GL_TEXTURE_COMPONENTS = GL_TEXTURE_INTERNAL_FORMAT; + + public void glAccum(@GLenum int op, float value); + public void glAlphaFunc(@GLenum int func, @GLclampf float ref); + public void glClearColor(@GLclampf float red, @GLclampf float green, @GLclampf float blue, @GLclampf float alpha); + public void glClearAccum(float red, float green, float blue, float alpha); + public void glClear(@GLbitfield int mask); + + public void glCallLists(@AutoSize("lists") @GLsizei int n, @AutoType("lists") @GLenum int type, + @Const + @GLubyte + @GLushort + @GLuint + Buffer lists); + + public void glCallList(@GLuint int list); + public void glBlendFunc(@GLenum int sfactor, @GLenum int dfactor); + + public void glBitmap(@GLsizei int width, @GLsizei int height, float xorig, float yorig, float xmove, float ymove, + @BufferObject(BufferKind.UnpackPBO) + @Check("(((width + 7)/8)*height)") + @Const + @GLubyte + ByteBuffer bitmap); + + public void glBindTexture(@GLenum int target, @GLuint int texture); + public void glBegin(@GLenum int mode); + public void glEnd(); + public void glArrayElement(int i); + public void glClearDepth(@GLclampd double depth); + public void glDeleteLists(@GLuint int list, @GLsizei int range); + + public void glDeleteTextures(@AutoSize("textures") @GLsizei int n, @Const @GLuint IntBuffer textures); + + public void glCullFace(@GLenum int mode); + public void glCopyTexSubImage2D(@GLenum int target, int level, int xoffset, int yoffset, int x, int y, @GLsizei int width, @GLsizei int height); + public void glCopyTexSubImage1D(@GLenum int target, int level, int xoffset, int x, int y, @GLsizei int width); + public void glCopyTexImage2D(@GLenum int target, int level, int internalFormat, int x, int y, @GLsizei int width, @GLsizei int height, int border); + public void glCopyTexImage1D(@GLenum int target, int level, int internalFormat, int x, int y, @GLsizei int width, int border); + public void glCopyPixels(int x, int y, int width, int height, int type); + + public void glColorPointer(int size, @AutoType("pointer") @GLenum int type, @GLsizei int stride, + @Check + @BufferObject(BufferKind.ArrayVBO) + @Const + @GLfloat + @GLubyte + @GLbyte + Buffer pointer); + + public void glColorMaterial(@GLenum int face, @GLenum int mode); + public void glColorMask(boolean red, boolean green, boolean blue, boolean alpha); + public void glColor3b(byte red, byte green, byte blue); + public void glColor3f(float red, float green, float blue); + public void glColor3ub(@GLubyte byte red, @GLubyte byte green, @GLubyte byte blue); + public void glColor4b(byte red, byte green, byte blue, byte alpha); + public void glColor4f(float red, float green, float blue, float alpha); + public void glColor4ub(@GLubyte byte red, @GLubyte byte green, @GLubyte byte blue, @GLubyte byte alpha); + + public void glClipPlane(@GLenum int plane, @Check("4") @Const DoubleBuffer equation); + + public void glClearStencil(int s); + public void glClearIndex(float c); + public void glEvalPoint1(int i); + public void glEvalPoint2(int i, int j); + public void glEvalMesh1(@GLenum int mode, int i1, int i2); + public void glEvalMesh2(@GLenum int mode, int i1, int i2, int j1, int j2); + public void glEvalCoord1f(float u); + public void glEvalCoord2f(float u, float v); + public void glEnableClientState(@GLenum int cap); + public void glDisableClientState(@GLenum int cap); + public void glEnable(@GLenum int cap); + public void glDisable(@GLenum int cap); + public void glEdgeFlagPointer(int stride, @BufferObject(BufferKind.ArrayVBO) @Check @Const @GLbyte Buffer pointer); + + public void glEdgeFlag(boolean flag); + public void glDrawPixels(@GLsizei int width, @GLsizei int height, @GLenum int format, @GLenum int type, + @Check("GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)") + @BufferObject(BufferKind.UnpackPBO) + @Const + @GLbyte + @GLshort + @GLint + Buffer pixels); + + public void glDrawElements(@GLenum int mode, @AutoSize("indices") @GLsizei int count, @AutoType("indices") @GLenum int type, + @BufferObject(BufferKind.ElementVBO) + @Const + @GLubyte + @GLushort + @GLuint + Buffer indices); + + public void glDrawBuffer(@GLenum int mode); + public void glDrawArrays(@GLenum int mode, int first, @GLsizei int count); + public void glDepthRange(@GLclampd double zNear, @GLclampd double zFar); + public void glDepthMask(boolean flag); + public void glDepthFunc(@GLenum int func); + + public void glFeedbackBuffer(@AutoSize("buffer") @GLsizei int size, @GLenum int type, FloatBuffer buffer); + + @StripPostfix("values") + public void glGetPixelMapfv(@GLenum int map, @Check("256") @BufferObject(BufferKind.PackPBO) FloatBuffer values); + @StripPostfix("values") + public void glGetPixelMapuiv(@GLenum int map, @Check("256") @BufferObject(BufferKind.PackPBO) @GLuint IntBuffer values); + @StripPostfix("values") + public void glGetPixelMapusv(@GLenum int map, @Check("256") @BufferObject(BufferKind.PackPBO) @GLushort ShortBuffer values); + @StripPostfix("params") + public void glGetMaterialfv(@GLenum int face, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetMaterialiv(@GLenum int face, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("v") + public void glGetMapfv(@GLenum int target, @GLenum int query, @Check("256") FloatBuffer v); + @StripPostfix("v") + public void glGetMapiv(@GLenum int target, @GLenum int query, @Check("256") IntBuffer v); + + @StripPostfix("params") + public void glGetLightfv(@GLenum int light, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetLightiv(@GLenum int light, @GLenum int pname, @Check("4") IntBuffer params); + + public int glGetError(); + + public void glGetClipPlane(@GLenum int plane, @Check("4") DoubleBuffer equation); + + @StripPostfix("params") + public void glGetBooleanv(@GLenum int pname, @Check("16") @GLboolean ByteBuffer params); + + @StripPostfix("params") + public void glGetDoublev(@GLenum int pname, @Check("16") DoubleBuffer params); + + @StripPostfix("params") + public void glGetFloatv(@GLenum int pname, @Check("16") FloatBuffer params); + + @StripPostfix("params") + public void glGetIntegerv(@GLenum int pname, @Check("16") IntBuffer params); + + public void glGenTextures(@AutoSize("textures") @GLsizei int n, @GLuint IntBuffer textures); + + public @GLuint int glGenLists(@GLsizei int range); + public void glFrustum(double left, double right, double bottom, double top, double zNear, double zFar); + public void glFrontFace(@GLenum int mode); + public void glFogf(@GLenum int pname, float param); + public void glFogi(@GLenum int pname, int param); + + @StripPostfix("params") + public void glFogfv(@GLenum int pname, @Check("4") @Const FloatBuffer params); + + @StripPostfix("params") + public void glFogiv(@GLenum int pname, @Check("4") @Const IntBuffer params); + + public void glFlush(); + public void glFinish(); + + @StripPostfix("result") + public void glGetPointerv(@GLenum int pname, @Result @GLvoid ByteBuffer result); + public boolean glIsEnabled(@GLenum int cap); + + public void glInterleavedArrays(@GLenum int format, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pointer); + + public void glInitNames(); + public void glHint(@GLenum int target, @GLenum int mode); + + @StripPostfix("params") + public void glGetTexParameterfv(@GLenum int target, @GLenum int pname, @Check("4") FloatBuffer params); + + @StripPostfix("params") + public void glGetTexParameteriv(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("params") + public void glGetTexLevelParameterfv(@GLenum int target, int level, @GLenum int pname, @Check("4") FloatBuffer params); + + @StripPostfix("params") + public void glGetTexLevelParameteriv(@GLenum int target, int level, @GLenum int pname, @Check("4") IntBuffer params); + + public void glGetTexImage(@GLenum int target, int level, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.PackPBO) + @Check("GLBufferChecks.calculateImageStorage(pixels, format, type, 1, 1, 1)") + @GLbyte + @GLshort + @GLint + Buffer pixels); + + @StripPostfix("params") + public void glGetTexGeniv(@GLenum int coord, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("params") + public void glGetTexGenfv(@GLenum int coord, @GLenum int pname, @Check("4") FloatBuffer params); + + @StripPostfix("params") + public void glGetTexEnviv(@GLenum int coord, @GLenum int pname, @Check("4") IntBuffer params); + @StripPostfix("params") + public void glGetTexEnvfv(@GLenum int coord, @GLenum int pname, @Check("4") FloatBuffer params); + + @Const + public String glGetString(int name); + + public void glGetPolygonStipple(@BufferObject(BufferKind.PackPBO) @Check("1024") @GLubyte ByteBuffer mask); + + public boolean glIsList(@GLuint int list); + public void glMaterialf(@GLenum int face, @GLenum int pname, float param); + public void glMateriali(@GLenum int face, @GLenum int pname, int param); + + @StripPostfix("params") + public void glMaterialfv(@GLenum int face, @GLenum int pname, @Check("4") @Const FloatBuffer params); + + @StripPostfix("params") + public void glMaterialiv(@GLenum int face, @GLenum int pname, @Check("4") @Const IntBuffer params); + + public void glMapGrid1f(int un, float u1, float u2); + public void glMapGrid2f(int un, float u1, float u2, int vn, float v1, float v2); + + // TODO: check buffer size valid + public void glMap2f(@GLenum int target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, @Check @Const FloatBuffer points); + // TODO: check buffer size valid + public void glMap1f(@GLenum int target, float u1, float u2, int stride, int order, @Check @Const FloatBuffer points); + + public void glLogicOp(@GLenum int opcode); + public void glLoadName(@GLuint int name); + + @StripPostfix("m") + public void glLoadMatrixf(@Check("16") @Const FloatBuffer m); + + public void glLoadIdentity(); + public void glListBase(@GLuint int base); + public void glLineWidth(float width); + public void glLineStipple(int factor, @GLushort short pattern); + public void glLightModelf(@GLenum int pname, float param); + public void glLightModeli(@GLenum int pname, int param); + + @StripPostfix("params") + public void glLightModelfv(@GLenum int pname, @Check("4") @Const FloatBuffer params); + + @StripPostfix("params") + public void glLightModeliv(@GLenum int pname, @Check("4") @Const IntBuffer params); + public void glLightf(@GLenum int light, @GLenum int pname, float param); + public void glLighti(@GLenum int light, @GLenum int pname, int param); + + @StripPostfix("params") + public void glLightfv(@GLenum int light, @GLenum int pname, @Check("4") @Const FloatBuffer params); + @StripPostfix("params") + public void glLightiv(@GLenum int light, @GLenum int pname, @Check("4") @Const IntBuffer params); + + public boolean glIsTexture(@GLuint int texture); + public void glMatrixMode(@GLenum int mode); + public void glPolygonStipple(@BufferObject(BufferKind.UnpackPBO) @Check("1024") @Const @GLubyte ByteBuffer mask); + + public void glPolygonOffset(float factor, float units); + public void glPolygonMode(@GLenum int face, @GLenum int mode); + public void glPointSize(float size); + public void glPixelZoom(float xfactor, float yfactor); + public void glPixelTransferf(@GLenum int pname, float param); + public void glPixelTransferi(@GLenum int pname, int param); + public void glPixelStoref(@GLenum int pname, float param); + public void glPixelStorei(@GLenum int pname, int param); + + @StripPostfix("values") + public void glPixelMapfv(@GLenum int map, @AutoSize("values") @GLsizei int mapsize, @BufferObject(BufferKind.UnpackPBO) @Const FloatBuffer values); + @StripPostfix("values") + public void glPixelMapuiv(@GLenum int map, @AutoSize("values") @GLsizei int mapsize, @BufferObject(BufferKind.UnpackPBO) @Const @GLuint IntBuffer values); + @StripPostfix("values") + public void glPixelMapusv(@GLenum int map, @AutoSize("values") @GLsizei int mapsize, @BufferObject(BufferKind.UnpackPBO) @Const @GLushort ShortBuffer values); + + public void glPassThrough(float token); + public void glOrtho(double left, double right, double bottom, double top, double zNear, double zFar); + + public void glNormalPointer(@AutoType("pointer") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLint + @GLbyte + @GLfloat + Buffer pointer); + + public void glNormal3b(byte nx, byte ny, byte nz); + public void glNormal3f(float nx, float ny, float nz); + public void glNormal3i(int nx, int ny, int nz); + public void glNewList(@GLuint int list, @GLenum int mode); + public void glEndList(); + + @StripPostfix("m") + public void glMultMatrixf(@Check("16") @Const FloatBuffer m); + + public void glShadeModel(@GLenum int mode); + + public void glSelectBuffer(@AutoSize("buffer") @GLsizei int size, @GLuint IntBuffer buffer); + + public void glScissor(int x, int y, @GLsizei int width, @GLsizei int height); + public void glScalef(float x, float y, float z); + public void glRotatef(float angle, float x, float y, float z); + public int glRenderMode(@GLenum int mode); + public void glRectf(float x1, float y1, float x2, float y2); + public void glRecti(int x1, int y1, int x2, int y2); + + public void glReadPixels(int x, int y, @GLsizei int width, @GLsizei int height, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.PackPBO) + @Check("GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)") + @GLbyte + @GLshort + @GLint + Buffer pixels); + + public void glReadBuffer(@GLenum int mode); + public void glRasterPos2f(float x, float y); + public void glRasterPos2i(int x, int y); + public void glRasterPos3f(float x, float y, float z); + public void glRasterPos3i(int x, int y, int z); + public void glRasterPos4f(float x, float y, float z, float w); + public void glRasterPos4i(int x, int y, int z, int w); + public void glPushName(@GLuint int name); + public void glPopName(); + public void glPushMatrix(); + public void glPopMatrix(); + + @Code( " BufferObjectTracker.pushAttrib(mask);") + public void glPushClientAttrib(@GLbitfield int mask); + + @Code( " BufferObjectTracker.popAttrib();") + public void glPopClientAttrib(); + + public void glPushAttrib(@GLbitfield int mask); + public void glPopAttrib(); + public void glStencilFunc(@GLenum int func, int ref, @GLuint int mask); + + public void glVertexPointer(int size, @AutoType("pointer") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLint + @GLfloat + Buffer pointer); + + public void glVertex2f(float x, float y); + public void glVertex2i(int x, int y); + public void glVertex3f(float x, float y, float z); + public void glVertex3i(int x, int y, int z); + public void glVertex4f(float x, float y, float z, float w); + public void glVertex4i(int x, int y, int z, int w); + public void glTranslatef(float x, float y, float z); + + public void glTexImage1D(@GLenum int target, int level, int internalformat, @GLsizei int width, int border, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check(value="GLBufferChecks.calculateTexImage1DStorage(pixels, format, type, width, border)", canBeNull=true) + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pixels); + + public void glTexImage2D(@GLenum int target, int level, int internalformat, int width, int height, int border, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check(value="GLBufferChecks.calculateTexImage2DStorage(pixels, format, type, width, height, border)", canBeNull=true) + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pixels); + public void glTexSubImage1D(@GLenum int target, int level, int xoffset, @GLsizei int width, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check("GLBufferChecks.calculateImageStorage(pixels, format, type, width, 1, 1)") + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pixels); + public void glTexSubImage2D(@GLenum int target, int level, int xoffset, int yoffset, @GLsizei int width, @GLsizei int height, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check("GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, 1)") + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pixels); + + public void glTexParameterf(@GLenum int target, @GLenum int pname, float param); + public void glTexParameteri(@GLenum int target, @GLenum int pname, int param); + + @StripPostfix("param") + public void glTexParameterfv(@GLenum int target, @GLenum int pname, @Check("4") @Const FloatBuffer param); + @StripPostfix("param") + public void glTexParameteriv(@GLenum int target, @GLenum int pname, @Check("4") @Const IntBuffer param); + + public void glTexGenf(@GLenum int coord, @GLenum int pname, float param); + + @StripPostfix("params") + public void glTexGenfv(@GLenum int coord, @GLenum int pname, @Check("4") @Const FloatBuffer params); + + public void glTexGeni(@GLenum int coord, @GLenum int pname, int param); + + @StripPostfix("params") + public void glTexGeniv(@GLenum int coord, @GLenum int pname, @Check("4") @Const IntBuffer params); + + public void glTexEnvf(@GLenum int target, @GLenum int pname, float param); + public void glTexEnvi(@GLenum int target, @GLenum int pname, int param); + + @StripPostfix("params") + public void glTexEnvfv(@GLenum int target, @GLenum int pname, @Check("4") @Const FloatBuffer params); + + @StripPostfix("params") + public void glTexEnviv(@GLenum int target, @GLenum int pname, @Check("4") @Const IntBuffer params); + + public void glTexCoordPointer(int size, @AutoType("pointer") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) @Check @Const @GLfloat Buffer pointer); + + public void glTexCoord1f(float s); + public void glTexCoord2f(float s, float t); + public void glTexCoord3f(float s, float t, float r); + public void glTexCoord4f(float s, float t, float r, float q); + public void glStencilOp(@GLenum int fail, @GLenum int zfail, @GLenum int zpass); + public void glStencilMask(@GLuint int mask); + public void glViewport(int x, int y, @GLsizei int width, @GLsizei int height); +} diff --git a/src/templates/org/lwjgl/opengl/GL12.java b/src/templates/org/lwjgl/opengl/GL12.java new file mode 100644 index 00000000..38964fa5 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/GL12.java @@ -0,0 +1,128 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.generator.*; + +import org.lwjgl.BufferChecks; +import org.lwjgl.LWJGLException; + +/** + * $Id$ + *

+ * The core OpenGL1.2.1 API, with the imaging subset. + * + * @author cix_foo + * @version $Revision$ + */ + +public interface GL12 { + /* Error codes */ + public static final int GL_TABLE_TOO_LARGE = 0x8031; + + /* Enums */ + public static final int GL_PACK_SKIP_IMAGES = 0x806B; + public static final int GL_PACK_IMAGE_HEIGHT = 0x806C; + public static final int GL_UNPACK_SKIP_IMAGES = 0x806D; + public static final int GL_UNPACK_IMAGE_HEIGHT = 0x806E; + public static final int GL_TEXTURE_3D = 0x806F; + public static final int GL_PROXY_TEXTURE_3D = 0x8070; + public static final int GL_TEXTURE_DEPTH = 0x8071; + public static final int GL_TEXTURE_WRAP_R = 0x8072; + public static final int GL_MAX_3D_TEXTURE_SIZE = 0x8073; + public static final int GL_BGR = 0x80E0; + public static final int GL_BGRA = 0x80E1; + public static final int GL_UNSIGNED_BYTE_3_3_2 = 0x8032; + public static final int GL_UNSIGNED_BYTE_2_3_3_REV = 0x8362; + public static final int GL_UNSIGNED_SHORT_5_6_5 = 0x8363; + public static final int GL_UNSIGNED_SHORT_5_6_5_REV = 0x8364; + public static final int GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033; + public static final int GL_UNSIGNED_SHORT_4_4_4_4_REV = 0x8365; + public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034; + public static final int GL_UNSIGNED_SHORT_1_5_5_5_REV = 0x8366; + public static final int GL_UNSIGNED_INT_8_8_8_8 = 0x8035; + public static final int GL_UNSIGNED_INT_8_8_8_8_REV = 0x8367; + public static final int GL_UNSIGNED_INT_10_10_10_2 = 0x8036; + public static final int GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368; + public static final int GL_RESCALE_NORMAL = 0x803A; + public static final int GL_LIGHT_MODEL_COLOR_CONTROL = 0x81F8; + public static final int GL_SINGLE_COLOR = 0x81F9; + public static final int GL_SEPARATE_SPECULAR_COLOR = 0x81FA; + public static final int GL_CLAMP_TO_EDGE = 0x812F; + public static final int GL_TEXTURE_MIN_LOD = 0x813A; + public static final int GL_TEXTURE_MAX_LOD = 0x813B; + public static final int GL_TEXTURE_BASE_LEVEL = 0x813C; + public static final int GL_TEXTURE_MAX_LEVEL = 0x813D; + public static final int GL_MAX_ELEMENTS_VERTICES = 0x80E8; + public static final int GL_MAX_ELEMENTS_INDICES = 0x80E9; + public static final int GL_ALIASED_POINT_SIZE_RANGE = 0x846D; + public static final int GL_ALIASED_LINE_WIDTH_RANGE = 0x846E; + + public void glDrawRangeElements(@GLenum int mode, @GLuint int start, @GLuint int end, @AutoSize("indices") @GLsizei int count, + @AutoType("indices") + @GLenum + int type, + @BufferObject(BufferKind.ElementVBO) + @Const + @GLubyte + @GLushort + @GLuint + Buffer indices); + + public void glTexImage3D(@GLenum int target, int level, int internalFormat, @GLsizei int width, @GLsizei int height, @GLsizei int depth, int border, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check(value="GLBufferChecks.calculateTexImage3DStorage(pixels, format, type, width, height, depth, border)", canBeNull=true) + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pixels); + + public void glTexSubImage3D(@GLenum int target, int level, int xoffset, int yoffset, int zoffset, @GLsizei int width, @GLsizei int height, @GLsizei int depth, @GLenum int format, @GLenum int type, + @BufferObject(BufferKind.UnpackPBO) + @Check("GLBufferChecks.calculateImageStorage(pixels, format, type, width, height, depth)") + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pixels); + public void glCopyTexSubImage3D(@GLenum int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, @GLsizei int width, @GLsizei int height); +} + diff --git a/src/templates/org/lwjgl/opengl/GL13.java b/src/templates/org/lwjgl/opengl/GL13.java new file mode 100644 index 00000000..23194821 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/GL13.java @@ -0,0 +1,243 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.generator.*; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; + +/** + * $Id$ + *

+ * The core OpenGL1.3 API. + * + * @author cix_foo + * @version $Revision$ + */ +public interface GL13 { + public static final int GL_TEXTURE0 = 0x84C0; + public static final int GL_TEXTURE1 = 0x84C1; + public static final int GL_TEXTURE2 = 0x84C2; + public static final int GL_TEXTURE3 = 0x84C3; + public static final int GL_TEXTURE4 = 0x84C4; + public static final int GL_TEXTURE5 = 0x84C5; + public static final int GL_TEXTURE6 = 0x84C6; + public static final int GL_TEXTURE7 = 0x84C7; + public static final int GL_TEXTURE8 = 0x84C8; + public static final int GL_TEXTURE9 = 0x84C9; + public static final int GL_TEXTURE10 = 0x84CA; + public static final int GL_TEXTURE11 = 0x84CB; + public static final int GL_TEXTURE12 = 0x84CC; + public static final int GL_TEXTURE13 = 0x84CD; + public static final int GL_TEXTURE14 = 0x84CE; + public static final int GL_TEXTURE15 = 0x84CF; + public static final int GL_TEXTURE16 = 0x84D0; + public static final int GL_TEXTURE17 = 0x84D1; + public static final int GL_TEXTURE18 = 0x84D2; + public static final int GL_TEXTURE19 = 0x84D3; + public static final int GL_TEXTURE20 = 0x84D4; + public static final int GL_TEXTURE21 = 0x84D5; + public static final int GL_TEXTURE22 = 0x84D6; + public static final int GL_TEXTURE23 = 0x84D7; + public static final int GL_TEXTURE24 = 0x84D8; + public static final int GL_TEXTURE25 = 0x84D9; + public static final int GL_TEXTURE26 = 0x84DA; + public static final int GL_TEXTURE27 = 0x84DB; + public static final int GL_TEXTURE28 = 0x84DC; + public static final int GL_TEXTURE29 = 0x84DD; + public static final int GL_TEXTURE30 = 0x84DE; + public static final int GL_TEXTURE31 = 0x84DF; + public static final int GL_ACTIVE_TEXTURE = 0x84E0; + public static final int GL_CLIENT_ACTIVE_TEXTURE = 0x84E1; + public static final int GL_MAX_TEXTURE_UNITS = 0x84E2; + + public static final int GL_NORMAL_MAP = 0x8511; + public static final int GL_REFLECTION_MAP = 0x8512; + public static final int GL_TEXTURE_CUBE_MAP = 0x8513; + public static final int GL_TEXTURE_BINDING_CUBE_MAP = 0x8514; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A; + public static final int GL_PROXY_TEXTURE_CUBE_MAP = 0x851B; + public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C; + + public static final int GL_COMPRESSED_ALPHA = 0x84E9; + public static final int GL_COMPRESSED_LUMINANCE = 0x84EA; + public static final int GL_COMPRESSED_LUMINANCE_ALPHA = 0x84EB; + public static final int GL_COMPRESSED_INTENSITY = 0x84EC; + public static final int GL_COMPRESSED_RGB = 0x84ED; + public static final int GL_COMPRESSED_RGBA = 0x84EE; + public static final int GL_TEXTURE_COMPRESSION_HINT = 0x84EF; + public static final int GL_TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0; + public static final int GL_TEXTURE_COMPRESSED = 0x86A1; + public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2; + public static final int GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3; + + public static final int GL_MULTISAMPLE = 0x809D; + public static final int GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E; + public static final int GL_SAMPLE_ALPHA_TO_ONE = 0x809F; + public static final int GL_SAMPLE_COVERAGE = 0x80A0; + public static final int GL_SAMPLE_BUFFERS = 0x80A8; + public static final int GL_SAMPLES = 0x80A9; + public static final int GL_SAMPLE_COVERAGE_VALUE = 0x80AA; + public static final int GL_SAMPLE_COVERAGE_INVERT = 0x80AB; + public static final int GL_MULTISAMPLE_BIT = 0x20000000; + + public static final int GL_TRANSPOSE_MODELVIEW_MATRIX = 0x84E3; + public static final int GL_TRANSPOSE_PROJECTION_MATRIX = 0x84E4; + public static final int GL_TRANSPOSE_TEXTURE_MATRIX = 0x84E5; + public static final int GL_TRANSPOSE_COLOR_MATRIX = 0x84E6; + + public static final int GL_COMBINE = 0x8570; + public static final int GL_COMBINE_RGB = 0x8571; + public static final int GL_COMBINE_ALPHA = 0x8572; + public static final int GL_SOURCE0_RGB = 0x8580; + public static final int GL_SOURCE1_RGB = 0x8581; + public static final int GL_SOURCE2_RGB = 0x8582; + public static final int GL_SOURCE0_ALPHA = 0x8588; + public static final int GL_SOURCE1_ALPHA = 0x8589; + public static final int GL_SOURCE2_ALPHA = 0x858A; + public static final int GL_OPERAND0_RGB = 0x8590; + public static final int GL_OPERAND1_RGB = 0x8591; + public static final int GL_OPERAND2_RGB = 0x8592; + public static final int GL_OPERAND0_ALPHA = 0x8598; + public static final int GL_OPERAND1_ALPHA = 0x8599; + public static final int GL_OPERAND2_ALPHA = 0x859A; + public static final int GL_RGB_SCALE = 0x8573; + public static final int GL_ADD_SIGNED = 0x8574; + public static final int GL_INTERPOLATE = 0x8575; + public static final int GL_SUBTRACT = 0x84E7; + public static final int GL_CONSTANT = 0x8576; + public static final int GL_PRIMARY_COLOR = 0x8577; + public static final int GL_PREVIOUS = 0x8578; + public static final int GL_DOT3_RGB = 0x86AE; + public static final int GL_DOT3_RGBA = 0x86AF; + public static final int GL_CLAMP_TO_BORDER = 0x812D; + + public void glActiveTexture(@GLenum int texture); + + public void glClientActiveTexture(@GLenum int texture); + public void glCompressedTexImage1D(@GLenum int target, int level, @GLenum int internalformat, @GLsizei int width, int border, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + public void glCompressedTexImage2D(@GLenum int target, int level, @GLenum int internalformat, @GLsizei int width, @GLsizei int height, int border, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + public void glCompressedTexImage3D(@GLenum int target, int level, @GLenum int internalformat, @GLsizei int width, @GLsizei int height, @GLsizei int depth, int border, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + public void glCompressedTexSubImage1D(@GLenum int target, int level, int xoffset, @GLsizei int width, @GLenum int format, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + public void glCompressedTexSubImage2D(@GLenum int target, int level, int xoffset, int yoffset, @GLsizei int width, @GLsizei int height, @GLenum int format, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + public void glCompressedTexSubImage3D(@GLenum int target, int level, int xoffset, int yoffset, int zoffset, @GLsizei int width, @GLsizei int height, @GLsizei int depth, @GLenum int format, @GLsizei int imageSize, + @BufferObject(BufferKind.UnpackPBO) + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + // TODO: check buffer size valid + public void glGetCompressedTexImage(@GLenum int target, int lod, + @BufferObject(BufferKind.PackPBO) + @Check + @GLbyte + @GLshort + @GLint + Buffer img); + + public void glMultiTexCoord1f(@GLenum int target, float s); + + public void glMultiTexCoord2f(@GLenum int target, float s, float t); + + public void glMultiTexCoord3f(@GLenum int target, float s, float t, float r); + + public void glMultiTexCoord4f(@GLenum int target, float s, float t, float r, float q); + + @StripPostfix("m") + public void glLoadTransposeMatrixf(@Check("16") @Const FloatBuffer m); + + @StripPostfix("m") + public void glMultTransposeMatrixf(@Check("16") @Const FloatBuffer m); + + public void glSampleCoverage(@GLclampf float value, boolean invert); +} + diff --git a/src/templates/org/lwjgl/opengl/GL14.java b/src/templates/org/lwjgl/opengl/GL14.java new file mode 100644 index 00000000..4eb92a05 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/GL14.java @@ -0,0 +1,138 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; +import org.lwjgl.LWJGLException; +import org.lwjgl.BufferChecks; + +/** + * $Id$ + *

+ * The core OpenGL1.4 API. + * + * @author cix_foo + * @version $Revision$ + */ +public interface GL14 { + public static final int GL_GENERATE_MIPMAP = 0x8191; + public static final int GL_GENERATE_MIPMAP_HINT = 0x8192; + public static final int GL_DEPTH_COMPONENT16 = 0x81A5; + public static final int GL_DEPTH_COMPONENT24 = 0x81A6; + public static final int GL_DEPTH_COMPONENT32 = 0x81A7; + public static final int GL_TEXTURE_DEPTH_SIZE = 0x884A; + public static final int GL_DEPTH_TEXTURE_MODE = 0x884B; + public static final int GL_TEXTURE_COMPARE_MODE = 0x884C; + public static final int GL_TEXTURE_COMPARE_FUNC = 0x884D; + public static final int GL_COMPARE_R_TO_TEXTURE = 0x884E; + public static final int GL_FOG_COORDINATE_SOURCE = 0x8450; + public static final int GL_FOG_COORDINATE = 0x8451; + public static final int GL_FRAGMENT_DEPTH = 0x8452; + public static final int GL_CURRENT_FOG_COORDINATE = 0x8453; + public static final int GL_FOG_COORDINATE_ARRAY_TYPE = 0x8454; + public static final int GL_FOG_COORDINATE_ARRAY_STRIDE = 0x8455; + public static final int GL_FOG_COORDINATE_ARRAY_POINTER = 0x8456; + public static final int GL_FOG_COORDINATE_ARRAY = 0x8457; + public static final int GL_POINT_SIZE_MIN = 0x8126; + public static final int GL_POINT_SIZE_MAX = 0x8127; + public static final int GL_POINT_FADE_THRESHOLD_SIZE = 0x8128; + public static final int GL_POINT_DISTANCE_ATTENUATION = 0x8129; + public static final int GL_COLOR_SUM = 0x8458; + public static final int GL_CURRENT_SECONDARY_COLOR = 0x8459; + public static final int GL_SECONDARY_COLOR_ARRAY_SIZE = 0x845A; + public static final int GL_SECONDARY_COLOR_ARRAY_TYPE = 0x845B; + public static final int GL_SECONDARY_COLOR_ARRAY_STRIDE = 0x845C; + public static final int GL_SECONDARY_COLOR_ARRAY_POINTER = 0x845D; + public static final int GL_SECONDARY_COLOR_ARRAY = 0x845E; + public static final int GL_BLEND_DST_RGB = 0x80C8; + public static final int GL_BLEND_SRC_RGB = 0x80C9; + public static final int GL_BLEND_DST_ALPHA = 0x80CA; + public static final int GL_BLEND_SRC_ALPHA = 0x80CB; + public static final int GL_INCR_WRAP = 0x8507; + public static final int GL_DECR_WRAP = 0x8508; + public static final int GL_TEXTURE_FILTER_CONTROL = 0x8500; + public static final int GL_TEXTURE_LOD_BIAS = 0x8501; + public static final int GL_MAX_TEXTURE_LOD_BIAS = 0x84FD; + public static final int GL_GL_MIRRORED_REPEAT = 0x8370; + + public void glBlendEquation(@GLenum int mode); + + public void glBlendColor(@GLclampf float red, @GLclampf float green, @GLclampf float blue, @GLclampf float alpha); + + public void glFogCoordf(float coord); + + public void glFogCoordPointer(@AutoType("data") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLfloat + Buffer data); + + @Code( " if (piFirst.remaining() != piCount.remaining()) {\n" + + " throw new IllegalArgumentException(\"piFirst.remaining() != piCount.remaining()\");\n" + + " }") + public void glMultiDrawArrays(@GLenum int mode, IntBuffer piFirst, @Check @GLsizei IntBuffer piCount, @AutoSize("piFirst") @GLsizei int primcount); + + //public static native void glMultiDrawElements(int mode, int piCount, int type, int pIndices, int primcount); + + public void glPointParameteri(@GLenum int pname, int param); + public void glPointParameterf(@GLenum int pname, float param); + @StripPostfix("params") + public void glPointParameteriv(@GLenum int pname, @Check("4") IntBuffer params); + @StripPostfix("params") + public void glPointParameterfv(@GLenum int pname, @Check("4") FloatBuffer params); + + public void glSecondaryColor3b(byte red, byte green, byte blue); + public void glSecondaryColor3f(float red, float green, float blue); + public void glSecondaryColor3ub(@GLubyte byte red, @GLubyte byte green, @GLubyte byte blue); + + public void glSecondaryColorPointer(int size, @AutoType("data") @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLbyte + @GLubyte + @GLfloat + Buffer data); + + public void glBlendFuncSeparate(@GLenum int sfactorRGB, @GLenum int dfactorRGB, @GLenum int sfactorAlpha, @GLenum int dfactorAlpha); + public void glWindowPos2f(float x, float y); + public void glWindowPos2i(int x, int y); + public void glWindowPos3f(float x, float y, float z); + public void glWindowPos3i(int x, int y, int z); +} + diff --git a/src/templates/org/lwjgl/opengl/GL15.java b/src/templates/org/lwjgl/opengl/GL15.java new file mode 100644 index 00000000..5d5352d1 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/GL15.java @@ -0,0 +1,174 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; +import org.lwjgl.BufferChecks; +import org.lwjgl.LWJGLException; + +import java.nio.*; + +public interface GL15 { + // ---------------------------------------------------------------------- + // ---------------------- ARB_vertex_buffer_object ---------------------- + // ---------------------------------------------------------------------- + + public static final int GL_ARRAY_BUFFER = 0x8892; + public static final int GL_ELEMENT_ARRAY_BUFFER = 0x8893; + public static final int GL_ARRAY_BUFFER_BINDING = 0x8894; + public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895; + public static final int GL_VERTEX_ARRAY_BUFFER_BINDING = 0x8896; + public static final int GL_NORMAL_ARRAY_BUFFER_BINDING = 0x8897; + public static final int GL_COLOR_ARRAY_BUFFER_BINDING = 0x8898; + public static final int GL_INDEX_ARRAY_BUFFER_BINDING = 0x8899; + public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 0x889A; + public static final int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = 0x889B; + public static final int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = 0x889C; + public static final int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = 0x889D; + public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING = 0x889E; + public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F; + public static final int GL_STREAM_DRAW = 0x88E0; + public static final int GL_STREAM_READ = 0x88E1; + public static final int GL_STREAM_COPY = 0x88E2; + public static final int GL_STATIC_DRAW = 0x88E4; + public static final int GL_STATIC_READ = 0x88E5; + public static final int GL_STATIC_COPY = 0x88E6; + public static final int GL_DYNAMIC_DRAW = 0x88E8; + public static final int GL_DYNAMIC_READ = 0x88E9; + public static final int GL_DYNAMIC_COPY = 0x88EA; + public static final int GL_READ_ONLY = 0x88B8; + public static final int GL_WRITE_ONLY = 0x88B9; + public static final int GL_READ_WRITE = 0x88BA; + public static final int GL_BUFFER_SIZE = 0x8764; + public static final int GL_BUFFER_USAGE = 0x8765; + public static final int GL_BUFFER_ACCESS = 0x88BB; + public static final int GL_BUFFER_MAPPED = 0x88BC; + public static final int GL_BUFFER_MAP_POINTER = 0x88BD; + + @Code( " BufferObjectTracker.bindBuffer(target, buffer);") + public void glBindBuffer(@GLenum int target, @GLuint int buffer); + @Code( " BufferObjectTracker.deleteBuffers(buffers);") + public void glDeleteBuffers(@AutoSize("buffers") @GLsizei int n, @Const @GLuint IntBuffer buffers); + + public void glGenBuffers(@AutoSize("buffers") @GLsizei int n, @GLuint IntBuffer buffers); + public boolean glIsBuffer(@GLuint int buffer); + + @GenerateAutos + public void glBufferData(@GLenum int target, @AutoSize("data") @GLsizeiptr int size, + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data, @GLenum int usage); + public void glBufferSubData(@GLenum int target, @GLintptr int offset, @AutoSize("data") @GLsizeiptr int size, + @Check + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + public void glGetBufferSubData(@GLenum int target, @GLintptr int offset, @AutoSize("data") @GLsizeiptr int size, + @Check + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + /** + * glMapBuffer maps a gl vertex buffer buffer to a ByteBuffer. The oldBuffer argument can be null, in which case a new + * ByteBuffer will be created, pointing to the returned memory. If oldBuffer is non-null, it will be returned if it points to + * the same mapped memory, otherwise a new ByteBuffer is created. That way, an application will normally use glMapBuffer like + * this: + *

+ * ByteBuffer mapped_buffer; mapped_buffer = glMapBuffer(..., ..., ..., null); ... // Another map on the same buffer + * mapped_buffer = glMapBuffer(..., ..., ..., mapped_buffer); + * + * @param result_size The size of the buffer area. + * @param old_buffer A ByteBuffer. If this argument points to the same address as the new mapping, it will be returned and no + * new buffer will be created. In that case, size is ignored. + * + * @return A ByteBuffer representing the mapped buffer memory. + */ + @CachedResult + public @GLvoid ByteBuffer glMapBuffer(@GLenum int target, @GLenum int access); + + public boolean glUnmapBuffer(@GLenum int target); + + @StripPostfix("params") + public void glGetBufferParameteriv(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("pointer") + public void glGetBufferPointerv(@GLenum int target, @GLenum int pname, @Result @GLvoid ByteBuffer pointer); + + // ----------------------------------------------------------------- + // ---------------------- ARB_occlusion_query ---------------------- + // ----------------------------------------------------------------- + + /* + * Accepted by the parameter of BeginQuery, EndQuery, + * and GetQueryiv: + */ + public static final int GL_SAMPLES_PASSED = 0x8914; + + /* + Accepted by the parameter of GetQueryiv: + */ + public static final int GL_QUERY_COUNTER_BITS = 0x8864; + public static final int GL_CURRENT_QUERY = 0x8865; + + /* + Accepted by the parameter of GetQueryObjectiv and + GetQueryObjectuiv: + */ + public static final int GL_QUERY_RESULT = 0x8866; + public static final int GL_QUERY_RESULT_AVAILABLE = 0x8867; + + public void glGenQueries(@AutoSize("ids") @GLsizei int n, @GLuint IntBuffer ids); + public void glDeleteQueries(@AutoSize("ids") @GLsizei int n, @GLuint IntBuffer ids); + public boolean glIsQuery(@GLuint int id); + + public void glBeginQuery(@GLenum int target, @GLuint int id); + public void glEndQuery(@GLenum int target); + + @StripPostfix("params") + public void glGetQueryiv(@GLenum int target, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("params") + public void glGetQueryObjectiv(@GLenum int id, @GLenum int pname, @Check("4") @GLint IntBuffer params); + + @StripPostfix("params") + public void glGetQueryObjectuiv(@GLenum int id, @GLenum int pname, @Check("4") @GLuint IntBuffer params); +} diff --git a/src/templates/org/lwjgl/opengl/GL20.java b/src/templates/org/lwjgl/opengl/GL20.java new file mode 100644 index 00000000..c9ca13ac --- /dev/null +++ b/src/templates/org/lwjgl/opengl/GL20.java @@ -0,0 +1,473 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; +import org.lwjgl.BufferChecks; +import org.lwjgl.LWJGLException; + +import java.nio.*; + +public interface GL20 { + // ------------------------------------------------------------------ + // ----------------------[ ARB_shading_language_100 ]---------------------- + // ------------------------------------------------------------------ + + /* + * Accepted by the parameter of GetString: + */ + public static final int GL_SHADING_LANGUAGE_VERSION = 0x8B8C; + + // ------------------------------------------------------------------ + // ----------------------[ ARB_shader_objects ]---------------------- + // ------------------------------------------------------------------ + + /* + * Accepted by the argument of GetInteger: + */ + public static final int GL_CURRENT_PROGRAM = 0x8B8D; + + /* + * Accepted by the parameter of GetObjectParameter{fi}vARB: + */ + public static final int GL_SHADER_TYPE = 0x8B4F; + public static final int GL_DELETE_STATUS = 0x8B80; + public static final int GL_COMPILE_STATUS = 0x8B81; + public static final int GL_LINK_STATUS = 0x8B82; + public static final int GL_VALIDATE_STATUS = 0x8B83; + public static final int GL_INFO_LOG_LENGTH = 0x8B84; + public static final int GL_ATTACHED_SHADERS = 0x8B85; + public static final int GL_ACTIVE_UNIFORMS = 0x8B86; + public static final int GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87; + public static final int GL_ACTIVE_ATTRIBUTES = 0x8B89; + public static final int GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A; + public static final int GL_SHADER_SOURCE_LENGTH = 0x8B88; + + /* + * Returned by the parameter of GetObjectParameter{fi}vARB: + */ + public static final int GL_SHADER_OBJECT = 0x8B48; + + /* + * Returned by the parameter of GetActiveUniformARB: + */ + public static final int GL_FLOAT_VEC2 = 0x8B50; + public static final int GL_FLOAT_VEC3 = 0x8B51; + public static final int GL_FLOAT_VEC4 = 0x8B52; + public static final int GL_INT_VEC2 = 0x8B53; + public static final int GL_INT_VEC3 = 0x8B54; + public static final int GL_INT_VEC4 = 0x8B55; + public static final int GL_BOOL = 0x8B56; + public static final int GL_BOOL_VEC2 = 0x8B57; + public static final int GL_BOOL_VEC3 = 0x8B58; + public static final int GL_BOOL_VEC4 = 0x8B59; + public static final int GL_FLOAT_MAT2 = 0x8B5A; + public static final int GL_FLOAT_MAT3 = 0x8B5B; + public static final int GL_FLOAT_MAT4 = 0x8B5C; + public static final int GL_SAMPLER_1D = 0x8B5D; + public static final int GL_SAMPLER_2D = 0x8B5E; + public static final int GL_SAMPLER_3D = 0x8B5F; + public static final int GL_SAMPLER_CUBE = 0x8B60; + public static final int GL_SAMPLER_1D_SHADOW = 0x8B61; + public static final int GL_SAMPLER_2D_SHADOW = 0x8B62; + + /** + * The ARB_shader_objects extension allows multiple, optionally null-terminated, source strings to define a shader program. + *

+ * This method uses just a single string, that should NOT be null-terminated. + * + * @param shader + * @param string + */ + public void glShaderSource(@GLuint int shader, @Constant("1") @GLsizei int count, + @Indirect + @Check + @Const + @GLchar + ByteBuffer string, + @AutoSize("string") + @Indirect + @Const + @GLint + int length); + + public int glCreateShader(@GLuint int type); + + public boolean glIsShader(@GLuint int shader); + + public void glCompileShader(@GLuint int shader); + + public void glDeleteShader(@GLuint int shader); + + public int glCreateProgram(); + + public boolean glIsProgram(int program); + + public void glAttachShader(@GLuint int program, @GLuint int shader); + + public void glDetachShader(@GLuint int program, @GLuint int shader); + + public void glLinkProgram(@GLuint int program); + + public void glUseProgram(@GLuint int program); + + public void glValidateProgram(@GLuint int program); + + public void glDeleteProgram(@GLuint int program); + + public void glUniform1f(int location, float v0); + + public void glUniform2f(int location, float v0, float v1); + + public void glUniform3f(int location, float v0, float v1, float v2); + + public void glUniform4f(int location, float v0, float v1, float v2, float v3); + + public void glUniform1i(int location, int v0); + + public void glUniform2i(int location, int v0, int v1); + + public void glUniform3i(int location, int v0, int v1, int v2); + + public void glUniform4i(int location, int v0, int v1, int v2, int v3); + + @StripPostfix("values") + public void glUniform1fv(int location, @AutoSize("values") @GLsizei int count, FloatBuffer values); + @StripPostfix("values") + public void glUniform2fv(int location, @AutoSize(value="values", expression=" >> 1") @GLsizei int count, FloatBuffer values); + @StripPostfix("values") + public void glUniform3fv(int location, @AutoSize(value="values", expression=" / 3") @GLsizei int count, FloatBuffer values); + @StripPostfix("values") + public void glUniform4fv(int location, @AutoSize(value="values", expression=" >> 2") @GLsizei int count, FloatBuffer values); + + @StripPostfix("values") + public void glUniform1iv(int location, @AutoSize("values") @GLsizei int count, IntBuffer values); + @StripPostfix("values") + public void glUniform2iv(int location, @AutoSize(value="values", expression=" >> 1") @GLsizei int count, IntBuffer values); + @StripPostfix("values") + public void glUniform3iv(int location, @AutoSize(value="values", expression=" / 3") @GLsizei int count, IntBuffer values); + @StripPostfix("values") + public void glUniform4iv(int location, @AutoSize(value="values", expression=" >> 2") @GLsizei int count, IntBuffer values); + + @StripPostfix("matrices") + public void glUniformMatrix2fv(int location, @AutoSize(value="matrices", expression=" >> 2") @GLsizei int count, + boolean transpose, FloatBuffer matrices); + @StripPostfix("matrices") + public void glUniformMatrix3fv(int location, @AutoSize(value="matrices", expression=" / (3 * 3)") @GLsizei int count, + boolean transpose, FloatBuffer matrices); + @StripPostfix("matrices") + public void glUniformMatrix4fv(int location, @AutoSize(value="matrices", expression=" >> 4") @GLsizei int count, + boolean transpose, FloatBuffer matrices); + + @StripPostfix("params") + public void glGetShaderfv(@GLuint int shader, @GLenum int pname, @Check FloatBuffer params); + @StripPostfix("params") + public void glGetShaderiv(@GLuint int shader, @GLenum int pname, @Check IntBuffer params); + + @StripPostfix("params") + public void glGetProgramfv(@GLuint int program, @GLenum int pname, @Check FloatBuffer params); + @StripPostfix("params") + public void glGetProgramiv(@GLuint int program, @GLenum int pname, @Check IntBuffer params); + + public void glGetShaderInfoLog(@GLuint int shader, @AutoSize("infoLog") @GLsizei int maxLength, + @GLsizei + @Check(value="1", canBeNull=true) + IntBuffer length, + @GLchar + ByteBuffer infoLog); + + public void glGetProgramInfoLog(@GLuint int program, @AutoSize("infoLog") @GLsizei int maxLength, + @GLsizei + @Check(value="1", canBeNull=true) + IntBuffer length, + @GLchar + ByteBuffer infoLog); + + public void glGetAttachedShaders(@GLuint int program, @AutoSize("shaders") @GLsizei int maxCount, + @GLsizei + @Check(value="1", canBeNull=true) + IntBuffer count, + @GLuint + IntBuffer shaders); + + /** + * Returns the location of the uniform with the specified name. The ByteBuffer should contain the uniform name as a + * null-terminated string. + * + * @param program + * @param name + * + * @return + */ + public int glGetUniformLocation(@GLuint int program, @NullTerminated @Check("1") @Const @GLchar ByteBuffer name); + + public void glGetActiveUniform(@GLuint int program, @GLuint int index, @AutoSize("name") @GLsizei int maxLength, + @Check(value="1", canBeNull=true) + @GLsizei + IntBuffer length, + @Check + @GLsizei + IntBuffer size, + @Check + @GLenum + IntBuffer type, + @GLchar + ByteBuffer name); + + @StripPostfix("params") + public void glGetUniformfv(@GLuint int program, int location, @Check FloatBuffer params); + @StripPostfix("params") + public void glGetUniformiv(@GLuint int program, int location, @Check IntBuffer params); + + public void glGetShaderSource(@GLuint int shader, @AutoSize("source") @GLsizei int maxLength, + @Check(value="1", canBeNull=true) + @GLsizei + IntBuffer length, + @GLchar + ByteBuffer source); + + // ------------------------------------------------------------------ + // ----------------------[ ARB_vertex_program ]---------------------- + // ------------------------------------------------------------------ + + public void glVertexAttrib1s(@GLuint int index, short x); + + public void glVertexAttrib1f(@GLuint int index, float x); + + public void glVertexAttrib2s(@GLuint int index, short x, short y); + + public void glVertexAttrib2f(@GLuint int index, float x, float y); + + public void glVertexAttrib3s(@GLuint int index, short x, short y, short z); + + public void glVertexAttrib3f(@GLuint int index, float x, float y, float z); + + public void glVertexAttrib4s(@GLuint int index, short x, short y, short z, short w); + + public void glVertexAttrib4f(@GLuint int index, float x, float y, float z, float w); + + public void glVertexAttrib4Nub(@GLuint int index, @GLubyte byte x, @GLubyte byte y, @GLubyte byte z, @GLubyte byte w); + + public void glVertexAttribPointer(@GLuint int index, int size, @AutoType("buffer") @GLenum int type, boolean normalized, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLubyte + @GLbyte + @GLshort + @GLushort + @GLint + @GLuint + @GLfloat + Buffer buffer); + + public void glEnableVertexAttribArray(@GLuint int index); + public void glDisableVertexAttribArray(@GLuint int index); + + @StripPostfix("params") + public void glGetVertexAttribfv(@GLuint int index, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetVertexAttribiv(@GLuint int index, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("pointer") + public void glGetVertexAttribPointerv(@GLuint int index, @GLenum int pname, @Result @GLvoid ByteBuffer pointer); + + // ----------------------------------------------------------------- + // ----------------------[ ARB_vertex_shader ]---------------------- + // ----------------------------------------------------------------- + + /* + * Accepted by the argument of CreateShader and + * returned by the parameter of GetShader{if}v: + */ + public static final int GL_VERTEX_SHADER = 0x8B31; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A; + public static final int GL_MAX_VARYING_FLOATS = 0x8B4B; + public static final int GL_MAX_VERTEX_ATTRIBS = 0x8869; + public static final int GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872; + public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C; + public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D; + public static final int GL_MAX_TEXTURE_COORDS = 0x8871; + + /* + * Accepted by the parameter of Disable, Enable, and IsEnabled, and + * by the parameter of GetBooleanv, GetIntegerv, GetFloatv, and + * GetDoublev: + */ + public static final int GL_VERTEX_PROGRAM_POINT_SIZE = 0x8642; + public static final int GL_VERTEX_PROGRAM_TWO_SIDE = 0x8643; + + /* + * Accepted by the parameter of GetVertexAttrib{dfi}vARB: + */ + public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622; + public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623; + public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624; + public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625; + public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A; + public static final int GL_CURRENT_VERTEX_ATTRIB = 0x8626; + + /* + * Accepted by the parameter of GetVertexAttribPointervARB: + */ + public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645; + + public void glBindAttribLocation(@GLuint int program, @GLuint int index, @NullTerminated @Const @GLchar ByteBuffer name); + + public void glGetActiveAttrib(@GLuint int program, @GLuint int index, @AutoSize("name") @GLsizei int maxLength, + @Check(value="1", canBeNull=true) + @GLsizei + IntBuffer length, + @Check("1") + IntBuffer size, + @Check("1") + @GLenum + IntBuffer type, + @Const + @GLchar + ByteBuffer name); + + public int glGetAttribLocation(@GLuint int program, @NullTerminated @Const @GLchar ByteBuffer name); + + // ------------------------------------------------------------------- + // ----------------------[ ARB_fragment_shader ]---------------------- + // ------------------------------------------------------------------- + + /* + * Accepted by the argument of CreateShader and + * returned by the parameter of GetShader{fi}vARB: + */ + public static final int GL_FRAGMENT_SHADER = 0x8B30; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49; + + /* + * Accepted by the parameter of Hint and the parameter of + * GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev: + */ + public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B; + + // ---------------------------------------------------------------- + // ----------------------[ ARB_draw_buffers ]---------------------- + // ---------------------------------------------------------------- + + /* + * Accepted by the parameters of GetIntegerv, GetFloatv, + * and GetDoublev: + */ + public static final int GL_MAX_DRAW_BUFFERS = 0x8824; + public static final int GL_DRAW_BUFFER0 = 0x8825; + public static final int GL_DRAW_BUFFER1 = 0x8826; + public static final int GL_DRAW_BUFFER2 = 0x8827; + public static final int GL_DRAW_BUFFER3 = 0x8828; + public static final int GL_DRAW_BUFFER4 = 0x8829; + public static final int GL_DRAW_BUFFER5 = 0x882A; + public static final int GL_DRAW_BUFFER6 = 0x882B; + public static final int GL_DRAW_BUFFER7 = 0x882C; + public static final int GL_DRAW_BUFFER8 = 0x882D; + public static final int GL_DRAW_BUFFER9 = 0x882E; + public static final int GL_DRAW_BUFFER10 = 0x882F; + public static final int GL_DRAW_BUFFER11 = 0x8830; + public static final int GL_DRAW_BUFFER12 = 0x8831; + public static final int GL_DRAW_BUFFER13 = 0x8832; + public static final int GL_DRAW_BUFFER14 = 0x8833; + public static final int GL_DRAW_BUFFER15 = 0x8834; + + public void glDrawBuffers(@AutoSize("buffers") @GLsizei int size, @Const @GLenum IntBuffer buffers); + + // ---------------------------------------------------------------- + // ----------------------[ ARB_point_sprite ]---------------------- + // ---------------------------------------------------------------- + + /* + * Accepted by the parameter of Enable, Disable, and IsEnabled, by + * the parameter of GetBooleanv, GetIntegerv, GetFloatv, and + * GetDoublev, and by the parameter of TexEnvi, TexEnviv, + * TexEnvf, TexEnvfv, GetTexEnviv, and GetTexEnvfv: + */ + public static final int GL_POINT_SPRITE = 0x8861; + + /* + * When the parameter of TexEnvf, TexEnvfv, TexEnvi, TexEnviv, + * GetTexEnvfv, or GetTexEnviv is POINT_SPRITE, then the value of + * may be: + */ + public static final int GL_COORD_REPLACE = 0x8862; + + /* + * Accepted by the parameter of PointParameter{if}vARB, and the + * of Get: + */ + public static final int GL_POINT_SPRITE_COORD_ORIGIN = 0x8CA0; + + /* + * Accepted by the parameter of PointParameter{if}vARB: + */ + public static final int GL_LOWER_LEFT = 0x8CA1; + public static final int GL_UPPER_LEFT = 0x8CA2; + + // ----------------------------------------------------------------- + // ----------------------[ Two-Sided Stencil ]---------------------- + // ----------------------------------------------------------------- + + public static final int GL_STENCIL_BACK_FUNC = 0x8800; + public static final int GL_STENCIL_BACK_FAIL = 0x8801; + public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802; + public static final int GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803; + public static final int GL_STENCIL_BACK_REF = 0x8CA3; + public static final int GL_STENCIL_BACK_VALUE_MASK = 0x8CA4; + public static final int GL_STENCIL_BACK_WRITEMASK = 0x8CA5; + + public void glStencilOpSeparate(@GLenum int face, @GLenum int sfail, @GLenum int dpfail, @GLenum int dppass); + + public void glStencilFuncSeparate(@GLenum int face, @GLenum int func, int ref, @GLuint int mask); + + public void glStencilMaskSeparate(@GLenum int face, @GLuint int mask); + + // ------------------------------------------------------------- + // ----------------------[ EXT_blend_equation_separate ]---------------------- + // ------------------------------------------------------------- + + public static final int GL_BLEND_EQUATION_RGB = 0x8009; + public static final int GL_BLEND_EQUATION_ALPHA = 0x883D; + + public void glBlendEquationSeparate(@GLenum int modeRGB, @GLenum int modeAlpha); +} diff --git a/src/templates/org/lwjgl/opengl/NV_copy_depth_to_color.java b/src/templates/org/lwjgl/opengl/NV_copy_depth_to_color.java new file mode 100644 index 00000000..620847ef --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_copy_depth_to_color.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_copy_depth_to_color { + public static final int GL_DEPTH_STENCIL_TO_RGBA_NV = 0x886E; + public static final int GL_DEPTH_STENCIL_TO_BGRA_NV = 0x886F; +} diff --git a/src/templates/org/lwjgl/opengl/NV_depth_clamp.java b/src/templates/org/lwjgl/opengl/NV_depth_clamp.java new file mode 100644 index 00000000..a8147665 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_depth_clamp.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_depth_clamp { + public static final int GL_DEPTH_CLAMP_NV = 0x864F; +} diff --git a/src/templates/org/lwjgl/opengl/NV_evaluators.java b/src/templates/org/lwjgl/opengl/NV_evaluators.java new file mode 100644 index 00000000..b1f0f6f4 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_evaluators.java @@ -0,0 +1,90 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; + +public interface NV_evaluators { + public static final int GL_EVAL_2D_NV = 0x86C0; + public static final int GL_EVAL_TRIANGULAR_2D_NV = 0x86C1; + public static final int GL_MAP_TESSELLATION_NV = 0x86C2; + public static final int GL_MAP_ATTRIB_U_ORDER_NV = 0x86C3; + public static final int GL_MAP_ATTRIB_V_ORDER_NV = 0x86C4; + public static final int GL_EVAL_FRACTIONAL_TESSELLATION_NV = 0x86C5; + public static final int GL_EVAL_VERTEX_ATTRIB0_NV = 0x86C6; + public static final int GL_EVAL_VERTEX_ATTRIB1_NV = 0x86C7; + public static final int GL_EVAL_VERTEX_ATTRIB2_NV = 0x86C8; + public static final int GL_EVAL_VERTEX_ATTRIB3_NV = 0x86C9; + public static final int GL_EVAL_VERTEX_ATTRIB4_NV = 0x86CA; + public static final int GL_EVAL_VERTEX_ATTRIB5_NV = 0x86CB; + public static final int GL_EVAL_VERTEX_ATTRIB6_NV = 0x86CC; + public static final int GL_EVAL_VERTEX_ATTRIB7_NV = 0x86CD; + public static final int GL_EVAL_VERTEX_ATTRIB8_NV = 0x86CE; + public static final int GL_EVAL_VERTEX_ATTRIB9_NV = 0x86CF; + public static final int GL_EVAL_VERTEX_ATTRIB10_NV = 0x86D0; + public static final int GL_EVAL_VERTEX_ATTRIB11_NV = 0x86D1; + public static final int GL_EVAL_VERTEX_ATTRIB12_NV = 0x86D2; + public static final int GL_EVAL_VERTEX_ATTRIB13_NV = 0x86D3; + public static final int GL_EVAL_VERTEX_ATTRIB14_NV = 0x86D4; + public static final int GL_EVAL_VERTEX_ATTRIB15_NV = 0x86D5; + public static final int GL_MAX_MAP_TESSELLATION_NV = 0x86D6; + public static final int GL_MAX_RATIONAL_EVAL_ORDER_NV = 0x86D7; + + public void glGetMapControlPointsNV(@GLenum int target, @GLuint int index, @GLenum int type, @GLsizei int ustride, @GLsizei int vstride, boolean packed, + @Check + @Const + @GLfloat + Buffer pPoints); + + public void glMapControlPointsNV(@GLenum int target, @GLuint int index, @GLenum int type, @GLsizei int ustride, @GLsizei int vstride, int uorder, int vorder, boolean packed, @Check @Const @GLfloat Buffer pPoints); + + @StripPostfix("params") + public void glMapParameterfvNV(@GLenum int target, @GLenum int pname, @Check("4") @Const FloatBuffer params); + @StripPostfix("params") + public void glMapParameterivNV(@GLenum int target, @GLenum int pname, @Check("4") @Const IntBuffer params); + + @StripPostfix("params") + public void glGetMapParameterfvNV(@GLenum int target, @GLenum int pname, @Check("4") @Const FloatBuffer params); + @StripPostfix("params") + public void glGetMapParameterivNV(@GLenum int target, @GLenum int pname, @Check("4") @Const IntBuffer params); + + @StripPostfix("params") + public void glGetMapAttribParameterfvNV(@GLenum int target, @GLuint int index, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetMapAttribParameterivNV(@GLenum int target, @GLuint int index, @GLenum int pname, @Check("4") IntBuffer params); + + public void glEvalMapsNV(@GLenum int target, @GLenum int mode); +} diff --git a/src/templates/org/lwjgl/opengl/NV_fence.java b/src/templates/org/lwjgl/opengl/NV_fence.java new file mode 100644 index 00000000..80b097c4 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_fence.java @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; + +public interface NV_fence { + 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 void glGenFencesNV(@AutoSize("piFences") @GLsizei int n, @GLuint IntBuffer piFences); + public void glDeleteFencesNV(@AutoSize("piFences") @GLsizei int n, @Const @GLuint IntBuffer piFences); + + public void glSetFenceNV(@GLuint int fence, @GLenum int condition); + + public boolean glTestFenceNV(@GLuint int fence); + + public void glFinishFenceNV(@GLuint int fence); + + public boolean glIsFenceNV(@GLuint int fence); + + public void glGetFenceivNV(@GLuint int fence, @GLenum int pname, @Check("4") IntBuffer piParams); +} diff --git a/src/templates/org/lwjgl/opengl/NV_float_buffer.java b/src/templates/org/lwjgl/opengl/NV_float_buffer.java new file mode 100644 index 00000000..2e7ae56f --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_float_buffer.java @@ -0,0 +1,85 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_float_buffer { + /* + * Accepted by the parameter of TexImage2D and + * CopyTexImage2D: + */ + 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; + + /* + * Accepted by the parameter of GetTexLevelParameterfv and + * GetTexLevelParameteriv: + */ + public static final int GL_TEXTURE_FLOAT_COMPONENTS_NV = 0x888C; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, GetFloatv, + * and GetDoublev: + */ + public static final int GL_FLOAT_CLEAR_COLOR_VALUE_NV = 0x888D; + public static final int GL_FLOAT_RGBA_MODE_NV = 0x888E; + + /* + * Accepted in the array of wglGetPixelFormatAttribivARB and + * wglGetPixelFormatAttribfvARB and in the and + * arrays of wglChoosePixelFormatARB: + */ + public static final int GL_WGL_FLOAT_COMPONENTS_NV = 0x20B0; + public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV = 0x20B1; + public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV = 0x20B2; + public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV = 0x20B3; + public static final int GL_WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV = 0x20B4; + + /* + * Accepted in the array of wglCreatePbufferARB and returned + * in the parameter of wglQueryPbufferARB when is + * WGL_TEXTURE_FORMAT_ARB: + */ + public static final int GL_WGL_TEXTURE_FLOAT_R_NV = 0x20B5; + public static final int GL_WGL_TEXTURE_FLOAT_RG_NV = 0x20B6; + public static final int GL_WGL_TEXTURE_FLOAT_RGB_NV = 0x20B7; + public static final int GL_WGL_TEXTURE_FLOAT_RGBA_NV = 0x20B8; +} diff --git a/src/templates/org/lwjgl/opengl/NV_fog_distance.java b/src/templates/org/lwjgl/opengl/NV_fog_distance.java new file mode 100644 index 00000000..c3c3386e --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_fog_distance.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_fog_distance { + 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/src/templates/org/lwjgl/opengl/NV_fragment_program.java b/src/templates/org/lwjgl/opengl/NV_fragment_program.java new file mode 100644 index 00000000..1b02ba4c --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_fragment_program.java @@ -0,0 +1,64 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; + +import org.lwjgl.generator.*; + +public interface NV_fragment_program extends NV_program { + /* + * Accepted by the parameter of Disable, Enable, and IsEnabled, by the + * parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev, + * and by the parameter of BindProgramNV, LoadProgramNV, + * ProgramLocalParameter4dARB, ProgramLocalParameter4dvARB, + * ProgramLocalParameter4fARB, ProgramLocalParameter4fvARB, + * GetProgramLocalParameterdvARB, and GetProgramLocalParameterfvARB: + */ + public static final int GL_FRAGMENT_PROGRAM_NV = 0x8870; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, GetFloatv, + * and GetDoublev: + */ + 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_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = 0x8868; + + public void glProgramNamedParameter4fNV(@GLuint int id, @AutoSize("name") @GLsizei int length, @Const @GLubyte ByteBuffer name, float x, float y, float z, float w); + + @StripPostfix("params") + public void glGetProgramNamedParameterfvNV(@GLuint int id, @AutoSize("name") @GLsizei int length, @Const @GLubyte ByteBuffer name, @Check("4") FloatBuffer params); +} + diff --git a/src/templates/org/lwjgl/opengl/NV_fragment_program2.java b/src/templates/org/lwjgl/opengl/NV_fragment_program2.java new file mode 100644 index 00000000..f3df2652 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_fragment_program2.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_fragment_program2 { + /* + * Accepted by the parameter of GetProgramivARB: + */ + 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/src/templates/org/lwjgl/opengl/NV_half_float.java b/src/templates/org/lwjgl/opengl/NV_half_float.java new file mode 100644 index 00000000..18ce1d94 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_half_float.java @@ -0,0 +1,96 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.ShortBuffer; + +import org.lwjgl.generator.*; + +public interface NV_half_float { + /* + * Accepted by the argument of VertexPointer, NormalPointer, + * ColorPointer, TexCoordPointer, FogCoordPointerEXT, + * SecondaryColorPointerEXT, VertexWeightPointerEXT, VertexAttribPointerNV, + * DrawPixels, ReadPixels, TexImage1D, TexImage2D, TexImage3D, TexSubImage1D, + * TexSubImage2D, TexSubImage3D, and GetTexImage: + */ + public static final int GL_HALF_FLOAT_NV = 0x140B; + + public void glVertex2hNV(@GLhalf short x, @GLhalf short y); + + public void glVertex3hNV(@GLhalf short x, @GLhalf short y, @GLhalf short z); + + public void glVertex4hNV(@GLhalf short x, @GLhalf short y, @GLhalf short z, @GLhalf short w); + + public void glNormal3hNV(@GLhalf short nx, @GLhalf short ny, @GLhalf short nz); + + public void glColor3hNV(@GLhalf short red, @GLhalf short green, @GLhalf short blue); + + public void glColor4hNV(@GLhalf short red, @GLhalf short green, @GLhalf short blue, @GLhalf short alpha); + + public void glTexCoord1hNV(@GLhalf short s); + + public void glTexCoord2hNV(@GLhalf short s, @GLhalf short t); + + public void glTexCoord3hNV(@GLhalf short s, @GLhalf short t, @GLhalf short r); + + public void glTexCoord4hNV(@GLhalf short s, @GLhalf short t, @GLhalf short r, @GLhalf short q); + + public void glMultiTexCoord1hNV(@GLenum int target, @GLhalf short s); + + public void glMultiTexCoord2hNV(@GLenum int target, @GLhalf short s, @GLhalf short t); + + public void glMultiTexCoord3hNV(@GLenum int target, @GLhalf short s, @GLhalf short t, @GLhalf short r); + + public void glMultiTexCoord4hNV(@GLenum int target, @GLhalf short s, @GLhalf short t, @GLhalf short r, @GLhalf short q); + + public void glFogCoordhNV(@GLhalf short fog); + + public void glSecondaryColor3hNV(@GLhalf short red, @GLhalf short green, @GLhalf short blue); + + public void glVertexAttrib1hNV(@GLuint int index, @GLhalf short x); + + public void glVertexAttrib2hNV(@GLuint int index, @GLhalf short x, @GLhalf short y); + + public void glVertexAttrib3hNV(@GLuint int index, @GLhalf short x, @GLhalf short y, @GLhalf short z); + + public void glVertexAttrib4hNV(@GLuint int index, @GLhalf short x, @GLhalf short y, @GLhalf short z, @GLhalf short w); + + @StripPostfix("attribs") + public void glVertexAttribs1hvNV(@GLuint int index, @AutoSize("attribs") @GLsizei int n, @Const @GLhalf ShortBuffer attribs); + @StripPostfix("attribs") + public void glVertexAttribs2hvNV(@GLuint int index, @AutoSize(value="attribs", expression=" >> 1") @GLsizei int n, @Const @GLhalf ShortBuffer attribs); + @StripPostfix("attribs") + public void glVertexAttribs3hvNV(@GLuint int index, @AutoSize(value="attribs", expression=" / 3") @GLsizei int n, @Const @GLhalf ShortBuffer attribs); + @StripPostfix("attribs") + public void glVertexAttribs4hvNV(@GLuint int index, @AutoSize(value="attribs", expression=" >> 2") @GLsizei int n, @Const @GLhalf ShortBuffer attribs); +} diff --git a/src/templates/org/lwjgl/opengl/NV_light_max_exponent.java b/src/templates/org/lwjgl/opengl/NV_light_max_exponent.java new file mode 100644 index 00000000..d1111aab --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_light_max_exponent.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_light_max_exponent { + public static final int GL_MAX_SHININESS_NV = 0x8504; + public static final int GL_MAX_SPOT_EXPONENT_NV = 0x8505; +} diff --git a/src/templates/org/lwjgl/opengl/NV_multisample_filter_hint.java b/src/templates/org/lwjgl/opengl/NV_multisample_filter_hint.java new file mode 100644 index 00000000..4fbbefde --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_multisample_filter_hint.java @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_multisample_filter_hint { + /* + * Accepted by the parameter of Hint and by the + * parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev: + */ + public static final int GL_MULTISAMPLE_FILTER_HINT_NV = 0x8534; +} diff --git a/src/templates/org/lwjgl/opengl/NV_occlusion_query.java b/src/templates/org/lwjgl/opengl/NV_occlusion_query.java new file mode 100644 index 00000000..d8a347f9 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_occlusion_query.java @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; + +public interface NV_occlusion_query { + public static final int GL_OCCLUSION_TEST_HP = 0x8165; + public static final int GL_OCCLUSION_TEST_RESULT_HP = 0x8166; + /* HP_occlusion_test */ + 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 void glGenOcclusionQueriesNV(@AutoSize("piIDs") @GLsizei int n, @GLuint IntBuffer piIDs); + public void glDeleteOcclusionQueriesNV(@AutoSize("piIDs") @GLsizei int n, @Const @GLuint IntBuffer piIDs); + + public boolean glIsOcclusionQueryNV(@GLuint int id); + + public void glBeginOcclusionQueryNV(@GLuint int id); + + public void glEndOcclusionQueryNV(); + + @StripPostfix("params") + public void glGetOcclusionQueryuivNV(@GLuint int id, @GLenum int pname, @Check("4") @GLuint IntBuffer params); + @StripPostfix("params") + public void glGetOcclusionQueryivNV(@GLuint int id, @GLenum int pname, @Check("4") IntBuffer params); +} diff --git a/src/templates/org/lwjgl/opengl/NV_packed_depth_stencil.java b/src/templates/org/lwjgl/opengl/NV_packed_depth_stencil.java new file mode 100644 index 00000000..3694efe5 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_packed_depth_stencil.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_packed_depth_stencil { + public static final int GL_DEPTH_STENCIL_NV = 0x84F9; + public static final int GL_UNSIGNED_INT_24_8_NV = 0x84FA; +} diff --git a/src/templates/org/lwjgl/opengl/NV_pixel_data_range.java b/src/templates/org/lwjgl/opengl/NV_pixel_data_range.java new file mode 100644 index 00000000..50da6c3c --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_pixel_data_range.java @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.generator.*; + +public interface NV_pixel_data_range { + /* + * Accepted by the parameter of PixelDataRangeNV and + * FlushPixelDataRangeNV, and by the parameter of + * EnableClientState, DisableClientState, and IsEnabled: + */ + public static final int GL_WRITE_PIXEL_DATA_RANGE_NV = 0x8878; + public static final int GL_READ_PIXEL_DATA_RANGE_NV = 0x8879; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV = 0x887A; + public static final int GL_READ_PIXEL_DATA_RANGE_LENGTH_NV = 0x887B; + + /* + * Accepted by the parameter of GetPointerv: + */ + public static final int GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV = 0x887C; + public static final int GL_READ_PIXEL_DATA_RANGE_POINTER_NV = 0x887D; + + public void glPixelDataRangeNV(@GLenum int target, @AutoSize("data") @GLsizei int length, + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer data); + + public void glFlushPixelDataRangeNV(@GLenum int target); +} diff --git a/src/templates/org/lwjgl/opengl/NV_point_sprite.java b/src/templates/org/lwjgl/opengl/NV_point_sprite.java new file mode 100644 index 00000000..64a9e638 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_point_sprite.java @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; + +public interface NV_point_sprite { + public static final int GL_POINT_SPRITE_NV = 0x8861; + public static final int GL_COORD_REPLACE_NV = 0x8862; + public static final int GL_POINT_SPRITE_R_MODE_NV = 0x8863; + + public void glPointParameteriNV(@GLenum int pname, int param); + + @StripPostfix("params") + public void glPointParameterivNV(@GLenum int pname, @Check("4") @Const IntBuffer params); +} diff --git a/src/templates/org/lwjgl/opengl/NV_primitive_restart.java b/src/templates/org/lwjgl/opengl/NV_primitive_restart.java new file mode 100644 index 00000000..870dd303 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_primitive_restart.java @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +public interface NV_primitive_restart { + /* + * Accepted by the parameter of EnableClientState and + * DisableClientState, by the parameter of IsEnabled, and by + * the parameter of GetBooleanv, GetIntegerv, GetFloatv, and + * GetDoublev: + */ + public static final int GL_PRIMITIVE_RESTART_NV = 0x8558; + + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_PRIMITIVE_RESTART_INDEX_NV = 0x8559; + + public void glPrimitiveRestartNV(); + + public void glPrimitiveRestartIndexNV(@GLuint int index); +} diff --git a/src/templates/org/lwjgl/opengl/NV_program.java b/src/templates/org/lwjgl/opengl/NV_program.java new file mode 100644 index 00000000..9d3887cd --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_program.java @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; + +@Extension(postfix="NV", isFinal=false) +public interface NV_program { + /* + Accepted by the parameter of GetProgramivNV: + */ + public static final int GL_PROGRAM_TARGET_NV = 0x8646; + public static final int GL_PROGRAM_LENGTH_NV = 0x8627; + public static final int GL_PROGRAM_RESIDENT_NV = 0x8647; + + /* + Accepted by the parameter of GetProgramStringNV: + */ + public static final int GL_PROGRAM_STRING_NV = 0x8628; + + /* + Accepted by the parameter of GetBooleanv, GetIntegerv, + GetFloatv, and GetDoublev: + */ + public static final int GL_PROGRAM_ERROR_POSITION_NV = 0x864B; + + /* + Accepted by the parameter of GetString: + */ + public static final int GL_PROGRAM_ERROR_STRING_NV = 0x8874; + + public void glLoadProgramNV(@GLenum int target, @GLuint int programID, @AutoSize("string") @GLsizei int length, @Const @GLubyte Buffer string); + + public void glBindProgramNV(@GLenum int target, @GLuint int programID); + + public void glDeleteProgramsNV(@AutoSize("programs") @GLsizei int n, @Const @GLuint IntBuffer programs); + public void glGenProgramsNV(@AutoSize("programs") @GLsizei int n, @GLuint IntBuffer programs); + + @StripPostfix("params") + public void glGetProgramivNV(@GLuint int programID, @GLenum int parameterName, @Check @GLint IntBuffer params); + + public void glGetProgramStringNV(@GLuint int programID, @GLenum int parameterName, @Check @GLubyte Buffer paramString); + + public boolean glIsProgramNV(@GLuint int programID); + + @Code( " if (programIDs.remaining() != programResidences.remaining())\n" + + " throw new IllegalArgumentException(\"programIDs.remaining() != programResidences.remaining()\");") + public boolean glAreProgramsResidentNV(@AutoSize("programIDs") @GLsizei int n, + @Const + @GLuint + IntBuffer programIDs, + @Check + @GLboolean + ByteBuffer programResidences); + + public void glRequestResidentProgramsNV(@AutoSize("programIDs") @GLsizei int n, @GLuint IntBuffer programIDs); +} + diff --git a/src/templates/org/lwjgl/opengl/NV_register_combiners.java b/src/templates/org/lwjgl/opengl/NV_register_combiners.java new file mode 100644 index 00000000..99a441db --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_register_combiners.java @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +import org.lwjgl.generator.*; + +public interface NV_register_combiners { + public static final int GL_REGISTER_COMBINERS_NV = 0x8522; + public static final int GL_COMBINER0_NV = 0x8550; + public static final int GL_COMBINER1_NV = 0x8551; + public static final int GL_COMBINER2_NV = 0x8552; + public static final int GL_COMBINER3_NV = 0x8553; + public static final int GL_COMBINER4_NV = 0x8554; + public static final int GL_COMBINER5_NV = 0x8555; + public static final int GL_COMBINER6_NV = 0x8556; + public static final int GL_COMBINER7_NV = 0x8557; + public static final int GL_VARIABLE_A_NV = 0x8523; + public static final int GL_VARIABLE_B_NV = 0x8524; + public static final int GL_VARIABLE_C_NV = 0x8525; + public static final int GL_VARIABLE_D_NV = 0x8526; + public static final int GL_VARIABLE_E_NV = 0x8527; + public static final int GL_VARIABLE_F_NV = 0x8528; + public static final int GL_VARIABLE_G_NV = 0x8529; + public static final int GL_CONSTANT_COLOR0_NV = 0x852A; + public static final int GL_CONSTANT_COLOR1_NV = 0x852B; + public static final int GL_PRIMARY_COLOR_NV = 0x852C; + public static final int GL_SECONDARY_COLOR_NV = 0x852D; + public static final int GL_SPARE0_NV = 0x852E; + public static final int GL_SPARE1_NV = 0x852F; + public static final int GL_UNSIGNED_IDENTITY_NV = 0x8536; + public static final int GL_UNSIGNED_INVERT_NV = 0x8537; + public static final int GL_EXPAND_NORMAL_NV = 0x8538; + public static final int GL_EXPAND_NEGATE_NV = 0x8539; + public static final int GL_HALF_BIAS_NORMAL_NV = 0x853A; + public static final int GL_HALF_BIAS_NEGATE_NV = 0x853B; + public static final int GL_SIGNED_IDENTITY_NV = 0x853C; + public static final int GL_SIGNED_NEGATE_NV = 0x853D; + public static final int GL_E_TIMES_F_NV = 0x8531; + public static final int GL_SPARE0_PLUS_SECONDARY_COLOR_NV = 0x8532; + public static final int GL_SCALE_BY_TWO_NV = 0x853E; + public static final int GL_SCALE_BY_FOUR_NV = 0x853F; + public static final int GL_SCALE_BY_ONE_HALF_NV = 0x8540; + public static final int GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = 0x8541; + public static final int GL_DISCARD_NV = 0x8530; + public static final int GL_COMBINER_INPUT_NV = 0x8542; + public static final int GL_COMBINER_MAPPING_NV = 0x8543; + public static final int GL_COMBINER_COMPONENT_USAGE_NV = 0x8544; + public static final int GL_COMBINER_AB_DOT_PRODUCT_NV = 0x8545; + public static final int GL_COMBINER_CD_DOT_PRODUCT_NV = 0x8546; + public static final int GL_COMBINER_MUX_SUM_NV = 0x8547; + public static final int GL_COMBINER_SCALE_NV = 0x8548; + public static final int GL_COMBINER_BIAS_NV = 0x8549; + public static final int GL_COMBINER_AB_OUTPUT_NV = 0x854A; + public static final int GL_COMBINER_CD_OUTPUT_NV = 0x854B; + public static final int GL_COMBINER_SUM_OUTPUT_NV = 0x854C; + public static final int GL_NUM_GENERAL_COMBINERS_NV = 0x854E; + public static final int GL_COLOR_SUM_CLAMP_NV = 0x854F; + public static final int GL_MAX_GENERAL_COMBINERS_NV = 0x854D; + + public void glCombinerParameterfNV(@GLenum int pname, float param); + + @StripPostfix("params") + public void glCombinerParameterfvNV(@GLenum int pname, @Check("4") @Const FloatBuffer params); + + public void glCombinerParameteriNV(@GLenum int pname, int param); + + @StripPostfix("params") + public void glCombinerParameterivNV(@GLenum int pname, @Check("4") @Const IntBuffer params); + + public void glCombinerInputNV(@GLenum int stage, @GLenum int portion, @GLenum int variable, @GLenum int input, @GLenum int mapping, @GLenum int componentUsage); + + public void glCombinerOutputNV(@GLenum int stage, @GLenum int portion, @GLenum int abOutput, @GLenum int cdOutput, @GLenum int sumOutput, @GLenum int scale, @GLenum int bias, boolean abDotProduct, boolean cdDotProduct, boolean muxSum); + + public void glFinalCombinerInputNV(@GLenum int variable, @GLenum int input, @GLenum int mapping, @GLenum int componentUsage); + + @StripPostfix("params") + public void glGetCombinerInputParameterfvNV(@GLenum int stage, @GLenum int portion, @GLenum int variable, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetCombinerInputParameterivNV(@GLenum int stage, @GLenum int portion, @GLenum int variable, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("params") + public void glGetCombinerOutputParameterfvNV(@GLenum int stage, @GLenum int portion, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetCombinerOutputParameterivNV(@GLenum int stage, @GLenum int portion, @GLenum int pname, @Check("4") IntBuffer params); + + @StripPostfix("params") + public void glGetFinalCombinerInputParameterfvNV(@GLenum int variable, @GLenum int pname, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetFinalCombinerInputParameterivNV(@GLenum int variable, @GLenum int pname, @Check("4") IntBuffer params); +} diff --git a/src/templates/org/lwjgl/opengl/NV_register_combiners2.java b/src/templates/org/lwjgl/opengl/NV_register_combiners2.java new file mode 100644 index 00000000..f142ab70 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_register_combiners2.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.FloatBuffer; + +import org.lwjgl.generator.*; + +public interface NV_register_combiners2 { + public static final int GL_PER_STAGE_CONSTANTS_NV = 0x8535; + + @StripPostfix("params") + public void glCombinerStageParameterfvNV(@GLenum int stage, @GLenum int pname, @Const @Check("4") FloatBuffer params); + + @StripPostfix("params") + public void glGetCombinerStageParameterfvNV(@GLenum int stage, @GLenum int pname, @Check("4") FloatBuffer params); +} diff --git a/src/templates/org/lwjgl/opengl/NV_texgen_reflection.java b/src/templates/org/lwjgl/opengl/NV_texgen_reflection.java new file mode 100644 index 00000000..517fac70 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_texgen_reflection.java @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_texgen_reflection { + public static final int GL_NORMAL_MAP_NV = 0x8511; + public static final int GL_REFLECTION_MAP_NV = 0x8512; +} diff --git a/src/templates/org/lwjgl/opengl/NV_texture_compression_vtc.java b/src/templates/org/lwjgl/opengl/NV_texture_compression_vtc.java new file mode 100644 index 00000000..a4673065 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_texture_compression_vtc.java @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.generator.*; + +@Extension(postfix="NV", className="NVTextureCompressionVTC") +public interface NV_texture_compression_vtc { + /* + * Accepted by the parameter of TexImage3D and + * CompressedTexImage3DARB and the parameter of + * CompressedTexSubImage2DARB: + */ + public static final int COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0; + public static final int COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; + public static final int COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; + public static final int COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; +} diff --git a/src/templates/org/lwjgl/opengl/NV_texture_env_combine4.java b/src/templates/org/lwjgl/opengl/NV_texture_env_combine4.java new file mode 100644 index 00000000..b7b6ed6e --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_texture_env_combine4.java @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_texture_env_combine4 { + public static final int GL_COMBINE4_NV = 0x8503; + public static final int GL_SOURCE3_RGB_NV = 0x8583; + public static final int GL_SOURCE3_ALPHA_NV = 0x858B; + public static final int GL_OPERAND3_RGB_NV = 0x8593; + public static final int GL_OPERAND3_ALPHA_NV = 0x859B; +} diff --git a/src/templates/org/lwjgl/opengl/NV_texture_expand_normal.java b/src/templates/org/lwjgl/opengl/NV_texture_expand_normal.java new file mode 100644 index 00000000..4db8b1c7 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_texture_expand_normal.java @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_texture_expand_normal { + /* + * Accepted by the parameters of TexParameteri, + * TexParameteriv, TexParameterf, TexParameterfv, GetTexParameteri, + * and GetTexParameteriv: + */ + public static final int GL_TEXTURE_UNSIGNED_REMAP_MODE_NV = 0x888F; +} diff --git a/src/templates/org/lwjgl/opengl/NV_texture_rectangle.java b/src/templates/org/lwjgl/opengl/NV_texture_rectangle.java new file mode 100644 index 00000000..89aa5f3a --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_texture_rectangle.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_texture_rectangle { + public static final int GL_TEXTURE_RECTANGLE_NV = 0x84F5; + public static final int GL_TEXTURE_BINDING_RECTANGLE_NV = 0x84F6; + public static final int GL_PROXY_TEXTURE_RECTANGLE_NV = 0x84F7; + public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_NV = 0x84F8; +} diff --git a/src/templates/org/lwjgl/opengl/NV_texture_shader.java b/src/templates/org/lwjgl/opengl/NV_texture_shader.java new file mode 100644 index 00000000..c5f79b9e --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_texture_shader.java @@ -0,0 +1,105 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_texture_shader { + public static final int GL_TEXTURE_SHADER_NV = 0x86DE; + public static final int GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV = 0x86D9; + public static final int GL_SHADER_OPERATION_NV = 0x86DF; + public static final int GL_CULL_MODES_NV = 0x86E0; + public static final int GL_OFFSET_TEXTURE_MATRIX_NV = 0x86E1; + public static final int GL_OFFSET_TEXTURE_SCALE_NV = 0x86E2; + public static final int GL_OFFSET_TEXTURE_BIAS_NV = 0x86E3; + public static final int GL_PREVIOUS_TEXTURE_INPUT_NV = 0x86E4; + public static final int GL_CONST_EYE_NV = 0x86E5; + public static final int GL_SHADER_CONSISTENT_NV = 0x86DD; + public static final int GL_PASS_THROUGH_NV = 0x86E6; + public static final int GL_CULL_FRAGMENT_NV = 0x86E7; + public static final int GL_OFFSET_TEXTURE_2D_NV = 0x86E8; + public static final int GL_OFFSET_TEXTURE_RECTANGLE_NV = 0x864C; + public static final int GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV = 0x864D; + public static final int GL_DEPENDENT_AR_TEXTURE_2D_NV = 0x86E9; + public static final int GL_DEPENDENT_GB_TEXTURE_2D_NV = 0x86EA; + public static final int GL_DOT_PRODUCT_NV = 0x86EC; + public static final int GL_DOT_PRODUCT_DEPTH_REPLACE_NV = 0x86ED; + public static final int GL_DOT_PRODUCT_TEXTURE_2D_NV = 0x86EE; + public static final int GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV = 0x864E; + public static final int GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV = 0x86F0; + public static final int GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV = 0x86F1; + public static final int GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV = 0x86F2; + public static final int GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV = 0x86F3; + public static final int GL_HILO_NV = 0x86F4; + public static final int GL_DSDT_NV = 0x86F5; + public static final int GL_DSDT_MAG_NV = 0x86F6; + public static final int GL_DSDT_MAG_VIB_NV = 0x86F7; + public static final int GL_UNSIGNED_INT_S8_S8_8_8_NV = 0x86DA; + public static final int GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86DB; + public static final int GL_SIGNED_RGBA_NV = 0x86FB; + public static final int GL_SIGNED_RGBA8_NV = 0x86FC; + public static final int GL_SIGNED_RGB_NV = 0x86FE; + public static final int GL_SIGNED_RGB8_NV = 0x86FF; + public static final int GL_SIGNED_LUMINANCE_NV = 0x8701; + public static final int GL_SIGNED_LUMINANCE8_NV = 0x8702; + public static final int GL_SIGNED_LUMINANCE_ALPHA_NV = 0x8703; + public static final int GL_SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704; + public static final int GL_SIGNED_ALPHA_NV = 0x8705; + public static final int GL_SIGNED_ALPHA8_NV = 0x8706; + public static final int GL_SIGNED_INTENSITY_NV = 0x8707; + public static final int GL_SIGNED_INTENSITY8_NV = 0x8708; + public static final int GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870C; + public static final int GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870D; + public static final int GL_HILO16_NV = 0x86F8; + public static final int GL_SIGNED_HILO_NV = 0x86F9; + public static final int GL_SIGNED_HILO16_NV = 0x86FA; + public static final int GL_DSDT8_NV = 0x8709; + public static final int GL_DSDT8_MAG8_NV = 0x870A; + public static final int GL_DSDT_MAG_INTENSITY_NV = 0x86DC; + public static final int GL_DSDT8_MAG8_INTENSITY8_NV = 0x870B; + public static final int GL_HI_SCALE_NV = 0x870E; + public static final int GL_LO_SCALE_NV = 0x870F; + public static final int GL_DS_SCALE_NV = 0x8710; + public static final int GL_DT_SCALE_NV = 0x8711; + public static final int GL_MAGNITUDE_SCALE_NV = 0x8712; + public static final int GL_VIBRANCE_SCALE_NV = 0x8713; + public static final int GL_HI_BIAS_NV = 0x8714; + public static final int GL_LO_BIAS_NV = 0x8715; + public static final int GL_DS_BIAS_NV = 0x8716; + public static final int GL_DT_BIAS_NV = 0x8717; + public static final int GL_MAGNITUDE_BIAS_NV = 0x8718; + public static final int GL_VIBRANCE_BIAS_NV = 0x8719; + public static final int GL_TEXTURE_BORDER_VALUES_NV = 0x871A; + public static final int GL_TEXTURE_HI_SIZE_NV = 0x871B; + public static final int GL_TEXTURE_LO_SIZE_NV = 0x871C; + public static final int GL_TEXTURE_DS_SIZE_NV = 0x871D; + public static final int GL_TEXTURE_DT_SIZE_NV = 0x871E; + public static final int GL_TEXTURE_MAG_SIZE_NV = 0x871F; +} diff --git a/src/templates/org/lwjgl/opengl/NV_texture_shader2.java b/src/templates/org/lwjgl/opengl/NV_texture_shader2.java new file mode 100644 index 00000000..bf16907c --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_texture_shader2.java @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_texture_shader2 { + public static final int GL_DOT_PRODUCT_TEXTURE_3D_NV = 0x86EF; + public static final int GL_HILO_NV = 0x86F4; + public static final int GL_DSDT_NV = 0x86F5; + public static final int GL_DSDT_MAG_NV = 0x86F6; + public static final int GL_DSDT_MAG_VIB_NV = 0x86F7; + public static final int GL_UNSIGNED_INT_S8_S8_8_8_NV = 0x86DA; + public static final int GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86DB; + public static final int GL_SIGNED_RGBA_NV = 0x86FB; + public static final int GL_SIGNED_RGBA8_NV = 0x86FC; + public static final int GL_SIGNED_RGB_NV = 0x86FE; + public static final int GL_SIGNED_RGB8_NV = 0x86FF; + public static final int GL_SIGNED_LUMINANCE_NV = 0x8701; + public static final int GL_SIGNED_LUMINANCE8_NV = 0x8702; + public static final int GL_SIGNED_LUMINANCE_ALPHA_NV = 0x8703; + public static final int GL_SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704; + public static final int GL_SIGNED_ALPHA_NV = 0x8705; + public static final int GL_SIGNED_ALPHA8_NV = 0x8706; + public static final int GL_SIGNED_INTENSITY_NV = 0x8707; + public static final int GL_SIGNED_INTENSITY8_NV = 0x8708; + public static final int GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870C; + public static final int GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870D; + public static final int GL_HILO16_NV = 0x86F8; + public static final int GL_SIGNED_HILO_NV = 0x86F9; + public static final int GL_SIGNED_HILO16_NV = 0x86FA; + public static final int GL_DSDT8_NV = 0x8709; + public static final int GL_DSDT8_MAG8_NV = 0x870A; + public static final int GL_DSDT_MAG_INTENSITY_NV = 0x86DC; + public static final int GL_DSDT8_MAG8_INTENSITY8_NV = 0x870B; +} diff --git a/src/templates/org/lwjgl/opengl/NV_texture_shader3.java b/src/templates/org/lwjgl/opengl/NV_texture_shader3.java new file mode 100644 index 00000000..18af1aed --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_texture_shader3.java @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_texture_shader3 { + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV = 0x8850; + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV = 0x8851; + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8852; + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV = 0x8853; + public static final int GL_OFFSET_HILO_TEXTURE_2D_NV = 0x8854; + public static final int GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV = 0x8855; + public static final int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV = 0x8856; + public static final int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8857; + public static final int GL_DEPENDENT_HILO_TEXTURE_2D_NV = 0x8858; + public static final int GL_DEPENDENT_RGB_TEXTURE_3D_NV = 0x8859; + public static final int GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV = 0x885A; + public static final int GL_DOT_PRODUCT_PASS_THROUGH_NV = 0x885B; + public static final int GL_DOT_PRODUCT_TEXTURE_1D_NV = 0x885C; + public static final int GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV = 0x885D; + public static final int GL_HILO8_NV = 0x885E; + public static final int GL_SIGNED_HILO8_NV = 0x885F; + public static final int GL_FORCE_BLUE_TO_ONE_NV = 0x8860; +} diff --git a/src/templates/org/lwjgl/opengl/NV_vertex_array_range.java b/src/templates/org/lwjgl/opengl/NV_vertex_array_range.java new file mode 100644 index 00000000..11db12d9 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_vertex_array_range.java @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.ByteBuffer; + +import org.lwjgl.generator.*; + +public interface NV_vertex_array_range { + public static final int GL_VERTEX_ARRAY_RANGE_NV = 0x851D; + public static final int GL_VERTEX_ARRAY_RANGE_LENGTH_NV = 0x851E; + public static final int GL_VERTEX_ARRAY_RANGE_VALID_NV = 0x851F; + public static final int GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = 0x8520; + public static final int GL_VERTEX_ARRAY_RANGE_POINTER_NV = 0x8521; + + public void glVertexArrayRangeNV(@AutoSize("pPointer") @GLsizei int size, + @Const + @GLbyte + @GLshort + @GLint + @GLfloat + Buffer pPointer); + + public void glFlushVertexArrayRangeNV(); + + @PlatformDependent({Platform.WGL, Platform.GLX}) + public @GLvoid ByteBuffer glAllocateMemoryNV(int size, float readFrequency, float writeFrequency, float priority); + + @PlatformDependent({Platform.WGL, Platform.GLX}) + public void glFreeMemoryNV(@Check @GLbyte Buffer pointer); +} diff --git a/src/templates/org/lwjgl/opengl/NV_vertex_array_range2.java b/src/templates/org/lwjgl/opengl/NV_vertex_array_range2.java new file mode 100644 index 00000000..66201e18 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_vertex_array_range2.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_vertex_array_range2 { + public static final int GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV = 0x8533; +} diff --git a/src/templates/org/lwjgl/opengl/NV_vertex_program.java b/src/templates/org/lwjgl/opengl/NV_vertex_program.java new file mode 100644 index 00000000..a1f80551 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_vertex_program.java @@ -0,0 +1,272 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import java.nio.Buffer; +import java.nio.BufferOverflowException; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +import org.lwjgl.generator.*; + +public interface NV_vertex_program extends NV_program { + /* + Accepted by the parameter of Disable, Enable, and IsEnabled, + and by the parameter of GetBooleanv, GetIntegerv, GetFloatv, + and GetDoublev, and by the parameter of BindProgramNV, + ExecuteProgramNV, GetProgramParameter[df]vNV, GetTrackMatrixivNV, + LoadProgramNV, ProgramParameter[s]4[df][v]NV, and TrackMatrixNV: + */ + public static final int GL_VERTEX_PROGRAM_NV = 0x8620; + + /* + Accepted by the parameter of Disable, Enable, and IsEnabled, + and by the parameter of GetBooleanv, GetIntegerv, GetFloatv, + and GetDoublev: + */ + public static final int GL_VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642; + public static final int GL_VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643; + + /* + Accepted by the parameter of ExecuteProgramNV and + LoadProgramNV: + */ + public static final int GL_VERTEX_STATE_PROGRAM_NV = 0x8621; + + /* + Accepted by the parameter of GetVertexAttrib[dfi]vNV: + */ + public static final int GL_ATTRIB_ARRAY_SIZE_NV = 0x8623; + public static final int GL_ATTRIB_ARRAY_STRIDE_NV = 0x8624; + public static final int GL_ATTRIB_ARRAY_TYPE_NV = 0x8625; + public static final int GL_CURRENT_ATTRIB_NV = 0x8626; + + /* + Accepted by the parameter of GetProgramParameterfvNV + and GetProgramParameterdvNV: + */ + public static final int GL_PROGRAM_PARAMETER_NV = 0x8644; + + /* + Accepted by the parameter of GetVertexAttribPointervNV: + */ + public static final int GL_ATTRIB_ARRAY_POINTER_NV = 0x8645; + + /* + Accepted by the parameter of GetTrackMatrixivNV: + */ + public static final int GL_TRACK_MATRIX_NV = 0x8648; + public static final int GL_TRACK_MATRIX_TRANSFORM_NV = 0x8649; + + /* + Accepted by the parameter of GetBooleanv, GetIntegerv, + GetFloatv, and GetDoublev: + */ + public static final int GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = 0x862E; + public static final int GL_MAX_TRACK_MATRICES_NV = 0x862F; + public static final int GL_CURRENT_MATRIX_STACK_DEPTH_NV = 0x8640; + public static final int GL_CURRENT_MATRIX_NV = 0x8641; + public static final int GL_VERTEX_PROGRAM_BINDING_NV = 0x864A; + + /* + Accepted by the parameter of TrackMatrixNV: + */ + public static final int GL_MODELVIEW_PROJECTION_NV = 0x8629; + + /* + Accepted by the parameter of TrackMatrixNV and by the + parameter of MatrixMode: + */ + public static final int GL_MATRIX0_NV = 0x8630; + public static final int GL_MATRIX1_NV = 0x8631; + public static final int GL_MATRIX2_NV = 0x8632; + public static final int GL_MATRIX3_NV = 0x8633; + public static final int GL_MATRIX4_NV = 0x8634; + public static final int GL_MATRIX5_NV = 0x8635; + public static final int GL_MATRIX6_NV = 0x8636; + public static final int GL_MATRIX7_NV = 0x8637; + + /* + Accepted by the parameter of TrackMatrixNV: + */ + public static final int GL_IDENTITY_NV = 0x862A; + public static final int GL_INVERSE_NV = 0x862B; + public static final int GL_TRANSPOSE_NV = 0x862C; + public static final int GL_INVERSE_TRANSPOSE_NV = 0x862D; + + /* + Accepted by the parameter of EnableClientState and + DisableClientState, by the parameter of IsEnabled, and by + the parameter of GetBooleanv, GetIntegerv, GetFloatv, and + GetDoublev: + */ + public static final int GL_VERTEX_ATTRIB_ARRAY0_NV = 0x8650; + public static final int GL_VERTEX_ATTRIB_ARRAY1_NV = 0x8651; + public static final int GL_VERTEX_ATTRIB_ARRAY2_NV = 0x8652; + public static final int GL_VERTEX_ATTRIB_ARRAY3_NV = 0x8653; + public static final int GL_VERTEX_ATTRIB_ARRAY4_NV = 0x8654; + public static final int GL_VERTEX_ATTRIB_ARRAY5_NV = 0x8655; + public static final int GL_VERTEX_ATTRIB_ARRAY6_NV = 0x8656; + public static final int GL_VERTEX_ATTRIB_ARRAY7_NV = 0x8657; + public static final int GL_VERTEX_ATTRIB_ARRAY8_NV = 0x8658; + public static final int GL_VERTEX_ATTRIB_ARRAY9_NV = 0x8659; + public static final int GL_VERTEX_ATTRIB_ARRAY10_NV = 0x865A; + public static final int GL_VERTEX_ATTRIB_ARRAY11_NV = 0x865B; + public static final int GL_VERTEX_ATTRIB_ARRAY12_NV = 0x865C; + public static final int GL_VERTEX_ATTRIB_ARRAY13_NV = 0x865D; + public static final int GL_VERTEX_ATTRIB_ARRAY14_NV = 0x865E; + public static final int GL_VERTEX_ATTRIB_ARRAY15_NV = 0x865F; + + /* + Accepted by the parameter of GetMapdv, GetMapfv, GetMapiv, + Map1d and Map1f and by the parameter of Enable, Disable, and + IsEnabled, and by the parameter of GetBooleanv, GetIntegerv, + GetFloatv, and GetDoublev: + */ + public static final int GL_MAP1_VERTEX_ATTRIB0_4_NV = 0x8660; + public static final int GL_MAP1_VERTEX_ATTRIB1_4_NV = 0x8661; + public static final int GL_MAP1_VERTEX_ATTRIB2_4_NV = 0x8662; + public static final int GL_MAP1_VERTEX_ATTRIB3_4_NV = 0x8663; + public static final int GL_MAP1_VERTEX_ATTRIB4_4_NV = 0x8664; + public static final int GL_MAP1_VERTEX_ATTRIB5_4_NV = 0x8665; + public static final int GL_MAP1_VERTEX_ATTRIB6_4_NV = 0x8666; + public static final int GL_MAP1_VERTEX_ATTRIB7_4_NV = 0x8667; + public static final int GL_MAP1_VERTEX_ATTRIB8_4_NV = 0x8668; + public static final int GL_MAP1_VERTEX_ATTRIB9_4_NV = 0x8669; + public static final int GL_MAP1_VERTEX_ATTRIB10_4_NV = 0x866A; + public static final int GL_MAP1_VERTEX_ATTRIB11_4_NV = 0x866B; + public static final int GL_MAP1_VERTEX_ATTRIB12_4_NV = 0x866C; + public static final int GL_MAP1_VERTEX_ATTRIB13_4_NV = 0x866D; + public static final int GL_MAP1_VERTEX_ATTRIB14_4_NV = 0x866E; + public static final int GL_MAP1_VERTEX_ATTRIB15_4_NV = 0x866F; + + /* + Accepted by the parameter of GetMapdv, GetMapfv, GetMapiv, + Map2d and Map2f and by the parameter of Enable, Disable, and + IsEnabled, and by the parameter of GetBooleanv, GetIntegerv, + GetFloatv, and GetDoublev: + */ + public static final int GL_MAP2_VERTEX_ATTRIB0_4_NV = 0x8670; + public static final int GL_MAP2_VERTEX_ATTRIB1_4_NV = 0x8671; + public static final int GL_MAP2_VERTEX_ATTRIB2_4_NV = 0x8672; + public static final int GL_MAP2_VERTEX_ATTRIB3_4_NV = 0x8673; + public static final int GL_MAP2_VERTEX_ATTRIB4_4_NV = 0x8674; + public static final int GL_MAP2_VERTEX_ATTRIB5_4_NV = 0x8675; + public static final int GL_MAP2_VERTEX_ATTRIB6_4_NV = 0x8676; + public static final int GL_MAP2_VERTEX_ATTRIB7_4_NV = 0x8677; + public static final int GL_MAP2_VERTEX_ATTRIB8_4_NV = 0x8678; + public static final int GL_MAP2_VERTEX_ATTRIB9_4_NV = 0x8679; + public static final int GL_MAP2_VERTEX_ATTRIB10_4_NV = 0x867A; + public static final int GL_MAP2_VERTEX_ATTRIB11_4_NV = 0x867B; + public static final int GL_MAP2_VERTEX_ATTRIB12_4_NV = 0x867C; + public static final int GL_MAP2_VERTEX_ATTRIB13_4_NV = 0x867D; + public static final int GL_MAP2_VERTEX_ATTRIB14_4_NV = 0x867E; + public static final int GL_MAP2_VERTEX_ATTRIB15_4_NV = 0x867F; + + public void glExecuteProgramNV(@GLenum int target, @GLuint int id, @Check("4") @Const FloatBuffer params); + + @StripPostfix("params") + public void glGetProgramParameterfvNV(@GLenum int target, @GLuint int index, @GLenum int parameterName, @Check("4") FloatBuffer params); + + @StripPostfix("params") + public void glGetTrackMatrixivNV(@GLenum int target, @GLuint int address, @GLenum int parameterName, @Check("4") IntBuffer params); + + @StripPostfix("params") + public void glGetVertexAttribfvNV(@GLuint int index, @GLenum int parameterName, @Check("4") FloatBuffer params); + @StripPostfix("params") + public void glGetVertexAttribivNV(@GLuint int index, @GLenum int parameterName, @Check("4") IntBuffer params); + + @StripPostfix("pointer") + public void glGetVertexAttribPointervNV(@GLuint int index, @GLenum int parameterName, @Result @GLvoid ByteBuffer pointer); + + public void glProgramParameter4fNV(@GLenum int target, @GLuint int index, float x, float y, float z, float w); + + @StripPostfix("params") + public void glProgramParameters4fvNV(@GLenum int target, @GLuint int index, @AutoSize(value="params", expression=" >> 2") @GLuint int count, + @Const + FloatBuffer params); + + public void glTrackMatrixNV(@GLenum int target, @GLuint int address, @GLenum int matrix, @GLenum int transform); + + public void glVertexAttribPointerNV(@GLuint int index, int size, @GLenum int type, @GLsizei int stride, + @BufferObject(BufferKind.ArrayVBO) + @Check + @Const + @GLbyte + @GLubyte + @GLshort + @GLushort + @GLint + @GLuint + @GLfloat + Buffer buffer); + + public void glVertexAttrib1sNV(@GLuint int index, short x); + + public void glVertexAttrib1fNV(@GLuint int index, float x); + + public void glVertexAttrib2sNV(@GLuint int index, short x, short y); + + public void glVertexAttrib2fNV(@GLuint int index, float x, float y); + + public void glVertexAttrib3sNV(@GLuint int index, short x, short y, short z); + + public void glVertexAttrib3fNV(@GLuint int index, float x, float y, float z); + + public void glVertexAttrib4sNV(@GLuint int index, short x, short y, short z, short w); + + public void glVertexAttrib4fNV(@GLuint int index, float x, float y, float z, float w); + + public void glVertexAttrib4ubNV(@GLuint int index, @GLubyte byte x, @GLubyte byte y, @GLubyte byte z, @GLubyte byte w); + + @StripPostfix("v") + public void glVertexAttribs1svNV(@GLuint int index, @AutoSize("v") @GLsizei int n, @Const ShortBuffer v); + @StripPostfix("v") + public void glVertexAttribs1fvNV(@GLuint int index, @AutoSize("v") @GLsizei int n, @Const FloatBuffer v); + + @StripPostfix("v") + public void glVertexAttribs2svNV(@GLuint int index, @AutoSize(value="v", expression=" >> 1") @GLsizei int n, @Const ShortBuffer v); + @StripPostfix("v") + public void glVertexAttribs2fvNV(@GLuint int index, @AutoSize(value="v", expression=" >> 1") @GLsizei int n, @Const FloatBuffer v); + + @StripPostfix("v") + public void glVertexAttribs3svNV(@GLuint int index, @AutoSize(value="v", expression=" / 3") @GLsizei int n, @Const ShortBuffer v); + @StripPostfix("v") + public void glVertexAttribs3fvNV(@GLuint int index, @AutoSize(value="v", expression=" / 3") @GLsizei int n, @Const FloatBuffer v); + + @StripPostfix("v") + public void glVertexAttribs4svNV(@GLuint int index, @AutoSize(value="v", expression=" >> 2") @GLsizei int n, @Const ShortBuffer v); + @StripPostfix("v") + public void glVertexAttribs4fvNV(@GLuint int index, @AutoSize(value="v", expression=" >> 2") @GLsizei int n, @Const FloatBuffer v); +} diff --git a/src/templates/org/lwjgl/opengl/NV_vertex_program2_option.java b/src/templates/org/lwjgl/opengl/NV_vertex_program2_option.java new file mode 100644 index 00000000..13ea41de --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_vertex_program2_option.java @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_vertex_program2_option { + /* + * Accepted by the parameter of GetProgramivARB: + */ + public static final int GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88F4; + public static final int GL_MAX_PROGRAM_CALL_DEPTH_NV = 0x88F5; +} diff --git a/src/templates/org/lwjgl/opengl/NV_vertex_program3.java b/src/templates/org/lwjgl/opengl/NV_vertex_program3.java new file mode 100644 index 00000000..1bd84193 --- /dev/null +++ b/src/templates/org/lwjgl/opengl/NV_vertex_program3.java @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2002-2004 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +public interface NV_vertex_program3 { + /* + * Accepted by the parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8B4C; +}