Struct ash::ext::shader_object::Device

source ·
pub struct Device {
    pub(crate) fp: DeviceFn,
    pub(crate) handle: Device,
}
Expand description

VK_EXT_shader_object device-level functions

Fields§

§fp: DeviceFn§handle: Device

Implementations§

source§

impl Device

source

pub fn new(instance: &Instance, device: &Device) -> Self

source

pub fn fp(&self) -> &DeviceFn

source

pub fn device(&self) -> Device

source§

impl Device

source

pub unsafe fn create_shaders( &self, create_infos: &[ShaderCreateInfoEXT<'_>], allocator: Option<&AllocationCallbacks<'_>>, ) -> Result<Vec<ShaderEXT>, (Vec<ShaderEXT>, Result)>

https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkCreateShadersEXT.html

When this function returns, whether or not it succeeds, it is guaranteed that every returned element is either vk::ShaderEXT::null() or a valid vk::ShaderEXT handle.

This means that whenever shader creation fails, the application can determine which shader the returned error pertains to by locating the first vk::Handle::is_null() element in the returned Vec. It also means that an application can reliably clean up from a failed call by iterating over the returned Vec and destroying every element that is not vk::Handle::is_null().

source

pub unsafe fn destroy_shader( &self, shader: ShaderEXT, allocator: Option<&AllocationCallbacks<'_>>, )

source

pub unsafe fn get_shader_binary_data( &self, shader: ShaderEXT, ) -> VkResult<Vec<u8>>

source

pub unsafe fn cmd_bind_shaders( &self, command_buffer: CommandBuffer, stages: &[ShaderStageFlags], shaders: &[ShaderEXT], )

source

pub unsafe fn cmd_set_vertex_input( &self, command_buffer: CommandBuffer, vertex_binding_descriptions: &[VertexInputBindingDescription2EXT<'_>], vertex_attribute_descriptions: &[VertexInputAttributeDescription2EXT<'_>], )

source

pub unsafe fn cmd_set_cull_mode( &self, command_buffer: CommandBuffer, cull_mode: CullModeFlags, )

source

pub unsafe fn cmd_set_front_face( &self, command_buffer: CommandBuffer, front_face: FrontFace, )

source

pub unsafe fn cmd_set_primitive_topology( &self, command_buffer: CommandBuffer, primitive_topology: PrimitiveTopology, )

source

pub unsafe fn cmd_set_viewport_with_count( &self, command_buffer: CommandBuffer, viewports: &[Viewport], )

source

pub unsafe fn cmd_set_scissor_with_count( &self, command_buffer: CommandBuffer, scissors: &[Rect2D], )

source

pub unsafe fn cmd_bind_vertex_buffers2( &self, command_buffer: CommandBuffer, first_binding: u32, buffers: &[Buffer], offsets: &[DeviceSize], sizes: Option<&[DeviceSize]>, strides: Option<&[DeviceSize]>, )

source

pub unsafe fn cmd_set_depth_test_enable( &self, command_buffer: CommandBuffer, depth_test_enable: bool, )

source

pub unsafe fn cmd_set_depth_write_enable( &self, command_buffer: CommandBuffer, depth_write_enable: bool, )

source

pub unsafe fn cmd_set_depth_compare_op( &self, command_buffer: CommandBuffer, depth_compare_op: CompareOp, )

source

pub unsafe fn cmd_set_depth_bounds_test_enable( &self, command_buffer: CommandBuffer, depth_bounds_test_enable: bool, )

source

pub unsafe fn cmd_set_stencil_test_enable( &self, command_buffer: CommandBuffer, stencil_test_enable: bool, )

source

pub unsafe fn cmd_set_stencil_op( &self, command_buffer: CommandBuffer, face_mask: StencilFaceFlags, fail_op: StencilOp, pass_op: StencilOp, depth_fail_op: StencilOp, compare_op: CompareOp, )

source

pub unsafe fn cmd_set_patch_control_points( &self, command_buffer: CommandBuffer, patch_control_points: u32, )

source

pub unsafe fn cmd_set_rasterizer_discard_enable( &self, command_buffer: CommandBuffer, rasterizer_discard_enable: bool, )

source

pub unsafe fn cmd_set_depth_bias_enable( &self, command_buffer: CommandBuffer, depth_bias_enable: bool, )

source

pub unsafe fn cmd_set_logic_op( &self, command_buffer: CommandBuffer, logic_op: LogicOp, )

source

pub unsafe fn cmd_set_primitive_restart_enable( &self, command_buffer: CommandBuffer, primitive_restart_enable: bool, )

source

pub unsafe fn cmd_set_tessellation_domain_origin( &self, command_buffer: CommandBuffer, domain_origin: TessellationDomainOrigin, )

source

pub unsafe fn cmd_set_depth_clamp_enable( &self, command_buffer: CommandBuffer, depth_clamp_enable: bool, )

source

pub unsafe fn cmd_set_polygon_mode( &self, command_buffer: CommandBuffer, polygon_mode: PolygonMode, )

source

pub unsafe fn cmd_set_rasterization_samples( &self, command_buffer: CommandBuffer, rasterization_samples: SampleCountFlags, )

source

pub unsafe fn cmd_set_sample_mask( &self, command_buffer: CommandBuffer, samples: SampleCountFlags, sample_mask: &[SampleMask], )

source

pub unsafe fn cmd_set_alpha_to_coverage_enable( &self, command_buffer: CommandBuffer, alpha_to_coverage_enable: bool, )

source

pub unsafe fn cmd_set_alpha_to_one_enable( &self, command_buffer: CommandBuffer, alpha_to_one_enable: bool, )

source

pub unsafe fn cmd_set_logic_op_enable( &self, command_buffer: CommandBuffer, logic_op_enable: bool, )

source

pub unsafe fn cmd_set_color_blend_enable( &self, command_buffer: CommandBuffer, first_attachment: u32, color_blend_enables: &[Bool32], )

source

pub unsafe fn cmd_set_color_blend_equation( &self, command_buffer: CommandBuffer, first_attachment: u32, color_blend_equations: &[ColorBlendEquationEXT], )

source

pub unsafe fn cmd_set_color_write_mask( &self, command_buffer: CommandBuffer, first_attachment: u32, color_write_masks: &[ColorComponentFlags], )

source

pub unsafe fn cmd_set_rasterization_stream( &self, command_buffer: CommandBuffer, rasterization_stream: u32, )

source

pub unsafe fn cmd_set_conservative_rasterization_mode( &self, command_buffer: CommandBuffer, conservative_rasterization_mode: ConservativeRasterizationModeEXT, )

source

pub unsafe fn cmd_set_extra_primitive_overestimation_size( &self, command_buffer: CommandBuffer, extra_primitive_overestimation_size: f32, )

source

pub unsafe fn cmd_set_depth_clip_enable( &self, command_buffer: CommandBuffer, depth_clip_enable: bool, )

source

pub unsafe fn cmd_set_sample_locations_enable( &self, command_buffer: CommandBuffer, sample_locations_enable: bool, )

source

pub unsafe fn cmd_set_color_blend_advanced( &self, command_buffer: CommandBuffer, first_attachment: u32, color_blend_advanced: &[ColorBlendAdvancedEXT], )

source

pub unsafe fn cmd_set_provoking_vertex_mode( &self, command_buffer: CommandBuffer, provoking_vertex_mode: ProvokingVertexModeEXT, )

source

pub unsafe fn cmd_set_line_rasterization_mode( &self, command_buffer: CommandBuffer, line_rasterization_mode: LineRasterizationModeEXT, )

source

pub unsafe fn cmd_set_line_stipple_enable( &self, command_buffer: CommandBuffer, stippled_line_enable: bool, )

source

pub unsafe fn cmd_set_depth_clip_negative_one_to_one( &self, command_buffer: CommandBuffer, negative_one_to_one: bool, )

source

pub unsafe fn cmd_set_viewport_w_scaling_enable_nv( &self, command_buffer: CommandBuffer, viewport_w_scaling_enable: bool, )

source

pub unsafe fn cmd_set_viewport_swizzle_nv( &self, command_buffer: CommandBuffer, first_attachment: u32, viewport_swizzles: &[ViewportSwizzleNV], )

source

pub unsafe fn cmd_set_coverage_to_color_enable_nv( &self, command_buffer: CommandBuffer, coverage_to_color_enable: bool, )

source

pub unsafe fn cmd_set_coverage_to_color_location_nv( &self, command_buffer: CommandBuffer, coverage_to_color_location: u32, )

source

pub unsafe fn cmd_set_coverage_modulation_mode_nv( &self, command_buffer: CommandBuffer, coverage_modulation_mode: CoverageModulationModeNV, )

source

pub unsafe fn cmd_set_coverage_modulation_table_enable_nv( &self, command_buffer: CommandBuffer, coverage_modulation_table_enable: bool, )

source

pub unsafe fn cmd_set_coverage_modulation_table_nv( &self, command_buffer: CommandBuffer, coverage_modulation_table: &[f32], )

source

pub unsafe fn cmd_set_shading_rate_image_enable_nv( &self, command_buffer: CommandBuffer, shading_rate_image_enable: bool, )

source

pub unsafe fn cmd_set_representative_fragment_test_enable_nv( &self, command_buffer: CommandBuffer, representative_fragment_test_enable: bool, )

source

pub unsafe fn cmd_set_coverage_reduction_mode_nv( &self, command_buffer: CommandBuffer, coverage_reduction_mode: CoverageReductionModeNV, )

Trait Implementations§

source§

impl Clone for Device

source§

fn clone(&self) -> Device

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

Auto Trait Implementations§

§

impl Freeze for Device

§

impl RefUnwindSafe for Device

§

impl Send for Device

§

impl Sync for Device

§

impl Unpin for Device

§

impl UnwindSafe for Device

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.