pub struct IndirectCommandsLayoutTokenNV<'a> {Show 15 fields
pub s_type: StructureType,
pub p_next: *const c_void,
pub token_type: IndirectCommandsTokenTypeNV,
pub stream: u32,
pub offset: u32,
pub vertex_binding_unit: u32,
pub vertex_dynamic_stride: Bool32,
pub pushconstant_pipeline_layout: PipelineLayout,
pub pushconstant_shader_stage_flags: ShaderStageFlags,
pub pushconstant_offset: u32,
pub pushconstant_size: u32,
pub indirect_state_flags: IndirectStateFlagsNV,
pub index_type_count: u32,
pub p_index_types: *const IndexType,
pub p_index_type_values: *const u32,
/* private fields */
}Expand description
Native structure VkIndirectCommandsLayoutTokenNV.
Fields§
§s_type: StructureTypeNative field sType.
p_next: *const c_voidNative field pNext.
token_type: IndirectCommandsTokenTypeNVNative field tokenType.
stream: u32Native field stream.
offset: u32Native field offset.
vertex_binding_unit: u32Native field vertexBindingUnit.
vertex_dynamic_stride: Bool32Native field vertexDynamicStride.
pushconstant_pipeline_layout: PipelineLayoutNative field pushconstantPipelineLayout.
pushconstant_shader_stage_flags: ShaderStageFlagsNative field pushconstantShaderStageFlags.
pushconstant_offset: u32Native field pushconstantOffset.
pushconstant_size: u32Native field pushconstantSize.
indirect_state_flags: IndirectStateFlagsNVNative field indirectStateFlags.
index_type_count: u32Native field indexTypeCount.
p_index_types: *const IndexTypeNative field pIndexTypes.
p_index_type_values: *const u32Native field pIndexTypeValues.
Implementations§
Source§impl<'a> IndirectCommandsLayoutTokenNV<'a>
impl<'a> IndirectCommandsLayoutTokenNV<'a>
Sourcepub fn new() -> Self
pub fn new() -> Self
Construct the record with its canonical sType tag and default native state.
Sourcepub fn set_token_type(self, value: IndirectCommandsTokenTypeNV) -> Self
pub fn set_token_type(self, value: IndirectCommandsTokenTypeNV) -> Self
Set native field tokenType without native effects.
Sourcepub fn set_stream(self, value: u32) -> Self
pub fn set_stream(self, value: u32) -> Self
Set native field stream without native effects.
Sourcepub fn set_offset(self, value: u32) -> Self
pub fn set_offset(self, value: u32) -> Self
Set native field offset without native effects.
Sourcepub fn set_vertex_binding_unit(self, value: u32) -> Self
pub fn set_vertex_binding_unit(self, value: u32) -> Self
Set native field vertexBindingUnit without native effects.
Sourcepub fn set_vertex_dynamic_stride(self, value: Bool32) -> Self
pub fn set_vertex_dynamic_stride(self, value: Bool32) -> Self
Set native field vertexDynamicStride without native effects.
Sourcepub fn set_pushconstant_pipeline_layout(self, value: PipelineLayout) -> Self
pub fn set_pushconstant_pipeline_layout(self, value: PipelineLayout) -> Self
Set native field pushconstantPipelineLayout without native effects.
Sourcepub fn set_pushconstant_shader_stage_flags(
self,
value: ShaderStageFlags,
) -> Self
pub fn set_pushconstant_shader_stage_flags( self, value: ShaderStageFlags, ) -> Self
Set native field pushconstantShaderStageFlags without native effects.
Sourcepub fn set_pushconstant_offset(self, value: u32) -> Self
pub fn set_pushconstant_offset(self, value: u32) -> Self
Set native field pushconstantOffset without native effects.
Sourcepub fn set_pushconstant_size(self, value: u32) -> Self
pub fn set_pushconstant_size(self, value: u32) -> Self
Set native field pushconstantSize without native effects.
Sourcepub fn set_indirect_state_flags(self, value: IndirectStateFlagsNV) -> Self
pub fn set_indirect_state_flags(self, value: IndirectStateFlagsNV) -> Self
Set native field indirectStateFlags without native effects.
Sourcepub fn set_index_type_count(self, value: u32) -> Self
pub fn set_index_type_count(self, value: u32) -> Self
Set native count indexTypeCount directly without checking associated pointer extents.
Use the borrowed array helpers to derive matching storage and counts together.
Direct count edits support null-query/dynamic-state paths and remain a
native-call validity obligation, including after earlier borrowed setters.
Sourcepub fn set_index_types(
self,
index_types: &'a [IndexType],
index_type_values: &'a [u32],
) -> Result<Self, ConstructionError>
pub fn set_index_types( self, index_types: &'a [IndexType], index_type_values: &'a [u32], ) -> Result<Self, ConstructionError>
Borrow parallel arrays sharing native indexTypeCount. Optional arrays may be null.
Mutable arrays retain exclusive borrows of initialized output storage.
This checks lengths only; native valid usage and later raw edits remain caller obligations.
§Errors
Returns a construction error for unequal lengths or native count overflow.
Sourcepub fn push_next<T: Extends<Self>>(
self,
next: &'a mut T,
) -> Result<Self, ConstructionError>
pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>
Prepend one registry-compatible node, retaining its exclusive borrow.
The node must have a null p_next and both headers must have canonical tags.
Existing links are never traversed and remain written after the borrow ends.
Type compatibility does not establish enabled extensions or Vulkan valid usage.
§Errors
Returns a construction error for a changed structure tag or already-linked node.