Added support for OpenGL 4.4 and new extensions.

This commit is contained in:
Ioannis Tsakpinis 2013-07-23 01:58:46 +03:00
parent 1df5d25560
commit bafa7a1972
21 changed files with 1287 additions and 2 deletions

View File

@ -94,7 +94,7 @@ public final class ContextAttribs {
public ContextAttribs(final int majorVersion, final int minorVersion) {
if ( majorVersion < 0 || 4 < majorVersion ||
minorVersion < 0 ||
(majorVersion == 4 && 3 < minorVersion) ||
(majorVersion == 4 && 4 < minorVersion) ||
(majorVersion == 3 && 3 < minorVersion) ||
(majorVersion == 2 && 1 < minorVersion) ||
(majorVersion == 1 && 5 < minorVersion) )

View File

@ -246,7 +246,7 @@ public final class GLContext {
{ 1, 2, 3, 4, 5 }, // OpenGL 1
{ 0, 1 }, // OpenGL 2
{ 0, 1, 2, 3 }, // OpenGL 3
{ 0, 1, 2, 3 }, // OpenGL 4
{ 0, 1, 2, 3, 4 }, // OpenGL 4
};
for ( int major = 1; major <= GL_VERSIONS.length; major++ ) {

View File

@ -0,0 +1,86 @@
/*
* Copyright (c) 2002-2013 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.AutoSize;
import org.lwjgl.util.generator.Check;
import org.lwjgl.util.generator.Const;
import org.lwjgl.util.generator.StripPostfix;
import org.lwjgl.util.generator.opengl.*;
import java.nio.LongBuffer;
public interface ARB_bindless_texture {
/** Accepted by the &lt;type&gt; parameter of VertexAttribLPointer: */
int GL_UNSIGNED_INT64_ARB = 0x140F;
@GLuint64
long glGetTextureHandleARB(@GLuint int texture);
@GLuint64
long glGetTextureSamplerHandleARB(@GLuint int texture, @GLuint int sampler);
void glMakeTextureHandleResidentARB(@GLuint64 long handle);
void glMakeTextureHandleNonResidentARB(@GLuint64 long handle);
@GLuint64
long glGetImageHandleARB(@GLuint int texture, int level, boolean layered, int layer, @GLenum int format);
void glMakeImageHandleResidentARB(@GLuint64 long handle, @GLenum int access);
void glMakeImageHandleNonResidentARB(@GLuint64 long handle);
void glUniformHandleui64ARB(int location, @GLuint64 long value);
@StripPostfix("value")
void glUniformHandleui64vARB(int location, @AutoSize("value") @GLsizei int count, @Const @GLuint64 LongBuffer value);
void glProgramUniformHandleui64ARB(@GLuint int program, int location, @GLuint64 long value);
@StripPostfix("values")
void glProgramUniformHandleui64vARB(@GLuint int program, int location, @AutoSize("values") @GLsizei int count, @Const @GLuint64 LongBuffer values);
boolean glIsTextureHandleResidentARB(@GLuint64 long handle);
boolean glIsImageHandleResidentARB(@GLuint64 long handle);
void glVertexAttribL1ui64ARB(@GLuint int index, @GLuint64EXT long x);
@StripPostfix("v")
void glVertexAttribL1ui64vARB(@GLuint int index, @Check("1") @Const @GLuint64EXT LongBuffer v);
@StripPostfix("params")
void glGetVertexAttribLui64vARB(@GLuint int index, @GLenum int pname, @Check("4") @GLuint64EXT LongBuffer params);
}

View File

@ -0,0 +1,97 @@
/*
* Copyright (c) 2002-2013 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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 org.lwjgl.util.generator.opengl.*;
import java.nio.Buffer;
@Dependent
public interface ARB_buffer_storage {
/**
* Accepted in the &lt;flags&gt; parameter of BufferStorage and
* NamedBufferStorageEXT:
*/
int GL_MAP_PERSISTENT_BIT = 0x0040,
GL_MAP_COHERENT_BIT = 0x0080,
GL_DYNAMIC_STORAGE_BIT = 0x0100,
GL_CLIENT_STORAGE_BIT = 0x0200;
/** Accepted by the &lt;pname&gt; parameter of GetBufferParameter{i|i64}v:\ */
int GL_BUFFER_IMMUTABLE_STORAGE = 0x821F,
GL_BUFFER_STORAGE_FLAGS = 0x8220;
/** Accepted by the &lt;barriers&gt; parameter of MemoryBarrier: */
int GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT = 0x00004000;
@Reuse("GL44")
void glBufferStorage(@GLenum int target,
@AutoSize("data") @GLsizeiptr long size,
@Const
@GLbyte
@GLshort
@GLint
@GLuint64
@GLfloat
@GLdouble Buffer data,
@GLbitfield int flags);
@Reuse("GL44")
@Alternate("glBufferStorage")
void glBufferStorage2(@GLenum int target,
@GLsizeiptr long size,
@Constant("0L") @Const Buffer data,
@GLbitfield int flags);
@Dependent("GL_EXT_direct_state_access")
void glNamedBufferStorageEXT(@GLuint int buffer,
@AutoSize("data") @GLsizeiptr long size,
@Const
@GLbyte
@GLshort
@GLint
@GLuint64
@GLfloat
@GLdouble Buffer data,
@GLbitfield int flags);
@Dependent("GL_EXT_direct_state_access")
@Alternate("glNamedBufferStorageEXT")
void glNamedBufferStorageEXT2(@GLuint int buffer,
@GLsizeiptr long size,
@Constant("0L") @Const Buffer data,
@GLbitfield int flags);
}

View File

@ -0,0 +1,75 @@
/*
* Copyright (c) 2002-2013 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.Check;
import org.lwjgl.util.generator.Const;
import org.lwjgl.util.generator.Reuse;
import org.lwjgl.util.generator.opengl.*;
import java.nio.Buffer;
public interface ARB_clear_texture {
/**
* Accepted by the &lt;pname&gt; parameter for GetInternalformativ and
* GetInternalformati64v:
*/
int GL_CLEAR_TEXTURE = 0x9365;
@Reuse("GL44")
void glClearTexImage(@GLuint int texture, int level,
@GLenum int format, @GLenum int type,
@Check(value = "1", canBeNull = true)
@Const
@GLbyte
@GLshort
@GLint
@GLuint64
@GLfloat
@GLdouble Buffer data);
@Reuse("GL44")
void glClearTexSubImage(@GLuint int texture, int level,
int xoffset, int yoffset, int zoffset,
@GLsizei int width, @GLsizei int height, @GLsizei int depth,
@GLenum int format, @GLenum int type,
@Check(value = "1", canBeNull = true)
@Const
@GLbyte
@GLshort
@GLint
@GLuint64
@GLfloat
@GLdouble Buffer data);
}

