pub trait ES_GL_3_0 {
Show 105 methods
// Required methods
fn glGetError(&self) -> GLenum;
fn glReadBuffer(&self, src: GLenum) -> Result<(), GLCoreError>;
fn glDrawRangeElements(
&self,
mode: GLenum,
start: GLuint,
end: GLuint,
count: GLsizei,
type_: GLenum,
indices: *const c_void,
) -> Result<(), GLCoreError>;
fn glTexImage3D(
&self,
target: GLenum,
level: GLint,
internalformat: GLint,
width: GLsizei,
height: GLsizei,
depth: GLsizei,
border: GLint,
format: GLenum,
type_: GLenum,
pixels: *const c_void,
) -> Result<(), GLCoreError>;
fn glTexSubImage3D(
&self,
target: GLenum,
level: GLint,
xoffset: GLint,
yoffset: GLint,
zoffset: GLint,
width: GLsizei,
height: GLsizei,
depth: GLsizei,
format: GLenum,
type_: GLenum,
pixels: *const c_void,
) -> Result<(), GLCoreError>;
fn glCopyTexSubImage3D(
&self,
target: GLenum,
level: GLint,
xoffset: GLint,
yoffset: GLint,
zoffset: GLint,
x: GLint,
y: GLint,
width: GLsizei,
height: GLsizei,
) -> Result<(), GLCoreError>;
fn glCompressedTexImage3D(
&self,
target: GLenum,
level: GLint,
internalformat: GLenum,
width: GLsizei,
height: GLsizei,
depth: GLsizei,
border: GLint,
imageSize: GLsizei,
data: *const c_void,
) -> Result<(), GLCoreError>;
fn glCompressedTexSubImage3D(
&self,
target: GLenum,
level: GLint,
xoffset: GLint,
yoffset: GLint,
zoffset: GLint,
width: GLsizei,
height: GLsizei,
depth: GLsizei,
format: GLenum,
imageSize: GLsizei,
data: *const c_void,
) -> Result<(), GLCoreError>;
fn glGenQueries(
&self,
n: GLsizei,
ids: *mut GLuint,
) -> Result<(), GLCoreError>;
fn glDeleteQueries(
&self,
n: GLsizei,
ids: *const GLuint,
) -> Result<(), GLCoreError>;
fn glIsQuery(&self, id: GLuint) -> Result<GLboolean, GLCoreError>;
fn glBeginQuery(
&self,
target: GLenum,
id: GLuint,
) -> Result<(), GLCoreError>;
fn glEndQuery(&self, target: GLenum) -> Result<(), GLCoreError>;
fn glGetQueryiv(
&self,
target: GLenum,
pname: GLenum,
params: *mut GLint,
) -> Result<(), GLCoreError>;
fn glGetQueryObjectuiv(
&self,
id: GLuint,
pname: GLenum,
params: *mut GLuint,
) -> Result<(), GLCoreError>;
fn glUnmapBuffer(&self, target: GLenum) -> Result<GLboolean, GLCoreError>;
fn glGetBufferPointerv(
&self,
target: GLenum,
pname: GLenum,
params: *mut *mut c_void,
) -> Result<(), GLCoreError>;
fn glDrawBuffers(
&self,
n: GLsizei,
bufs: *const GLenum,
) -> Result<(), GLCoreError>;
fn glUniformMatrix2x3fv(
&self,
location: GLint,
count: GLsizei,
transpose: GLboolean,
value: *const GLfloat,
) -> Result<(), GLCoreError>;
fn glUniformMatrix3x2fv(
&self,
location: GLint,
count: GLsizei,
transpose: GLboolean,
value: *const GLfloat,
) -> Result<(), GLCoreError>;
fn glUniformMatrix2x4fv(
&self,
location: GLint,
count: GLsizei,
transpose: GLboolean,
value: *const GLfloat,
) -> Result<(), GLCoreError>;
fn glUniformMatrix4x2fv(
&self,
location: GLint,
count: GLsizei,
transpose: GLboolean,
value: *const GLfloat,
) -> Result<(), GLCoreError>;
fn glUniformMatrix3x4fv(
&self,
location: GLint,
count: GLsizei,
transpose: GLboolean,
value: *const GLfloat,
) -> Result<(), GLCoreError>;
fn glUniformMatrix4x3fv(
&self,
location: GLint,
count: GLsizei,
transpose: GLboolean,
value: *const GLfloat,
) -> Result<(), GLCoreError>;
fn glBlitFramebuffer(
&self,
srcX0: GLint,
srcY0: GLint,
srcX1: GLint,
srcY1: GLint,
dstX0: GLint,
dstY0: GLint,
dstX1: GLint,
dstY1: GLint,
mask: GLbitfield,
filter: GLenum,
) -> Result<(), GLCoreError>;
fn glRenderbufferStorageMultisample(
&self,
target: GLenum,
samples: GLsizei,
internalformat: GLenum,
width: GLsizei,
height: GLsizei,
) -> Result<(), GLCoreError>;
fn glFramebufferTextureLayer(
&self,
target: GLenum,
attachment: GLenum,
texture: GLuint,
level: GLint,
layer: GLint,
) -> Result<(), GLCoreError>;
fn glMapBufferRange(
&self,
target: GLenum,
offset: GLintptr,
length: GLsizeiptr,
access: GLbitfield,
) -> Result<*mut c_void, GLCoreError>;
fn glFlushMappedBufferRange(
&self,
target: GLenum,
offset: GLintptr,
length: GLsizeiptr,
) -> Result<(), GLCoreError>;
fn glBindVertexArray(&self, array: GLuint) -> Result<(), GLCoreError>;
fn glDeleteVertexArrays(
&self,
n: GLsizei,
arrays: *const GLuint,
) -> Result<(), GLCoreError>;
fn glGenVertexArrays(
&self,
n: GLsizei,
arrays: *mut GLuint,
) -> Result<(), GLCoreError>;
fn glIsVertexArray(&self, array: GLuint) -> Result<GLboolean, GLCoreError>;
fn glGetIntegeri_v(
&self,
target: GLenum,
index: GLuint,
data: *mut GLint,
) -> Result<(), GLCoreError>;
fn glBeginTransformFeedback(
&self,
primitiveMode: GLenum,
) -> Result<(), GLCoreError>;
fn glEndTransformFeedback(&self) -> Result<(), GLCoreError>;
fn glBindBufferRange(
&self,
target: GLenum,
index: GLuint,
buffer: GLuint,
offset: GLintptr,
size: GLsizeiptr,
) -> Result<(), GLCoreError>;
fn glBindBufferBase(
&self,
target: GLenum,
index: GLuint,
buffer: GLuint,
) -> Result<(), GLCoreError>;
fn glTransformFeedbackVaryings(
&self,
program: GLuint,
count: GLsizei,
varyings: *const *const GLchar,
bufferMode: GLenum,
) -> Result<(), GLCoreError>;
fn glGetTransformFeedbackVarying(
&self,
program: GLuint,
index: GLuint,
bufSize: GLsizei,
length: *mut GLsizei,
size: *mut GLsizei,
type_: *mut GLenum,
name: *mut GLchar,
) -> Result<(), GLCoreError>;
fn glVertexAttribIPointer(
&self,
index: GLuint,
size: GLint,
type_: GLenum,
stride: GLsizei,
pointer: *const c_void,
) -> Result<(), GLCoreError>;
fn glGetVertexAttribIiv(
&self,
index: GLuint,
pname: GLenum,
params: *mut GLint,
) -> Result<(), GLCoreError>;
fn glGetVertexAttribIuiv(
&self,
index: GLuint,
pname: GLenum,
params: *mut GLuint,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4i(
&self,
index: GLuint,
x: GLint,
y: GLint,
z: GLint,
w: GLint,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4ui(
&self,
index: GLuint,
x: GLuint,
y: GLuint,
z: GLuint,
w: GLuint,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4iv(
&self,
index: GLuint,
v: *const GLint,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4uiv(
&self,
index: GLuint,
v: *const GLuint,
) -> Result<(), GLCoreError>;
fn glGetUniformuiv(
&self,
program: GLuint,
location: GLint,
params: *mut GLuint,
) -> Result<(), GLCoreError>;
fn glGetFragDataLocation(
&self,
program: GLuint,
name: *const GLchar,
) -> Result<GLint, GLCoreError>;
fn glUniform1ui(
&self,
location: GLint,
v0: GLuint,
) -> Result<(), GLCoreError>;
fn glUniform2ui(
&self,
location: GLint,
v0: GLuint,
v1: GLuint,
) -> Result<(), GLCoreError>;
fn glUniform3ui(
&self,
location: GLint,
v0: GLuint,
v1: GLuint,
v2: GLuint,
) -> Result<(), GLCoreError>;
fn glUniform4ui(
&self,
location: GLint,
v0: GLuint,
v1: GLuint,
v2: GLuint,
v3: GLuint,
) -> Result<(), GLCoreError>;
fn glUniform1uiv(
&self,
location: GLint,
count: GLsizei,
value: *const GLuint,
) -> Result<(), GLCoreError>;
fn glUniform2uiv(
&self,
location: GLint,
count: GLsizei,
value: *const GLuint,
) -> Result<(), GLCoreError>;
fn glUniform3uiv(
&self,
location: GLint,
count: GLsizei,
value: *const GLuint,
) -> Result<(), GLCoreError>;
fn glUniform4uiv(
&self,
location: GLint,
count: GLsizei,
value: *const GLuint,
) -> Result<(), GLCoreError>;
fn glClearBufferiv(
&self,
buffer: GLenum,
drawbuffer: GLint,
value: *const GLint,
) -> Result<(), GLCoreError>;
fn glClearBufferuiv(
&self,
buffer: GLenum,
drawbuffer: GLint,
value: *const GLuint,
) -> Result<(), GLCoreError>;
fn glClearBufferfv(
&self,
buffer: GLenum,
drawbuffer: GLint,
value: *const GLfloat,
) -> Result<(), GLCoreError>;
fn glClearBufferfi(
&self,
buffer: GLenum,
drawbuffer: GLint,
depth: GLfloat,
stencil: GLint,
) -> Result<(), GLCoreError>;
fn glGetStringi(
&self,
name: GLenum,
index: GLuint,
) -> Result<&'static str, GLCoreError>;
fn glCopyBufferSubData(
&self,
readTarget: GLenum,
writeTarget: GLenum,
readOffset: GLintptr,
writeOffset: GLintptr,
size: GLsizeiptr,
) -> Result<(), GLCoreError>;
fn glGetUniformIndices(
&self,
program: GLuint,
uniformCount: GLsizei,
uniformNames: *const *const GLchar,
uniformIndices: *mut GLuint,
) -> Result<(), GLCoreError>;
fn glGetActiveUniformsiv(
&self,
program: GLuint,
uniformCount: GLsizei,
uniformIndices: *const GLuint,
pname: GLenum,
params: *mut GLint,
) -> Result<(), GLCoreError>;
fn glGetUniformBlockIndex(
&self,
program: GLuint,
uniformBlockName: *const GLchar,
) -> Result<GLuint, GLCoreError>;
fn glGetActiveUniformBlockiv(
&self,
program: GLuint,
uniformBlockIndex: GLuint,
pname: GLenum,
params: *mut GLint,
) -> Result<(), GLCoreError>;
fn glGetActiveUniformBlockName(
&self,
program: GLuint,
uniformBlockIndex: GLuint,
bufSize: GLsizei,
length: *mut GLsizei,
uniformBlockName: *mut GLchar,
) -> Result<(), GLCoreError>;
fn glUniformBlockBinding(
&self,
program: GLuint,
uniformBlockIndex: GLuint,
uniformBlockBinding: GLuint,
) -> Result<(), GLCoreError>;
fn glDrawArraysInstanced(
&self,
mode: GLenum,
first: GLint,
count: GLsizei,
instancecount: GLsizei,
) -> Result<(), GLCoreError>;
fn glDrawElementsInstanced(
&self,
mode: GLenum,
count: GLsizei,
type_: GLenum,
indices: *const c_void,
instancecount: GLsizei,
) -> Result<(), GLCoreError>;
fn glFenceSync(
&self,
condition: GLenum,
flags: GLbitfield,
) -> Result<GLsync, GLCoreError>;
fn glIsSync(&self, sync: GLsync) -> Result<GLboolean, GLCoreError>;
fn glDeleteSync(&self, sync: GLsync) -> Result<(), GLCoreError>;
fn glClientWaitSync(
&self,
sync: GLsync,
flags: GLbitfield,
timeout: GLuint64,
) -> Result<GLenum, GLCoreError>;
fn glWaitSync(
&self,
sync: GLsync,
flags: GLbitfield,
timeout: GLuint64,
) -> Result<(), GLCoreError>;
fn glGetInteger64v(
&self,
pname: GLenum,
data: *mut GLint64,
) -> Result<(), GLCoreError>;
fn glGetSynciv(
&self,
sync: GLsync,
pname: GLenum,
bufSize: GLsizei,
length: *mut GLsizei,
values: *mut GLint,
) -> Result<(), GLCoreError>;
fn glGetInteger64i_v(
&self,
target: GLenum,
index: GLuint,
data: *mut GLint64,
) -> Result<(), GLCoreError>;
fn glGetBufferParameteri64v(
&self,
target: GLenum,
pname: GLenum,
params: *mut GLint64,
) -> Result<(), GLCoreError>;
fn glGenSamplers(
&self,
count: GLsizei,
samplers: *mut GLuint,
) -> Result<(), GLCoreError>;
fn glDeleteSamplers(
&self,
count: GLsizei,
samplers: *const GLuint,
) -> Result<(), GLCoreError>;
fn glIsSampler(&self, sampler: GLuint) -> Result<GLboolean, GLCoreError>;
fn glBindSampler(
&self,
unit: GLuint,
sampler: GLuint,
) -> Result<(), GLCoreError>;
fn glSamplerParameteri(
&self,
sampler: GLuint,
pname: GLenum,
param: GLint,
) -> Result<(), GLCoreError>;
fn glSamplerParameteriv(
&self,
sampler: GLuint,
pname: GLenum,
param: *const GLint,
) -> Result<(), GLCoreError>;
fn glSamplerParameterf(
&self,
sampler: GLuint,
pname: GLenum,
param: GLfloat,
) -> Result<(), GLCoreError>;
fn glSamplerParameterfv(
&self,
sampler: GLuint,
pname: GLenum,
param: *const GLfloat,
) -> Result<(), GLCoreError>;
fn glGetSamplerParameteriv(
&self,
sampler: GLuint,
pname: GLenum,
params: *mut GLint,
) -> Result<(), GLCoreError>;
fn glGetSamplerParameterfv(
&self,
sampler: GLuint,
pname: GLenum,
params: *mut GLfloat,
) -> Result<(), GLCoreError>;
fn glVertexAttribDivisor(
&self,
index: GLuint,
divisor: GLuint,
) -> Result<(), GLCoreError>;
fn glBindTransformFeedback(
&self,
target: GLenum,
id: GLuint,
) -> Result<(), GLCoreError>;
fn glDeleteTransformFeedbacks(
&self,
n: GLsizei,
ids: *const GLuint,
) -> Result<(), GLCoreError>;
fn glGenTransformFeedbacks(
&self,
n: GLsizei,
ids: *mut GLuint,
) -> Result<(), GLCoreError>;
fn glIsTransformFeedback(
&self,
id: GLuint,
) -> Result<GLboolean, GLCoreError>;
fn glPauseTransformFeedback(&self) -> Result<(), GLCoreError>;
fn glResumeTransformFeedback(&self) -> Result<(), GLCoreError>;
fn glGetProgramBinary(
&self,
program: GLuint,
bufSize: GLsizei,
length: *mut GLsizei,
binaryFormat: *mut GLenum,
binary: *mut c_void,
) -> Result<(), GLCoreError>;
fn glProgramBinary(
&self,
program: GLuint,
binaryFormat: GLenum,
binary: *const c_void,
length: GLsizei,
) -> Result<(), GLCoreError>;
fn glProgramParameteri(
&self,
program: GLuint,
pname: GLenum,
value: GLint,
) -> Result<(), GLCoreError>;
fn glInvalidateFramebuffer(
&self,
target: GLenum,
numAttachments: GLsizei,
attachments: *const GLenum,
) -> Result<(), GLCoreError>;
fn glInvalidateSubFramebuffer(
&self,
target: GLenum,
numAttachments: GLsizei,
attachments: *const GLenum,
x: GLint,
y: GLint,
width: GLsizei,
height: GLsizei,
) -> Result<(), GLCoreError>;
fn glTexStorage2D(
&self,
target: GLenum,
levels: GLsizei,
internalformat: GLenum,
width: GLsizei,
height: GLsizei,
) -> Result<(), GLCoreError>;
fn glTexStorage3D(
&self,
target: GLenum,
levels: GLsizei,
internalformat: GLenum,
width: GLsizei,
height: GLsizei,
depth: GLsizei,
) -> Result<(), GLCoreError>;
fn glGetInternalformativ(
&self,
target: GLenum,
internalformat: GLenum,
pname: GLenum,
bufSize: GLsizei,
params: *mut GLint,
) -> Result<(), GLCoreError>;
}
Expand description
Functions from OpenGL ES version 3.0