Struct ccthw::graphics::vulkan_api::raii::PipelineLayout
source · pub struct PipelineLayout { /* private fields */ }
Implementations§
source§impl PipelineLayout
impl PipelineLayout
sourcepub unsafe fn new(
render_device: Arc<RenderDevice>,
create_info: &PipelineLayoutCreateInfo
) -> Result<Self, GraphicsError>
pub unsafe fn new( render_device: Arc<RenderDevice>, create_info: &PipelineLayoutCreateInfo ) -> Result<Self, GraphicsError>
Create a new Vulkan resource which is automatically destroyed when dropped.
Safety
Unsafe because:
- The application must not drop the resource while it is in use by the GPU.
sourcepub fn set_debug_name(&self, name: impl Into<String>)
pub fn set_debug_name(&self, name: impl Into<String>)
Set the debug name for how this resource appears in Vulkan logs.
sourcepub fn raw(&self) -> PipelineLayout
pub fn raw(&self) -> PipelineLayout
Get the raw Vulkan ImageView handle.
source§impl PipelineLayout
impl PipelineLayout
sourcepub unsafe fn new_with_layouts_and_ranges(
render_device: Arc<RenderDevice>,
descriptor_set_layouts: &[DescriptorSetLayout],
push_constant_ranges: &[PushConstantRange]
) -> Result<Self, GraphicsError>
pub unsafe fn new_with_layouts_and_ranges( render_device: Arc<RenderDevice>, descriptor_set_layouts: &[DescriptorSetLayout], push_constant_ranges: &[PushConstantRange] ) -> Result<Self, GraphicsError>
Create a new Vulkan pipeline layout.
Params
render_device
- the Vulkan device used to create resourcesdescriptor_set_layouts
- the descriptor set layouts used by the pipelinepush_constant_ranges
- the push constants used by the pipeline
Safety
Unsafe because:
- any descriptor set layouts must live at least as long as the pipeline layout
- the pipeline layout must be destroyed before exit
Trait Implementations§
source§impl Debug for PipelineLayout
impl Debug for PipelineLayout
Auto Trait Implementations§
impl RefUnwindSafe for PipelineLayout
impl !Send for PipelineLayout
impl !Sync for PipelineLayout
impl Unpin for PipelineLayout
impl UnwindSafe for PipelineLayout
Blanket Implementations§
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.