View File

@ -0,0 +1,55 @@
/*
* Copyright (c) 2002-2013 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.opengl.GLuint;
public interface ARB_compute_variable_group_size {
/**
* Accepted by the &lt;pname&gt; parameter of GetIntegerv, GetBooleanv, GetFloatv,
* GetDoublev and GetInteger64v:
*/
int GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB = 0x9344,
GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB = 0x90EB;
/**
* Accepted by the &lt;pname&gt; parameter of GetIntegeri_v, GetBooleani_v,
* GetFloati_v, GetDoublei_v and GetInteger64i_v:
*/
int GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB = 0x9345,
GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB = 0x91BF;
void glDispatchComputeGroupSizeARB(@GLuint int num_groups_x, @GLuint int num_groups_y,
@GLuint int num_groups_z, @GLuint int group_size_x,
@GLuint int group_size_y, @GLuint int group_size_z);
}

View File

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

View File

@ -0,0 +1,89 @@
/*
* Copyright (c) 2002-2013 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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 org.lwjgl.util.generator.opengl.GLenum;
import org.lwjgl.util.generator.opengl.GLintptr;
import org.lwjgl.util.generator.opengl.GLsizei;
import org.lwjgl.util.generator.opengl.GLvoid;
import java.nio.ByteBuffer;
import java.nio.IntBuffer;
import com.sun.mirror.type.PrimitiveType;
public interface ARB_indirect_parameters {
/**
* Accepted by the &lt;target&gt; parameters of BindBuffer, BufferData,
* BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData,
* GetBufferPointerv, MapBufferRange, FlushMappedBufferRange,
* GetBufferParameteriv, and CopyBufferSubData:
*/
int GL_PARAMETER_BUFFER_ARB = 0x80EE;
/**
* Accepted by the &lt;value&gt; parameter of GetIntegerv, GetBooleanv, GetFloatv,
* and GetDoublev:
*/
int GL_PARAMETER_BUFFER_BINDING_ARB = 0x80EF;
void glMultiDrawArraysIndirectCountARB(@GLenum int mode,
@BufferObject(BufferKind.IndirectBO) @Check("(stride == 0 ? 4 * 4 : stride) * maxdrawcount") @Const @GLvoid ByteBuffer indirect,
@GLintptr long drawcount,
@GLsizei int maxdrawcount,
@GLsizei int stride);
@Alternate("glMultiDrawArraysIndirectCountARB")
void glMultiDrawArraysIndirectCountARB(@GLenum int mode,
@BufferObject(BufferKind.IndirectBO) @Check("(stride == 0 ? 4 : stride >> 2) * maxdrawcount") @Const @GLvoid(PrimitiveType.Kind.INT) IntBuffer indirect,
@GLintptr long drawcount,
@GLsizei int maxdrawcount,
@GLsizei int stride);
void glMultiDrawElementsIndirectCountARB(@GLenum int mode,
@GLenum int type,
@BufferObject(BufferKind.IndirectBO) @Check("(stride == 0 ? 5 * 4 : stride) * maxdrawcount") @Const @GLvoid ByteBuffer indirect,
@GLintptr long drawcount,
@GLsizei int maxdrawcount,
@GLsizei int stride);
@Alternate("glMultiDrawElementsIndirectCountARB")
void glMultiDrawElementsIndirectCountARB(@GLenum int mode,
@GLenum int type,
@BufferObject(BufferKind.IndirectBO) @Check("(stride == 0 ? 5 : stride >> 2) * maxdrawcount") @Const @GLvoid(PrimitiveType.Kind.INT) IntBuffer indirect,
@GLintptr long drawcount,
@GLsizei int maxdrawcount,
@GLsizei int stride);
}

