VulkanFullScreenQuadExt

Trait VulkanFullScreenQuadExt 

Source
pub trait VulkanFullScreenQuadExt: IsA<VulkanFullScreenQuad> + 'static {
Show 15 methods // Provided methods fn draw(&self) -> Result<(), Error> { ... } fn enable_blend(&self, enable_blend: bool) { ... } fn enable_clear(&self, enable_clear: bool) { ... } fn fill_command_buffer( &self, cmd: &mut VulkanCommandBuffer, fence: &mut VulkanFence, ) -> Result<(), Error> { ... } fn last_fence(&self) -> VulkanFence { ... } fn queue(&self) -> Option<VulkanQueue> { ... } fn prepare_draw(&self, fence: &mut VulkanFence) -> Result<(), Error> { ... } fn set_index_buffer( &self, indices: &Memory, n_indices: usize, ) -> Result<(), Error> { ... } fn set_info(&self, in_info: &VideoInfo, out_info: &VideoInfo) -> bool { ... } fn set_input_buffer(&self, buffer: Option<&Buffer>) -> Result<(), Error> { ... } fn set_output_buffer(&self, buffer: Option<&Buffer>) -> Result<(), Error> { ... } fn set_shaders(&self, vert: &VulkanHandle, frag: &VulkanHandle) -> bool { ... } fn set_uniform_buffer(&self, uniforms: &Memory) -> Result<(), Error> { ... } fn set_vertex_buffer(&self, vertices: &Memory) -> Result<(), Error> { ... } fn submit( &self, cmd: VulkanCommandBuffer, fence: &mut VulkanFence, ) -> Result<(), Error> { ... }
}
Expand description

Trait containing all VulkanFullScreenQuad methods.

§Implementors

VulkanFullScreenQuad

Provided Methods§

Source

fn draw(&self) -> Result<(), Error>

Helper function for creation and submission of a command buffer that draws a full screen quad. If you need to add other things to the command buffer, create the command buffer manually and call prepare_draw(), fill_command_buffer() and submit() instead.

§Returns

whether the draw was successful

Source

fn enable_blend(&self, enable_blend: bool)

Enables blending of the input image to the output image.

See also: gst_vulkan_full_screen_quad_set_blend_operation() and gst_vulkan_full_screen_quad_set_blend_factors().

§enable_blend

whether to enable blending

Source

fn enable_clear(&self, enable_clear: bool)

§enable_clear

whether to clear the framebuffer on load

Source

fn fill_command_buffer( &self, cmd: &mut VulkanCommandBuffer, fence: &mut VulkanFence, ) -> Result<(), Error>

cmd must be locked with gst_vulkan_command_buffer_lock().

§cmd

the VulkanCommandBuffer to fill with commands

§Returns

whether cmd could be filled with the necessary commands

Source

fn last_fence(&self) -> VulkanFence

Source

fn queue(&self) -> Option<VulkanQueue>

§Returns

The currently configured VulkanQueue

Source

fn prepare_draw(&self, fence: &mut VulkanFence) -> Result<(), Error>

§fence

a VulkanFence that will be signalled after submission

§Returns

whether the necessary information could be generated for drawing a frame.

Source

fn set_index_buffer( &self, indices: &Memory, n_indices: usize, ) -> Result<(), Error>

See also set_vertex_buffer()

§indices

the index data. Must be a GstVulkanBufferMemory

§n_indices

number of indices in indices

§Returns

whether the index data could be set

Source

fn set_info(&self, in_info: &VideoInfo, out_info: &VideoInfo) -> bool

§in_info

the input [gst_video::VideoInfo][crate::gst_video::VideoInfo] to set

§out_info

the output [gst_video::VideoInfo][crate::gst_video::VideoInfo] to set

§Returns

whether the information could be successfully set

Source

fn set_input_buffer(&self, buffer: Option<&Buffer>) -> Result<(), Error>

§buffer

the input gst::Buffer to set

§Returns

whether the input buffer could be changed

Source

fn set_output_buffer(&self, buffer: Option<&Buffer>) -> Result<(), Error>

§buffer

the output gst::Buffer to set

§Returns

whether the input buffer could be changed

Source

fn set_shaders(&self, vert: &VulkanHandle, frag: &VulkanHandle) -> bool

§vert

the vertex shader to set

§frag

the fragment shader to set

§Returns

whether the shaders could be set

Source

fn set_uniform_buffer(&self, uniforms: &Memory) -> Result<(), Error>

§uniforms

the uniform data to set. Must be a GstVulkanBufferMemory

§Returns

whether the shaders could be set

Source

fn set_vertex_buffer(&self, vertices: &Memory) -> Result<(), Error>

§vertices

the vertex data. Must be a GstVulkanBufferMemory

§Returns

whether the index data could be set

Source

fn submit( &self, cmd: VulkanCommandBuffer, fence: &mut VulkanFence, ) -> Result<(), Error>

§cmd

a VulkanCommandBuffer to submit

§fence

a VulkanFence to signal on completion

§Returns

whether cmd could be submitted to the queue

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§