New extensions: AMD_conservative_depth, EXT_shader_image_load_store, EXT_vertex_attrib_64bit, NV_gpu_program5, NV_gpu_shader5, NV_shader_buffer_store, NV_tessellation_program5, NV_vertex_attrib_integer_64bit

This commit is contained in:
Ioannis Tsakpinis 2010-04-14 14:58:18 +00:00
parent 3e20bde12f
commit 5f9c4fac58
12 changed files with 671 additions and 12 deletions

View File

@ -0,0 +1,35 @@
/*
* Copyright (c) 2002-2008 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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 AMD_conservative_depth {
}

View File

@ -137,13 +137,13 @@ public interface ARB_vertex_program extends ARB_program {
void glDisableVertexAttribArrayARB(@GLuint int index);
@StripPostfix("params")
void glGetVertexAttribfvARB(@GLuint int index, @GLenum int pname, @OutParameter @Check FloatBuffer params);
void glGetVertexAttribfvARB(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") FloatBuffer params);
@StripPostfix("params")
void glGetVertexAttribdvARB(@GLuint int index, @GLenum int pname, @OutParameter @Check DoubleBuffer params);
void glGetVertexAttribdvARB(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") DoubleBuffer params);
@StripPostfix("params")
void glGetVertexAttribivARB(@GLuint int index, @GLenum int pname, @OutParameter @Check IntBuffer params);
void glGetVertexAttribivARB(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") IntBuffer params);
@StripPostfix("result")
void glGetVertexAttribPointervARB(@GLuint int index, @GLenum int pname, @Result @GLvoid ByteBuffer result);

View File

@ -195,13 +195,13 @@ public interface ARB_vertex_shader {
int glGetAttribLocationARB(@GLhandleARB int programObj, @NullTerminated CharSequence name);
@StripPostfix("params")
void glGetVertexAttribfvARB(@GLuint int index, @GLenum int pname, @OutParameter @Check FloatBuffer params);
void glGetVertexAttribfvARB(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") FloatBuffer params);
@StripPostfix("params")
void glGetVertexAttribdvARB(@GLuint int index, @GLenum int pname, @OutParameter @Check DoubleBuffer params);
void glGetVertexAttribdvARB(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") DoubleBuffer params);
@StripPostfix("params")
void glGetVertexAttribivARB(@GLuint int index, @GLenum int pname, @OutParameter @Check IntBuffer params);
void glGetVertexAttribivARB(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") IntBuffer params);
@StripPostfix("result")
void glGetVertexAttribPointervARB(@GLuint int index, @GLenum int pname, @Result @GLvoid ByteBuffer result);

View File

@ -168,7 +168,7 @@ public interface EXT_gpu_shader4 {
@GLuint Buffer buffer);
@StripPostfix("params")
void glGetVertexAttribIivEXT(@GLuint int index, @GLenum int pname, @OutParameter @Check("4")IntBuffer params);
void glGetVertexAttribIivEXT(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") IntBuffer params);
@StripPostfix("params")
void glGetVertexAttribIuivEXT(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") @GLuint IntBuffer params);

View File

@ -0,0 +1,110 @@
/*
* Copyright (c) 2002-2008 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.util.generator.GLbitfield;
import org.lwjgl.util.generator.GLenum;
import org.lwjgl.util.generator.GLuint;
public interface EXT_shader_image_load_store {
/**
* Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
* GetFloatv, and GetDoublev:
*/
int GL_MAX_IMAGE_UNITS_EXT = 0x8F38;
int GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT = 0x8F39;
int GL_MAX_IMAGE_SAMPLES_EXT = 0x906D;
/** Accepted by the <target> parameter of GetIntegeri_v and GetBooleani_v: */
int GL_IMAGE_BINDING_NAME_EXT = 0x8F3A;
int GL_IMAGE_BINDING_LEVEL_EXT = 0x8F3B;
int GL_IMAGE_BINDING_LAYERED_EXT = 0x8F3C;
int GL_IMAGE_BINDING_LAYER_EXT = 0x8F3D;
int GL_IMAGE_BINDING_ACCESS_EXT = 0x8F3E;
int GL_IMAGE_BINDING_FORMAT_EXT = 0x906E;
/** Accepted by the <barriers> parameter of MemoryBarrierEXT: */
int GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT = 0x00000001;
int GL_ELEMENT_ARRAY_BARRIER_BIT_EXT = 0x00000002;
int GL_UNIFORM_BARRIER_BIT_EXT = 0x00000004;
int GL_TEXTURE_FETCH_BARRIER_BIT_EXT = 0x00000008;
int GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT = 0x00000020;
int GL_COMMAND_BARRIER_BIT_EXT = 0x00000040;
int GL_PIXEL_BUFFER_BARRIER_BIT_EXT = 0x00000080;
int GL_TEXTURE_UPDATE_BARRIER_BIT_EXT = 0x00000100;
int GL_BUFFER_UPDATE_BARRIER_BIT_EXT = 0x00000200;
int GL_FRAMEBUFFER_BARRIER_BIT_EXT = 0x00000400;
int GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT = 0x00000800;
int GL_ATOMIC_COUNTER_BARRIER_BIT_EXT = 0x00001000;
int GL_ALL_BARRIER_BITS_EXT = 0xFFFFFFFF;
/** Returned by the <type> parameter of GetActiveUniform: */
int GL_IMAGE_1D_EXT = 0x904C;
int GL_IMAGE_2D_EXT = 0x904D;
int GL_IMAGE_3D_EXT = 0x904E;
int GL_IMAGE_2D_RECT_EXT = 0x904F;
int GL_IMAGE_CUBE_EXT = 0x9050;
int GL_IMAGE_BUFFER_EXT = 0x9051;
int GL_IMAGE_1D_ARRAY_EXT = 0x9052;
int GL_IMAGE_2D_ARRAY_EXT = 0x9053;
int GL_IMAGE_CUBE_MAP_ARRAY_EXT = 0x9054;
int GL_IMAGE_2D_MULTISAMPLE_EXT = 0x9055;
int GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9056;
int GL_INT_IMAGE_1D_EXT = 0x9057;
int GL_INT_IMAGE_2D_EXT = 0x9058;
int GL_INT_IMAGE_3D_EXT = 0x9059;
int GL_INT_IMAGE_2D_RECT_EXT = 0x905A;
int GL_INT_IMAGE_CUBE_EXT = 0x905B;
int GL_INT_IMAGE_BUFFER_EXT = 0x905C;
int GL_INT_IMAGE_1D_ARRAY_EXT = 0x905D;
int GL_INT_IMAGE_2D_ARRAY_EXT = 0x905E;
int GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x905F;
int GL_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x9060;
int GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9061;
int GL_UNSIGNED_INT_IMAGE_1D_EXT = 0x9062;
int GL_UNSIGNED_INT_IMAGE_2D_EXT = 0x9063;
int GL_UNSIGNED_INT_IMAGE_3D_EXT = 0x9064;
int GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT = 0x9065;
int GL_UNSIGNED_INT_IMAGE_CUBE_EXT = 0x9066;
int GL_UNSIGNED_INT_IMAGE_BUFFER_EXT = 0x9067;
int GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT = 0x9068;
int GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT = 0x9069;
int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x906A;
int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x906B;
int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x906C;
void glBindImageTextureEXT(@GLuint int index, @GLuint int texture, int level, boolean layered, int layer, @GLenum int access, int format);
void glMemoryBarrierEXT(@GLbitfield int barriers);
}