View File

@ -0,0 +1,68 @@
/*
* Copyright (c) 2002-2013 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.PointerBuffer;
import org.lwjgl.util.generator.Check;
import org.lwjgl.util.generator.Const;
import org.lwjgl.util.generator.Reuse;
import org.lwjgl.util.generator.opengl.*;
import java.nio.IntBuffer;
public interface ARB_multi_bind {
@Reuse("GL44")
void glBindBuffersBase(@GLenum int target, @GLuint int first, @GLsizei int count, @Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer buffers);
@Reuse("GL44")
void glBindBuffersRange(@GLenum int target, @GLuint int first, @GLsizei int count,
@Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer buffers,
@Check(value = "count", canBeNull = true) @Const @GLintptr PointerBuffer offsets,
@Check(value = "count", canBeNull = true) @Const @GLsizeiptr PointerBuffer sizes);
@Reuse("GL44")
void glBindTextures(@GLuint int first, @GLsizei int count, @Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer textures);
@Reuse("GL44")
void glBindSamplers(@GLuint int first, @GLsizei int count, @Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer samplers);
@Reuse("GL44")
void glBindImageTextures(@GLuint int first, @GLsizei int count, @Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer textures);
@Reuse("GL44")
void glBindVertexBuffers(@GLuint int first, @GLsizei int count,
@Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer buffers,
@Check(value = "count", canBeNull = true) @Const @GLintptr PointerBuffer offsets,
@Check(value = "count", canBeNull = true) @Const @GLsizei IntBuffer strides);
}

View File

@ -0,0 +1,60 @@
/*
* Copyright (c) 2002-2013 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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_query_buffer_object {
/**
* Accepted by the &lt;pname&gt; parameter of GetQueryObjectiv, GetQueryObjectuiv,
* GetQueryObjecti64v and GetQueryObjectui64v:
*/
int GL_QUERY_RESULT_NO_WAIT = 0x9194;
/**
* Accepted by the &lt;target&gt; parameter of BindBuffer, BufferData,
* BufferSubData, MapBuffer, UnmapBuffer, MapBufferRange, GetBufferSubData,
* GetBufferParameteriv, GetBufferParameteri64v, GetBufferPointerv,
* ClearBufferSubData, and the &lt;readtarget&gt; and &lt;writetarget&gt; parameters of
* CopyBufferSubData:
*/
int GL_QUERY_BUFFER = 0x9192;
/**
* Accepted by the &lt;pname&gt; parameter of GetBooleanv, GetIntegerv, GetFloatv,
* and GetDoublev:
*/
int GL_QUERY_BUFFER_BINDING = 0x9193;
/** Accepted in the &lt;barriers&gt; bitfield in MemoryBarrier: */
int GL_QUERY_BUFFER_BARRIER_BIT = 0x00008000;
}

View File

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

View File

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

View File

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

View File

