Struct gfx_backend_gl::GlContext [−][src]
pub struct GlContext { /* fields omitted */ }
Implementations
Trait Implementations
type VertexArray = u32
type Framebuffer = u32
type Renderbuffer = u32
type UniformLocation = u32
type TransformFeedback = u32
pub unsafe fn create_framebuffer(
&self
) -> Result<<Context as HasContext>::Framebuffer, String>
pub unsafe fn is_framebuffer(
&self,
framebuffer: <Context as HasContext>::Framebuffer
) -> bool
pub unsafe fn create_renderbuffer(
&self
) -> Result<<Context as HasContext>::Renderbuffer, String>
pub unsafe fn is_renderbuffer(
&self,
renderbuffer: <Context as HasContext>::Renderbuffer
) -> bool
pub unsafe fn create_shader(
&self,
shader_type: u32
) -> Result<<Context as HasContext>::Shader, String>
pub unsafe fn get_shader_compile_status(
&self,
shader: <Context as HasContext>::Shader
) -> bool
pub unsafe fn get_tex_image(
&self,
target: u32,
level: i32,
format: u32,
ty: u32,
pixels: PixelPackData<'_>
)
pub unsafe fn attach_shader(
&self,
program: <Context as HasContext>::Program,
shader: <Context as HasContext>::Shader
)
pub unsafe fn detach_shader(
&self,
program: <Context as HasContext>::Program,
shader: <Context as HasContext>::Shader
)
pub unsafe fn get_program_link_status(
&self,
program: <Context as HasContext>::Program
) -> bool
pub unsafe fn get_program_info_log(
&self,
program: <Context as HasContext>::Program
) -> String
pub unsafe fn get_active_uniform(
&self,
program: <Context as HasContext>::Program,
index: u32
) -> Option<ActiveUniform>
pub unsafe fn bind_buffer(
&self,
target: u32,
buffer: Option<<Context as HasContext>::Buffer>
)
pub unsafe fn bind_buffer_base(
&self,
target: u32,
index: u32,
buffer: Option<<Context as HasContext>::Buffer>
)
pub unsafe fn bind_buffer_range(
&self,
target: u32,
index: u32,
buffer: Option<<Context as HasContext>::Buffer>,
offset: i32,
size: i32
)
pub unsafe fn bind_framebuffer(
&self,
target: u32,
framebuffer: Option<<Context as HasContext>::Framebuffer>
)
pub unsafe fn bind_renderbuffer(
&self,
target: u32,
renderbuffer: Option<<Context as HasContext>::Renderbuffer>
)
pub unsafe fn blit_framebuffer(
&self,
src_x0: i32,
src_y0: i32,
src_x1: i32,
src_y1: i32,
dst_x0: i32,
dst_y0: i32,
dst_x1: i32,
dst_y1: i32,
mask: u32,
filter: u32
)
pub unsafe fn create_vertex_array(
&self
) -> Result<<Context as HasContext>::VertexArray, String>
pub unsafe fn bind_vertex_array(
&self,
vertex_array: Option<<Context as HasContext>::VertexArray>
)
pub unsafe fn bind_frag_data_location(
&self,
program: <Context as HasContext>::Program,
color_number: u32,
name: &str
)
pub unsafe fn clear_buffer_depth_stencil(
&self,
target: u32,
draw_buffer: u32,
depth: f32,
stencil: i32
)
pub unsafe fn client_wait_sync(
&self,
fence: <Context as HasContext>::Fence,
flags: u32,
timeout: i32
) -> u32
pub unsafe fn copy_buffer_sub_data(
&self,
src_target: u32,
dst_target: u32,
src_offset: i32,
dst_offset: i32,
size: i32
)
pub unsafe fn draw_arrays_instanced(
&self,
mode: u32,
first: i32,
count: i32,
instance_count: i32
)
pub unsafe fn draw_arrays_instanced_base_instance(
&self,
mode: u32,
first: i32,
count: i32,
instance_count: i32,
base_instance: u32
)
pub unsafe fn draw_elements_base_vertex(
&self,
mode: u32,
count: i32,
element_type: u32,
offset: i32,
base_vertex: i32
)
pub unsafe fn draw_elements_instanced(
&self,
mode: u32,
count: i32,
element_type: u32,
offset: i32,
instance_count: i32
)
pub unsafe fn draw_elements_instanced_base_vertex(
&self,
mode: u32,
count: i32,
element_type: u32,
offset: i32,
instance_count: i32,
base_vertex: i32
)
pub unsafe fn draw_elements_instanced_base_vertex_base_instance(
&self,
mode: u32,
count: i32,
element_type: u32,
offset: i32,
instance_count: i32,
base_vertex: i32,
base_instance: u32
)
pub unsafe fn framebuffer_renderbuffer(
&self,
target: u32,
attachment: u32,
renderbuffer_target: u32,
renderbuffer: Option<<Context as HasContext>::Renderbuffer>
)
pub unsafe fn framebuffer_texture(
&self,
target: u32,
attachment: u32,
texture: Option<<Context as HasContext>::Texture>,
level: i32
)
pub unsafe fn framebuffer_texture_2d(
&self,
target: u32,
attachment: u32,
texture_target: u32,
texture: Option<<Context as HasContext>::Texture>,
level: i32
)
pub unsafe fn framebuffer_texture_3d(
&self,
target: u32,
attachment: u32,
texture_target: u32,
texture: Option<<Context as HasContext>::Texture>,
level: i32,
layer: i32
)
pub unsafe fn framebuffer_texture_layer(
&self,
target: u32,
attachment: u32,
texture: Option<<Context as HasContext>::Texture>,
level: i32,
layer: i32
)
pub unsafe fn get_uniform_location(
&self,
program: <Context as HasContext>::Program,
name: &str
) -> Option<<Context as HasContext>::UniformLocation>
pub unsafe fn get_attrib_location(
&self,
program: <Context as HasContext>::Program,
name: &str
) -> Option<u32>
pub unsafe fn bind_attrib_location(
&self,
program: <Context as HasContext>::Program,
index: u32,
name: &str
)
pub unsafe fn get_active_attribute(
&self,
program: <Context as HasContext>::Program,
index: u32
) -> Option<ActiveAttribute>
pub unsafe fn renderbuffer_storage(
&self,
target: u32,
internal_format: u32,
width: i32,
height: i32
)
pub unsafe fn renderbuffer_storage_multisample(
&self,
target: u32,
samples: i32,
internal_format: u32,
width: i32,
height: i32
)
pub unsafe fn sampler_parameter_f32(
&self,
sampler: <Context as HasContext>::Sampler,
name: u32,
value: f32
)
pub unsafe fn sampler_parameter_f32_slice(
&self,
sampler: <Context as HasContext>::Sampler,
name: u32,
value: &mut [f32]
)
pub unsafe fn sampler_parameter_i32(
&self,
sampler: <Context as HasContext>::Sampler,
name: u32,
value: i32
)
pub unsafe fn tex_image_1d(
&self,
target: u32,
level: i32,
internal_format: i32,
width: i32,
border: i32,
format: u32,
ty: u32,
pixels: Option<&[u8]>
)
pub unsafe fn tex_image_2d(
&self,
target: u32,
level: i32,
internal_format: i32,
width: i32,
height: i32,
border: i32,
format: u32,
ty: u32,
pixels: Option<&[u8]>
)
pub unsafe fn tex_image_3d(
&self,
target: u32,
level: i32,
internal_format: i32,
width: i32,
height: i32,
depth: i32,
border: i32,
format: u32,
ty: u32,
pixels: Option<&[u8]>
)
pub unsafe fn tex_storage_1d(
&self,
target: u32,
levels: i32,
internal_format: u32,
width: i32
)
pub unsafe fn tex_storage_2d(
&self,
target: u32,
levels: i32,
internal_format: u32,
width: i32,
height: i32
)
pub unsafe fn tex_storage_3d(
&self,
target: u32,
levels: i32,
internal_format: u32,
width: i32,
height: i32,
depth: i32
)
pub unsafe fn get_uniform_i32(
&self,
program: <Context as HasContext>::Program,
location: &<Context as HasContext>::UniformLocation,
v: &mut [i32]
)
pub unsafe fn get_uniform_f32(
&self,
program: <Context as HasContext>::Program,
location: &<Context as HasContext>::UniformLocation,
v: &mut [f32]
)
pub unsafe fn uniform_1_i32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: i32
)
pub unsafe fn uniform_2_i32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: i32,
y: i32
)
pub unsafe fn uniform_3_i32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: i32,
y: i32,
z: i32
)
pub unsafe fn uniform_4_i32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: i32,
y: i32,
z: i32,
w: i32
)
pub unsafe fn uniform_1_i32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[i32]
)
pub unsafe fn uniform_2_i32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[i32]
)
pub unsafe fn uniform_3_i32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[i32]
)
pub unsafe fn uniform_4_i32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[i32]
)
pub unsafe fn uniform_1_u32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: u32
)
pub unsafe fn uniform_2_u32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: u32,
y: u32
)
pub unsafe fn uniform_3_u32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: u32,
y: u32,
z: u32
)
pub unsafe fn uniform_4_u32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: u32,
y: u32,
z: u32,
w: u32
)
pub unsafe fn uniform_1_u32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[u32]
)
pub unsafe fn uniform_2_u32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[u32]
)
pub unsafe fn uniform_3_u32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[u32]
)
pub unsafe fn uniform_4_u32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[u32]
)
pub unsafe fn uniform_1_f32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: f32
)
pub unsafe fn uniform_2_f32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: f32,
y: f32
)
pub unsafe fn uniform_3_f32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: f32,
y: f32,
z: f32
)
pub unsafe fn uniform_4_f32(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
x: f32,
y: f32,
z: f32,
w: f32
)
pub unsafe fn uniform_1_f32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[f32]
)
pub unsafe fn uniform_2_f32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[f32]
)
pub unsafe fn uniform_3_f32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[f32]
)
pub unsafe fn uniform_4_f32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
v: &[f32]
)
pub unsafe fn uniform_matrix_2_f32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
transpose: bool,
v: &[f32]
)
pub unsafe fn uniform_matrix_3_f32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
transpose: bool,
v: &[f32]
)
pub unsafe fn uniform_matrix_4_f32_slice(
&self,
location: Option<&<Context as HasContext>::UniformLocation>,
transpose: bool,
v: &[f32]
)
pub unsafe fn color_mask_draw_buffer(
&self,
draw_buffer: u32,
red: bool,
green: bool,
blue: bool,
alpha: bool
)
pub unsafe fn map_buffer_range(
&self,
target: u32,
offset: i32,
length: i32,
access: u32
) -> *mut u8
pub unsafe fn bind_texture(
&self,
target: u32,
texture: Option<<Context as HasContext>::Texture>
)
pub unsafe fn bind_sampler(
&self,
unit: u32,
sampler: Option<<Context as HasContext>::Sampler>
)
pub unsafe fn fence_sync(
&self,
condition: u32,
flags: u32
) -> Result<<Context as HasContext>::Fence, String>
pub unsafe fn tex_sub_image_2d(
&self,
target: u32,
level: i32,
x_offset: i32,
y_offset: i32,
width: i32,
height: i32,
format: u32,
ty: u32,
pixels: PixelUnpackData<'_>
)
pub unsafe fn tex_sub_image_3d(
&self,
target: u32,
level: i32,
x_offset: i32,
y_offset: i32,
z_offset: i32,
width: i32,
height: i32,
depth: i32,
format: u32,
ty: u32,
pixels: PixelUnpackData<'_>
)
pub unsafe fn vertex_attrib_pointer_f32(
&self,
index: u32,
size: i32,
data_type: u32,
normalized: bool,
stride: i32,
offset: i32
)
pub unsafe fn vertex_attrib_pointer_i32(
&self,
index: u32,
size: i32,
data_type: u32,
stride: i32,
offset: i32
)
pub unsafe fn vertex_attrib_pointer_f64(
&self,
index: u32,
size: i32,
data_type: u32,
stride: i32,
offset: i32
)
pub unsafe fn blend_equation_separate_draw_buffer(
&self,
draw_buffer: u32,
mode_rgb: u32,
mode_alpha: u32
)
pub unsafe fn blend_func_separate(
&self,
src_rgb: u32,
dst_rgb: u32,
src_alpha: u32,
dst_alpha: u32
)
pub unsafe fn blend_func_separate_draw_buffer(
&self,
draw_buffer: u32,
src_rgb: u32,
dst_rgb: u32,
src_alpha: u32,
dst_alpha: u32
)
pub unsafe fn stencil_op_separate(
&self,
face: u32,
stencil_fail: u32,
depth_fail: u32,
pass: u32
)
pub unsafe fn debug_message_control(
&self,
source: u32,
msg_type: u32,
severity: u32,
ids: &[u32],
enabled: bool
)
pub unsafe fn debug_message_insert<S>(
&self,
source: u32,
msg_type: u32,
id: u32,
severity: u32,
msg: S
) where
S: AsRef<str>,
pub unsafe fn debug_message_callback<F>(&self, callback: F) where
F: FnMut(u32, u32, u32, u32, &str),
pub unsafe fn push_debug_group<S>(&self, source: u32, id: u32, message: S) where
S: AsRef<str>,
pub unsafe fn object_label<S>(
&self,
identifier: u32,
name: u32,
label: Option<S>
) where
S: AsRef<str>,
pub unsafe fn object_ptr_label<S>(
&self,
sync: <Context as HasContext>::Fence,
label: Option<S>
) where
S: AsRef<str>,
pub unsafe fn get_uniform_block_index(
&self,
program: <Context as HasContext>::Program,
name: &str
) -> Option<u32>
pub unsafe fn uniform_block_binding(
&self,
program: <Context as HasContext>::Program,
index: u32,
binding: u32
)
pub unsafe fn get_shader_storage_block_index(
&self,
program: <Context as HasContext>::Program,
name: &str
) -> Option<u32>
pub unsafe fn shader_storage_block_binding(
&self,
program: <Context as HasContext>::Program,
index: u32,
binding: u32
)
pub unsafe fn read_pixels(
&self,
x: i32,
y: i32,
width: i32,
height: i32,
format: u32,
gltype: u32,
pixels: PixelPackData<'_>
)
pub unsafe fn get_query_parameter_u32(
&self,
query: <Context as HasContext>::Query,
parameter: u32
) -> u32
pub unsafe fn create_transform_feedback(
&self
) -> Result<<Context as HasContext>::TransformFeedback, String>
pub unsafe fn delete_transform_feedback(
&self,
transform_feedback: <Context as HasContext>::TransformFeedback
)
pub unsafe fn bind_transform_feedback(
&self,
target: u32,
transform_feedback: Option<<Context as HasContext>::TransformFeedback>
)
pub unsafe fn transform_feedback_varyings(
&self,
program: <Context as HasContext>::Program,
varyings: &[&str],
buffer_mode: u32
)
pub unsafe fn get_transform_feedback_varying(
&self,
program: <Context as HasContext>::Program,
index: u32
) -> Option<ActiveTransformFeedback>
Auto Trait Implementations
impl RefUnwindSafe for Context
impl UnwindSafe for Context