View File

@ -0,0 +1,87 @@
/*
* Copyright (c) 2002-2008 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.util.generator.*;
import java.nio.Buffer;
import java.nio.DoubleBuffer;
@Dependent
public interface EXT_vertex_attrib_64bit {
/** Returned in the <type> parameter of GetActiveAttrib: */
int GL_DOUBLE_VEC2_EXT = 0x8FFC;
int GL_DOUBLE_VEC3_EXT = 0x8FFD;
int GL_DOUBLE_VEC4_EXT = 0x8FFE;
int GL_DOUBLE_MAT2_EXT = 0x8F46;
int GL_DOUBLE_MAT3_EXT = 0x8F47;
int GL_DOUBLE_MAT4_EXT = 0x8F48;
int GL_DOUBLE_MAT2x3_EXT = 0x8F49;
int GL_DOUBLE_MAT2x4_EXT = 0x8F4A;
int GL_DOUBLE_MAT3x2_EXT = 0x8F4B;
int GL_DOUBLE_MAT3x4_EXT = 0x8F4C;
int GL_DOUBLE_MAT4x2_EXT = 0x8F4D;
int GL_DOUBLE_MAT4x3_EXT = 0x8F4E;
void glVertexAttribL1dEXT(@GLuint int index, double x);
void glVertexAttribL2dEXT(@GLuint int index, double x, double y);
void glVertexAttribL3dEXT(@GLuint int index, double x, double y, double z);
void glVertexAttribL4dEXT(@GLuint int index, double x, double y, double z, double w);
@StripPostfix("v")
void glVertexAttribL1dvEXT(@GLuint int index, @Const @Check("1") DoubleBuffer v);
@StripPostfix("v")
void glVertexAttribL2dvEXT(@GLuint int index, @Const @Check("2") DoubleBuffer v);
@StripPostfix("v")
void glVertexAttribL3dvEXT(@GLuint int index, @Const @Check("3") DoubleBuffer v);
@StripPostfix("v")
void glVertexAttribL4dvEXT(@GLuint int index, @Const @Check("4") DoubleBuffer v);
void glVertexAttribLPointerEXT(@GLuint int index, int size, @Constant("GL11.GL_DOUBLE") @GLenum int type, @GLsizei int stride,
@CachedReference(index = "index", name = "glVertexAttribPointer_buffer")
@BufferObject(BufferKind.ArrayVBO)
@Check @Const @GLdouble Buffer pointer);
@StripPostfix("params")
void glGetVertexAttribLdvEXT(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") DoubleBuffer params);
@Dependent("EXT_direct_state_access")
void glVertexArrayVertexAttribLOffsetEXT(@GLuint int vaobj, @GLuint int buffer, @GLuint int index, int size, @GLenum int type, @GLsizei int stride, @GLintptr long offset);
}