@ -0,0 +1,92 @@
/*
* Copyright (c) 2002-2013 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.Dependent;
import org.lwjgl.util.generator.opengl.GLenum;
import org.lwjgl.util.generator.opengl.GLsizei;
import org.lwjgl.util.generator.opengl.GLuint;
@Dependent
public interface ARB_sparse_texture {
/**
* Accepted by the &lt;pname&gt; parameter to TexParameter{i f}{v},
* TexParameterI{u}v, GetTexParameter{if}v and GetTexParameterIi{u}v:
*/
int GL_TEXTURE_SPARSE_ARB = 0x91A6,
GL_VIRTUAL_PAGE_SIZE_INDEX_ARB = 0x91A7;
/**
* Accepted by the &lt;pname&gt; parameter of GetTexParameter{if}v and
* GetTexParameterIi{u}v:
*/
int GL_NUM_SPARSE_LEVELS_ARB = 0x91AA;
/** Accepted by the &lt;pname&gt; parameter to GetInternalformativ: */
int GL_NUM_VIRTUAL_PAGE_SIZES_ARB = 0x91A8,
GL_VIRTUAL_PAGE_SIZE_X_ARB = 0x9195,
GL_VIRTUAL_PAGE_SIZE_Y_ARB = 0x9196,
GL_VIRTUAL_PAGE_SIZE_Z_ARB = 0x9197;
/**
* Accepted by the &lt;pname&gt; parameter to GetIntegerv, GetFloatv, GetDoublev,
* GetInteger64v, and GetBooleanv:
*/
int GL_MAX_SPARSE_TEXTURE_SIZE_ARB = 0x9198,
GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB = 0x9199,
GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB = 0x919A,
GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB = 0x91A9;
void glTexPageCommitmentARB(@GLenum int target,
int level,
int xoffset,
int yoffset,
int zoffset,
@GLsizei int width,
@GLsizei int height,
@GLsizei int depth,
boolean commit);
@Dependent("GL_EXT_direct_state_access")
void glTexturePageCommitmentEXT(@GLuint int texture,
@GLenum int target,
int level,
int xoffset,
int yoffset,
int zoffset,
@GLsizei int width,
@GLsizei int height,
@GLsizei int depth,
boolean commit);
}

View File

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

View File

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

View File

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

View File

