pub trait GL_3_0 {
Show 85 methods
// Required methods
fn glGetError(&self) -> u32;
fn glColorMaski(
&self,
index: u32,
r: u8,
g: u8,
b: u8,
a: u8,
) -> Result<(), GLCoreError>;
fn glGetBooleani_v(
&self,
target: u32,
index: u32,
data: *mut u8,
) -> Result<(), GLCoreError>;
fn glGetIntegeri_v(
&self,
target: u32,
index: u32,
data: *mut i32,
) -> Result<(), GLCoreError>;
fn glEnablei(&self, target: u32, index: u32) -> Result<(), GLCoreError>;
fn glDisablei(&self, target: u32, index: u32) -> Result<(), GLCoreError>;
fn glIsEnabledi(&self, target: u32, index: u32) -> Result<u8, GLCoreError>;
fn glBeginTransformFeedback(
&self,
primitiveMode: u32,
) -> Result<(), GLCoreError>;
fn glEndTransformFeedback(&self) -> Result<(), GLCoreError>;
fn glBindBufferRange(
&self,
target: u32,
index: u32,
buffer: u32,
offset: usize,
size: usize,
) -> Result<(), GLCoreError>;
fn glBindBufferBase(
&self,
target: u32,
index: u32,
buffer: u32,
) -> Result<(), GLCoreError>;
fn glTransformFeedbackVaryings(
&self,
program: u32,
count: i32,
varyings: *const *const i8,
bufferMode: u32,
) -> Result<(), GLCoreError>;
fn glGetTransformFeedbackVarying(
&self,
program: u32,
index: u32,
bufSize: i32,
length: *mut i32,
size: *mut i32,
type_: *mut u32,
name: *mut i8,
) -> Result<(), GLCoreError>;
fn glClampColor(&self, target: u32, clamp: u32) -> Result<(), GLCoreError>;
fn glBeginConditionalRender(
&self,
id: u32,
mode: u32,
) -> Result<(), GLCoreError>;
fn glEndConditionalRender(&self) -> Result<(), GLCoreError>;
fn glVertexAttribIPointer(
&self,
index: u32,
size: i32,
type_: u32,
stride: i32,
pointer: *const c_void,
) -> Result<(), GLCoreError>;
fn glGetVertexAttribIiv(
&self,
index: u32,
pname: u32,
params: *mut i32,
) -> Result<(), GLCoreError>;
fn glGetVertexAttribIuiv(
&self,
index: u32,
pname: u32,
params: *mut u32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI1i(&self, index: u32, x: i32) -> Result<(), GLCoreError>;
fn glVertexAttribI2i(
&self,
index: u32,
x: i32,
y: i32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI3i(
&self,
index: u32,
x: i32,
y: i32,
z: i32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4i(
&self,
index: u32,
x: i32,
y: i32,
z: i32,
w: i32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI1ui(&self, index: u32, x: u32) -> Result<(), GLCoreError>;
fn glVertexAttribI2ui(
&self,
index: u32,
x: u32,
y: u32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI3ui(
&self,
index: u32,
x: u32,
y: u32,
z: u32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4ui(
&self,
index: u32,
x: u32,
y: u32,
z: u32,
w: u32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI1iv(
&self,
index: u32,
v: *const i32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI2iv(
&self,
index: u32,
v: *const i32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI3iv(
&self,
index: u32,
v: *const i32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4iv(
&self,
index: u32,
v: *const i32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI1uiv(
&self,
index: u32,
v: *const u32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI2uiv(
&self,
index: u32,
v: *const u32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI3uiv(
&self,
index: u32,
v: *const u32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4uiv(
&self,
index: u32,
v: *const u32,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4bv(
&self,
index: u32,
v: *const i8,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4sv(
&self,
index: u32,
v: *const i16,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4ubv(
&self,
index: u32,
v: *const u8,
) -> Result<(), GLCoreError>;
fn glVertexAttribI4usv(
&self,
index: u32,
v: *const u16,
) -> Result<(), GLCoreError>;
fn glGetUniformuiv(
&self,
program: u32,
location: i32,
params: *mut u32,
) -> Result<(), GLCoreError>;
fn glBindFragDataLocation(
&self,
program: u32,
color: u32,
name: *const i8,
) -> Result<(), GLCoreError>;
fn glGetFragDataLocation(
&self,
program: u32,
name: *const i8,
) -> Result<i32, GLCoreError>;
fn glUniform1ui(&self, location: i32, v0: u32) -> Result<(), GLCoreError>;
fn glUniform2ui(
&self,
location: i32,
v0: u32,
v1: u32,
) -> Result<(), GLCoreError>;
fn glUniform3ui(
&self,
location: i32,
v0: u32,
v1: u32,
v2: u32,
) -> Result<(), GLCoreError>;
fn glUniform4ui(
&self,
location: i32,
v0: u32,
v1: u32,
v2: u32,
v3: u32,
) -> Result<(), GLCoreError>;
fn glUniform1uiv(
&self,
location: i32,
count: i32,
value: *const u32,
) -> Result<(), GLCoreError>;
fn glUniform2uiv(
&self,
location: i32,
count: i32,
value: *const u32,
) -> Result<(), GLCoreError>;
fn glUniform3uiv(
&self,
location: i32,
count: i32,
value: *const u32,
) -> Result<(), GLCoreError>;
fn glUniform4uiv(
&self,
location: i32,
count: i32,
value: *const u32,
) -> Result<(), GLCoreError>;
fn glTexParameterIiv(
&self,
target: u32,
pname: u32,
params: *const i32,
) -> Result<(), GLCoreError>;
fn glTexParameterIuiv(
&self,
target: u32,
pname: u32,
params: *const u32,
) -> Result<(), GLCoreError>;
fn glGetTexParameterIiv(
&self,
target: u32,
pname: u32,
params: *mut i32,
) -> Result<(), GLCoreError>;
fn glGetTexParameterIuiv(
&self,
target: u32,
pname: u32,
params: *mut u32,
) -> Result<(), GLCoreError>;
fn glClearBufferiv(
&self,
buffer: u32,
drawbuffer: i32,
value: *const i32,
) -> Result<(), GLCoreError>;
fn glClearBufferuiv(
&self,
buffer: u32,
drawbuffer: i32,
value: *const u32,
) -> Result<(), GLCoreError>;
fn glClearBufferfv(
&self,
buffer: u32,
drawbuffer: i32,
value: *const f32,
) -> Result<(), GLCoreError>;
fn glClearBufferfi(
&self,
buffer: u32,
drawbuffer: i32,
depth: f32,
stencil: i32,
) -> Result<(), GLCoreError>;
fn glGetStringi(
&self,
name: u32,
index: u32,
) -> Result<&'static str, GLCoreError>;
fn glIsRenderbuffer(&self, renderbuffer: u32) -> Result<u8, GLCoreError>;
fn glBindRenderbuffer(
&self,
target: u32,
renderbuffer: u32,
) -> Result<(), GLCoreError>;
fn glDeleteRenderbuffers(
&self,
n: i32,
renderbuffers: *const u32,
) -> Result<(), GLCoreError>;
fn glGenRenderbuffers(
&self,
n: i32,
renderbuffers: *mut u32,
) -> Result<(), GLCoreError>;
fn glRenderbufferStorage(
&self,
target: u32,
internalformat: u32,
width: i32,
height: i32,
) -> Result<(), GLCoreError>;
fn glGetRenderbufferParameteriv(
&self,
target: u32,
pname: u32,
params: *mut i32,
) -> Result<(), GLCoreError>;
fn glIsFramebuffer(&self, framebuffer: u32) -> Result<u8, GLCoreError>;
fn glBindFramebuffer(
&self,
target: u32,
framebuffer: u32,
) -> Result<(), GLCoreError>;
fn glDeleteFramebuffers(
&self,
n: i32,
framebuffers: *const u32,
) -> Result<(), GLCoreError>;
fn glGenFramebuffers(
&self,
n: i32,
framebuffers: *mut u32,
) -> Result<(), GLCoreError>;
fn glCheckFramebufferStatus(&self, target: u32) -> Result<u32, GLCoreError>;
fn glFramebufferTexture1D(
&self,
target: u32,
attachment: u32,
textarget: u32,
texture: u32,
level: i32,
) -> Result<(), GLCoreError>;
fn glFramebufferTexture2D(
&self,
target: u32,
attachment: u32,
textarget: u32,
texture: u32,
level: i32,
) -> Result<(), GLCoreError>;
fn glFramebufferTexture3D(
&self,
target: u32,
attachment: u32,
textarget: u32,
texture: u32,
level: i32,
zoffset: i32,
) -> Result<(), GLCoreError>;
fn glFramebufferRenderbuffer(
&self,
target: u32,
attachment: u32,
renderbuffertarget: u32,
renderbuffer: u32,
) -> Result<(), GLCoreError>;
fn glGetFramebufferAttachmentParameteriv(
&self,
target: u32,
attachment: u32,
pname: u32,
params: *mut i32,
) -> Result<(), GLCoreError>;
fn glGenerateMipmap(&self, target: u32) -> Result<(), GLCoreError>;
fn glBlitFramebuffer(
&self,
srcX0: i32,
srcY0: i32,
srcX1: i32,
srcY1: i32,
dstX0: i32,
dstY0: i32,
dstX1: i32,
dstY1: i32,
mask: u32,
filter: u32,
) -> Result<(), GLCoreError>;
fn glRenderbufferStorageMultisample(
&self,
target: u32,
samples: i32,
internalformat: u32,
width: i32,
height: i32,
) -> Result<(), GLCoreError>;
fn glFramebufferTextureLayer(
&self,
target: u32,
attachment: u32,
texture: u32,
level: i32,
layer: i32,
) -> Result<(), GLCoreError>;
fn glMapBufferRange(
&self,
target: u32,
offset: usize,
length: usize,
access: u32,
) -> Result<*mut c_void, GLCoreError>;
fn glFlushMappedBufferRange(
&self,
target: u32,
offset: usize,
length: usize,
) -> Result<(), GLCoreError>;
fn glBindVertexArray(&self, array: u32) -> Result<(), GLCoreError>;
fn glDeleteVertexArrays(
&self,
n: i32,
arrays: *const u32,
) -> Result<(), GLCoreError>;
fn glGenVertexArrays(
&self,
n: i32,
arrays: *mut u32,
) -> Result<(), GLCoreError>;
fn glIsVertexArray(&self, array: u32) -> Result<u8, GLCoreError>;
}Expand description
Functions from OpenGL version 3.0