View File

@ -0,0 +1,45 @@
/*
* Copyright (c) 2002-2008 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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_gpu_program5 {
/**
* Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
* GetFloatv, and GetDoublev:
*/
int GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV = 0x8E5A;
int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5B;
int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5C;
int GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV = 0x8E5D;
}

View File

@ -0,0 +1,182 @@
/*
* Copyright (c) 2002-2008 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.util.generator.*;
import java.nio.LongBuffer;
@Dependent
public interface NV_gpu_shader5 {
/**
* Returned by the <type> parameter of GetActiveAttrib, GetActiveUniform, and
* GetTransformFeedbackVarying:
*/
int GL_INT64_NV = 0x140E;
int GL_UNSIGNED_INT64_NV = 0x140F;
int GL_INT8_NV = 0x8FE0;
int GL_INT8_VEC2_NV = 0x8FE1;
int GL_INT8_VEC3_NV = 0x8FE2;
int GL_INT8_VEC4_NV = 0x8FE3;
int GL_INT16_NV = 0x8FE4;
int GL_INT16_VEC2_NV = 0x8FE5;
int GL_INT16_VEC3_NV = 0x8FE6;
int GL_INT16_VEC4_NV = 0x8FE7;
int GL_INT64_VEC2_NV = 0x8FE9;
int GL_INT64_VEC3_NV = 0x8FEA;
int GL_INT64_VEC4_NV = 0x8FEB;
int GL_UNSIGNED_INT8_NV = 0x8FEC;
int GL_UNSIGNED_INT8_VEC2_NV = 0x8FED;
int GL_UNSIGNED_INT8_VEC3_NV = 0x8FEE;
int GL_UNSIGNED_INT8_VEC4_NV = 0x8FEF;
int GL_UNSIGNED_INT16_NV = 0x8FF0;
int GL_UNSIGNED_INT16_VEC2_NV = 0x8FF1;
int GL_UNSIGNED_INT16_VEC3_NV = 0x8FF2;
int GL_UNSIGNED_INT16_VEC4_NV = 0x8FF3;
int GL_UNSIGNED_INT64_VEC2_NV = 0x8FF5;
int GL_UNSIGNED_INT64_VEC3_NV = 0x8FF6;
int GL_UNSIGNED_INT64_VEC4_NV = 0x8FF7;
int GL_FLOAT16_NV = 0x8FF8;
int GL_FLOAT16_VEC2_NV = 0x8FF9;
int GL_FLOAT16_VEC3_NV = 0x8FFA;
int GL_FLOAT16_VEC4_NV = 0x8FFB;
/** Accepted by the <primitiveMode> parameter of BeginTransformFeedback: */
int GL_PATCHES = ARB_tessellation_shader.GL_PATCHES;
void glUniform1i64NV(int location, @GLint64EXT long x);
void glUniform2i64NV(int location, @GLint64EXT long x, @GLint64EXT long y);
void glUniform3i64NV(int location, @GLint64EXT long x, @GLint64EXT long y, @GLint64EXT long z);
void glUniform4i64NV(int location, @GLint64EXT long x, @GLint64EXT long y, @GLint64EXT long z, @GLint64EXT long w);
@StripPostfix("value")
void glUniform1i64vNV(int location, @GLsizei int count, @Const @GLint64EXT @Check("1") LongBuffer value);
@StripPostfix("value")
void glUniform2i64vNV(int location, @GLsizei int count, @Const @GLint64EXT @Check("2") LongBuffer value);
@StripPostfix("value")
void glUniform3i64vNV(int location, @GLsizei int count, @Const @GLint64EXT @Check("3") LongBuffer value);
@StripPostfix("value")
void glUniform4i64vNV(int location, @GLsizei int count, @Const @GLint64EXT @Check("4") LongBuffer value);
void glUniform1ui64NV(int location, @GLuint64EXT long x);
void glUniform2ui64NV(int location, @GLuint64EXT long x, @GLuint64EXT long y);
void glUniform3ui64NV(int location, @GLuint64EXT long x, @GLuint64EXT long y, @GLuint64EXT long z);
void glUniform4ui64NV(int location, @GLuint64EXT long x, @GLuint64EXT long y, @GLuint64EXT long z, @GLuint64EXT long w);
@StripPostfix("value")
void glUniform1ui64vNV(int location, @GLsizei int count, @Const @GLuint64EXT @Check("1") LongBuffer value);
@StripPostfix("value")
void glUniform2ui64vNV(int location, @GLsizei int count, @Const @GLuint64EXT @Check("2") LongBuffer value);
@StripPostfix("value")
void glUniform3ui64vNV(int location, @GLsizei int count, @Const @GLuint64EXT @Check("3") LongBuffer value);
@StripPostfix("value")
void glUniform4ui64vNV(int location, @GLsizei int count, @Const @GLuint64EXT @Check("4") LongBuffer value);
@StripPostfix("params")
void glGetUniformi64vNV(@GLuint int program, int location, @GLint64EXT @Check LongBuffer params);
@StripPostfix("params")
void glGetUniformui64vNV(@GLuint int program, int location, @GLuint64EXT @Check LongBuffer params);
// -------------
@Dependent("EXT_direct_state_access")
void glProgramUniform1i64NV(@GLuint int program, int location, @GLint64EXT long x);
@Dependent("EXT_direct_state_access")
void glProgramUniform2i64NV(@GLuint int program, int location, @GLint64EXT long x, @GLint64EXT long y);
@Dependent("EXT_direct_state_access")
void glProgramUniform3i64NV(@GLuint int program, int location, @GLint64EXT long x, @GLint64EXT long y, @GLint64EXT long z);
@Dependent("EXT_direct_state_access")
void glProgramUniform4i64NV(@GLuint int program, int location, @GLint64EXT long x, @GLint64EXT long y, @GLint64EXT long z, @GLint64EXT long w);
@Dependent("EXT_direct_state_access")
@StripPostfix("value")
void glProgramUniform1i64vNV(@GLuint int program, int location, @GLsizei int count, @Const @GLint64EXT @Check("1") LongBuffer value);
@Dependent("EXT_direct_state_access")
@StripPostfix("value")
void glProgramUniform2i64vNV(@GLuint int program, int location, @GLsizei int count, @Const @GLint64EXT @Check("2") LongBuffer value);
@Dependent("EXT_direct_state_access")
@StripPostfix("value")
void glProgramUniform3i64vNV(@GLuint int program, int location, @GLsizei int count, @Const @GLint64EXT @Check("3") LongBuffer value);
@Dependent("EXT_direct_state_access")
@StripPostfix("value")
void glProgramUniform4i64vNV(@GLuint int program, int location, @GLsizei int count, @Const @GLint64EXT @Check("4") LongBuffer value);
@Dependent("EXT_direct_state_access")
void glProgramUniform1ui64NV(@GLuint int program, int location, @GLuint64EXT long x);
@Dependent("EXT_direct_state_access")
void glProgramUniform2ui64NV(@GLuint int program, int location, @GLuint64EXT long x, @GLuint64EXT long y);
@Dependent("EXT_direct_state_access")
void glProgramUniform3ui64NV(@GLuint int program, int location, @GLuint64EXT long x, @GLuint64EXT long y, @GLuint64EXT long z);
@Dependent("EXT_direct_state_access")
void glProgramUniform4ui64NV(@GLuint int program, int location, @GLuint64EXT long x, @GLuint64EXT long y, @GLuint64EXT long z, @GLuint64EXT long w);
@Dependent("EXT_direct_state_access")
@StripPostfix("value")
void glProgramUniform1ui64vNV(@GLuint int program, int location, @GLsizei int count, @Const @GLuint64EXT @Check("1") LongBuffer value);
@Dependent("EXT_direct_state_access")
@StripPostfix("value")
void glProgramUniform2ui64vNV(@GLuint int program, int location, @GLsizei int count, @Const @GLuint64EXT @Check("2") LongBuffer value);
@Dependent("EXT_direct_state_access")
@StripPostfix("value")
void glProgramUniform3ui64vNV(@GLuint int program, int location, @GLsizei int count, @Const @GLuint64EXT @Check("3") LongBuffer value);
@Dependent("EXT_direct_state_access")
@StripPostfix("value")
void glProgramUniform4ui64vNV(@GLuint int program, int location, @GLsizei int count, @Const @GLuint64EXT @Check("4") LongBuffer value);
}