@ -0,0 +1,190 @@
/*
* Copyright (c) 2002-2012 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.PointerBuffer;
import org.lwjgl.util.generator.*;
import org.lwjgl.util.generator.opengl.*;
import java.nio.Buffer;
import java.nio.IntBuffer;
public interface GL44 {
/** Implementation-dependent state which constrains the maximum value of stride parameters to vertex array pointer-setting commands. */
int GL_MAX_VERTEX_ATTRIB_STRIDE = 0x82E5;
// ------------------------------------------------------------------
// ----------------------[ ARB_buffer_storage ]----------------------
// ------------------------------------------------------------------
/**
* Accepted in the &lt;flags&gt; parameter of BufferStorage and
* NamedBufferStorageEXT:
*/
int GL_MAP_PERSISTENT_BIT = 0x0040,
GL_MAP_COHERENT_BIT = 0x0080,
GL_DYNAMIC_STORAGE_BIT = 0x0100,
GL_CLIENT_STORAGE_BIT = 0x0200;
/** Accepted by the &lt;pname&gt; parameter of GetBufferParameter{i|i64}v:\ */
int GL_BUFFER_IMMUTABLE_STORAGE = 0x821F,
GL_BUFFER_STORAGE_FLAGS = 0x8220;
/** Accepted by the &lt;barriers&gt; parameter of MemoryBarrier: */
int GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT = 0x00004000;
void glBufferStorage(@GLenum int target,
@AutoSize("data") @GLsizeiptr long size,
@Const
@GLbyte
@GLshort
@GLint
@GLuint64
@GLfloat
@GLdouble Buffer data,
@GLbitfield int flags);
@Alternate("glBufferStorage")
void glBufferStorage2(@GLenum int target,
@GLsizeiptr long size,
@Constant("0L") @Const Buffer data,
@GLbitfield int flags);
// -----------------------------------------------------------------
// ----------------------[ ARB_clear_texture ]----------------------
// -----------------------------------------------------------------
/**
* Accepted by the &lt;pname&gt; parameter for GetInternalformativ and
* GetInternalformati64v:
*/
int GL_CLEAR_TEXTURE = 0x9365;
void glClearTexImage(@GLuint int texture, int level,
@GLenum int format, @GLenum int type,
@Check(value = "1", canBeNull = true)
@Const
@GLbyte
@GLshort
@GLint
@GLuint64
@GLfloat
@GLdouble Buffer data);
void glClearTexSubImage(@GLuint int texture, int level,
int xoffset, int yoffset, int zoffset,
@GLsizei int width, @GLsizei int height, @GLsizei int depth,
@GLenum int format, @GLenum int type,
@Check(value = "1", canBeNull = true)
@Const
@GLbyte
@GLshort
@GLint
@GLuint64
@GLfloat
@GLdouble Buffer data);
// --------------------------------------------------------------------
// ----------------------[ ARB_enhanced_layouts ]----------------------
// --------------------------------------------------------------------
/** Accepted in the &lt;props&gt; array of GetProgramResourceiv: */
int GL_LOCATION_COMPONENT = 0x934A,
GL_TRANSFORM_FEEDBACK_BUFFER_INDEX = 0x934B,
GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE = 0x934C;
// --------------------------------------------------------------
// ----------------------[ ARB_multi_bind ]----------------------
// --------------------------------------------------------------
void glBindBuffersBase(@GLenum int target, @GLuint int first, @GLsizei int count, @Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer buffers);
void glBindBuffersRange(@GLenum int target, @GLuint int first, @GLsizei int count,
@Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer buffers,
@Check(value = "count", canBeNull = true) @Const @GLintptr PointerBuffer offsets,
@Check(value = "count", canBeNull = true) @Const @GLsizeiptr PointerBuffer sizes);
void glBindTextures(@GLuint int first, @GLsizei int count, @Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer textures);
void glBindSamplers(@GLuint int first, @GLsizei int count, @Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer samplers);
void glBindImageTextures(@GLuint int first, @GLsizei int count, @Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer textures);
void glBindVertexBuffers(@GLuint int first, @GLsizei int count,
@Check(value = "count", canBeNull = true) @Const @GLuint IntBuffer buffers,
@Check(value = "count", canBeNull = true) @Const @GLintptr PointerBuffer offsets,
@Check(value = "count", canBeNull = true) @Const @GLsizei IntBuffer strides);
// -----------------------------------------------------------------------
// ----------------------[ ARB_query_buffer_object ]----------------------
// -----------------------------------------------------------------------
/**
* Accepted by the &lt;pname&gt; parameter of GetQueryObjectiv, GetQueryObjectuiv,
* GetQueryObjecti64v and GetQueryObjectui64v:
*/
int GL_QUERY_RESULT_NO_WAIT = 0x9194;
/**
* Accepted by the &lt;target&gt; parameter of BindBuffer, BufferData,
* BufferSubData, MapBuffer, UnmapBuffer, MapBufferRange, GetBufferSubData,
* GetBufferParameteriv, GetBufferParameteri64v, GetBufferPointerv,
* ClearBufferSubData, and the &lt;readtarget&gt; and &lt;writetarget&gt; parameters of
* CopyBufferSubData:
*/
int GL_QUERY_BUFFER = 0x9192;
/**
* Accepted by the &lt;pname&gt; parameter of GetBooleanv, GetIntegerv, GetFloatv,
* and GetDoublev:
*/
int GL_QUERY_BUFFER_BINDING = 0x9193;
/** Accepted in the &lt;barriers&gt; bitfield in MemoryBarrier: */
int GL_QUERY_BUFFER_BARRIER_BIT = 0x00008000;
// --------------------------------------------------------------------------------
// ----------------------[ ARB_texture_mirror_clamp_to_edge ]----------------------
// --------------------------------------------------------------------------------
/**
* Accepted by the &lt;param&gt; parameter of TexParameter{if}, SamplerParameter{if}
* and SamplerParameter{if}v, and by the &lt;params&gt; parameter of
* TexParameter{if}v, TexParameterI{i ui}v and SamplerParameterI{i ui}v when
* their &lt;pname&gt; parameter is TEXTURE_WRAP_S, TEXTURE_WRAP_T, or
* TEXTURE_WRAP_R:
*/
int GL_MIRROR_CLAMP_TO_EDGE = 0x8743;
}

View File

@ -0,0 +1,59 @@
/*
* Copyright (c) 2002-2013 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.BufferKind;
import org.lwjgl.util.generator.BufferObject;
import org.lwjgl.util.generator.Check;
import org.lwjgl.util.generator.Const;
import org.lwjgl.util.generator.opengl.GLenum;
import org.lwjgl.util.generator.opengl.GLsizei;
import org.lwjgl.util.generator.opengl.GLvoid;
import java.nio.ByteBuffer;
public interface NV_bindless_multi_draw_indirect {
void glMultiDrawArraysIndirectBindlessNV(@GLenum int mode,
@BufferObject(BufferKind.IndirectBO) @Check("(stride == 0 ? 20 + 24 * vertexBufferCount : stride) * drawCount") @Const @GLvoid ByteBuffer indirect,
@GLsizei int drawCount,
@GLsizei int stride,
int vertexBufferCount);
void glMultiDrawElementsIndirectBindlessNV(@GLenum int mode,
@GLenum int type,
@BufferObject(BufferKind.IndirectBO) @Check("(stride == 0 ? 48 + 24 * vertexBufferCount : stride) * drawCount") @Const @GLvoid ByteBuffer indirect,
@GLsizei int drawCount,
@GLsizei int stride,
int vertexBufferCount);
}

View File

@ -0,0 +1,105 @@
/*
* Copyright (c) 2002-2013 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'LWJGL' nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (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.opengl.GLenum;
public interface NV_blend_equation_advanced {
/**
* Accepted by the &lt;cap&gt; parameter of Disable, Enable, and IsEnabled, and by
* the &lt;pname&gt; parameter of GetIntegerv, GetBooleanv, GetFloatv, GetDoublev
* and GetInteger64v:
*/
int GL_BLEND_ADVANCED_COHERENT_NV = 0x9285;
/**
* Accepted by the &lt;pname&gt; parameter of BlendParameteriNV, GetBooleanv,
* GetIntegerv, GetInteger64v, GetFloatv, and GetDoublev:
*/
int GL_BLEND_PREMULTIPLIED_SRC_NV = 0x9280,
GL_BLEND_OVERLAP_NV = 0x9281;
/**
* Accepted by the &lt;value&gt; parameter of BlendParameteriNV when &lt;pname&gt; is
* BLEND_OVERLAP_NV:
*/
int GL_UNCORRELATED_NV = 0x9282,
GL_DISJOINT_NV = 0x9283,
GL_CONJOINT_NV = 0x9284;
/** Accepted by the &lt;mode&gt; parameter of BlendEquation and BlendEquationi: */
int GL_SRC_NV = 0x9286,
GL_DST_NV = 0x9287,
GL_SRC_OVER_NV = 0x9288,
GL_DST_OVER_NV = 0x9289,
GL_SRC_IN_NV = 0x928A,
GL_DST_IN_NV = 0x928B,
GL_SRC_OUT_NV = 0x928C,
GL_DST_OUT_NV = 0x928D,
GL_SRC_ATOP_NV = 0x928E,
GL_DST_ATOP_NV = 0x928F,
GL_MULTIPLY_NV = 0x9294,
GL_SCREEN_NV = 0x9295,
GL_OVERLAY_NV = 0x9296,
GL_DARKEN_NV = 0x9297,
GL_LIGHTEN_NV = 0x9298,
GL_COLORDODGE_NV = 0x9299,
GL_COLORBURN_NV = 0x929A,
GL_HARDLIGHT_NV = 0x929B,
GL_SOFTLIGHT_NV = 0x929C,
GL_DIFFERENCE_NV = 0x929E,
GL_EXCLUSION_NV = 0x92A0,
GL_INVERT_RGB_NV = 0x92A3,
GL_LINEARDODGE_NV = 0x92A4,
GL_LINEARBURN_NV = 0x92A5,
GL_VIVIDLIGHT_NV = 0x92A6,
GL_LINEARLIGHT_NV = 0x92A7,
GL_PINLIGHT_NV = 0x92A8,
GL_HARDMIX_NV = 0x92A9,
GL_HSL_HUE_NV = 0x92AD,
GL_HSL_SATURATION_NV = 0x92AE,
GL_HSL_COLOR_NV = 0x92AF,
GL_HSL_LUMINOSITY_NV = 0x92B0,
GL_PLUS_NV = 0x9291,
GL_PLUS_CLAMPED_NV = 0x92B1,
GL_PLUS_CLAMPED_ALPHA_NV = 0x92B2,
GL_PLUS_DARKER_NV = 0x9292,
GL_MINUS_NV = 0x929F,
GL_MINUS_CLAMPED_NV = 0x92B3,
GL_CONTRAST_NV = 0x92A1,
GL_INVERT_OVG_NV = 0x92B4;
void glBlendParameteriNV(@GLenum int pname, int value);
void glBlendBarrierNV();
}

View File

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