View File

@ -55,9 +55,9 @@ public interface NV_shader_buffer_load {
boolean glIsBufferResidentNV(@GLenum int target);
// TODO: These two are currently missing from the latest NV drivers, check again sometime.
//void glNamedMakeBufferResidentNV(@GLuint int buffer, @GLenum int access);
//void glNamedMakeBufferNonResidentNV(@GLuint int buffer);
void glMakeNamedBufferResidentNV(@GLuint int buffer, @GLenum int access);
void glMakeNamedBufferNonResidentNV(@GLuint int buffer);
boolean glIsNamedBufferResidentNV(@GLuint int buffer);
@ -88,7 +88,7 @@ public interface NV_shader_buffer_load {
void glUniformui64NV(int location, @GLuint64EXT long value);
@StripPostfix("value")
void glUniformui64vNV(int location, @AutoSize("value") @GLsizei int count, @GLuint64EXT LongBuffer value);
void glUniformui64vNV(int location, @AutoSize("value") @GLsizei int count, @Const @GLuint64EXT LongBuffer value);
@StripPostfix("params")
void glGetUniformui64vNV(@GLuint int program, int location, @OutParameter @Check("1") @GLuint64EXT LongBuffer params);
@ -96,6 +96,6 @@ public interface NV_shader_buffer_load {
void glProgramUniformui64NV(@GLuint int program, int location, @GLuint64EXT long value);
@StripPostfix("value")
void glProgramUniformui64vNV(@GLuint int program, int location, @AutoSize("value") @GLsizei int count, @GLuint64EXT LongBuffer value);
void glProgramUniformui64vNV(@GLuint int program, int location, @AutoSize("value") @GLsizei int count, @Const @GLuint64EXT LongBuffer value);
}

View File

@ -0,0 +1,43 @@
/*
* Copyright (c) 2002-2008 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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_shader_buffer_store {
/** Accepted by the <barriers> parameter of MemoryBarrierNV: */
int GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV = 0x00000010;
/** Accepted by the <access> parameter of MakeBufferResidentNV: */
int GL_READ_WRITE = GL15.GL_READ_WRITE;
int GL_WRITE_ONLY = GL15.GL_WRITE_ONLY;
}

View File

@ -0,0 +1,60 @@
/*
* Copyright (c) 2002-2008 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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_tessellation_program5 {
/**
* Accepted by the <cap> parameter of Disable, Enable, and IsEnabled,
* by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv,
* and GetDoublev, and by the <target> parameter of ProgramStringARB,
* BindProgramARB, ProgramEnvParameter4[df][v]ARB,
* ProgramLocalParameter4[df][v]ARB, GetProgramEnvParameter[df]vARB,
* GetProgramLocalParameter[df]vARB, GetProgramivARB and
* GetProgramStringARB:
*/
int GL_TESS_CONTROL_PROGRAM_NV = 0x891E;
int GL_TESS_EVALUATION_PROGRAM_NV = 0x891F;
/**
* Accepted by the <target> parameter of ProgramBufferParametersfvNV,
* ProgramBufferParametersIivNV, and ProgramBufferParametersIuivNV,
* BindBufferRangeNV, BindBufferOffsetNV, BindBufferBaseNV, and BindBuffer
* and the <value> parameter of GetIntegerIndexedvEXT:
*/
int GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV = 0x8C74;
int GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV = 0x8C75;
/** Accepted by the <pname> parameter of GetProgramivARB: */
int GL_MAX_PROGRAM_PATCH_ATTRIBS_NV = 0x86D8;
}

View File

@ -0,0 +1,97 @@
/*
* Copyright (c) 2002-2008 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.util.generator.*;
import java.nio.LongBuffer;
@Dependent
public interface NV_vertex_attrib_integer_64bit {
/**
* Accepted by the <type> parameter of VertexAttribLPointerEXT,
* VertexArrayVertexAttribLOffsetEXT, and VertexAttribLFormatNV:
*/
int GL_INT64_NV = 0x140E;
int GL_UNSIGNED_INT64_NV = 0x140F;
void glVertexAttribL1i64NV(@GLuint int index, @GLint64EXT long x);
void glVertexAttribL2i64NV(@GLuint int index, @GLint64EXT long x, @GLint64EXT long y);
void glVertexAttribL3i64NV(@GLuint int index, @GLint64EXT long x, @GLint64EXT long y, @GLint64EXT long z);
void glVertexAttribL4i64NV(@GLuint int index, @GLint64EXT long x, @GLint64EXT long y, @GLint64EXT long z, @GLint64EXT long w);
@StripPostfix("v")
void glVertexAttribL1i64vNV(@GLuint int index, @Const @GLint64EXT @Check("1") LongBuffer v);
@StripPostfix("v")
void glVertexAttribL2i64vNV(@GLuint int index, @Const @GLint64EXT @Check("2") LongBuffer v);
@StripPostfix("v")
void glVertexAttribL3i64vNV(@GLuint int index, @Const @GLint64EXT @Check("3") LongBuffer v);
@StripPostfix("v")
void glVertexAttribL4i64vNV(@GLuint int index, @Const @GLint64EXT @Check("4") LongBuffer v);
void glVertexAttribL1ui64NV(@GLuint int index, @GLuint64EXT long x);
void glVertexAttribL2ui64NV(@GLuint int index, @GLuint64EXT long x, @GLuint64EXT long y);
void glVertexAttribL3ui64NV(@GLuint int index, @GLuint64EXT long x, @GLuint64EXT long y, @GLuint64EXT long z);
void glVertexAttribL4ui64NV(@GLuint int index, @GLuint64EXT long x, @GLuint64EXT long y, @GLuint64EXT long z, @GLuint64EXT long w);
@StripPostfix("v")
void glVertexAttribL1ui64vNV(@GLuint int index, @Const @GLuint64EXT @Check("1") LongBuffer v);
@StripPostfix("v")
void glVertexAttribL2ui64vNV(@GLuint int index, @Const @GLuint64EXT @Check("2") LongBuffer v);
@StripPostfix("v")
void glVertexAttribL3ui64vNV(@GLuint int index, @Const @GLuint64EXT @Check("3") LongBuffer v);
@StripPostfix("v")
void glVertexAttribL4ui64vNV(@GLuint int index, @Const @GLuint64EXT @Check("4") LongBuffer v);
@StripPostfix("params")
void glGetVertexAttribLi64vNV(@GLuint int index, @GLenum int pname, @OutParameter @GLint64EXT @Check("4") LongBuffer params);
@StripPostfix("params")
void glGetVertexAttribLui64vNV(@GLuint int index, @GLenum int pname, @OutParameter @GLuint64EXT @Check("4") LongBuffer params);
@Dependent("NV_vertex_buffer_unified_memory")
void glVertexAttribLFormatNV(@GLuint int index, int size, @GLenum int type, @GLsizei int stride);
}