pub struct BufferMemoryBarrier2<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub src_stage_mask: PipelineStageFlags2,
pub src_access_mask: AccessFlags2,
pub dst_stage_mask: PipelineStageFlags2,
pub dst_access_mask: AccessFlags2,
pub src_queue_family_index: u32,
pub dst_queue_family_index: u32,
pub buffer: Buffer,
pub offset: DeviceSize,
pub size: DeviceSize,
/* private fields */
}Expand description
Native structure VkBufferMemoryBarrier2.
Fields§
§s_type: StructureTypeNative field sType.
p_next: *const c_voidNative field pNext.
src_stage_mask: PipelineStageFlags2Native field srcStageMask.
src_access_mask: AccessFlags2Native field srcAccessMask.
dst_stage_mask: PipelineStageFlags2Native field dstStageMask.
dst_access_mask: AccessFlags2Native field dstAccessMask.
src_queue_family_index: u32Native field srcQueueFamilyIndex.
dst_queue_family_index: u32Native field dstQueueFamilyIndex.
buffer: BufferNative field buffer.
offset: DeviceSizeNative field offset.
size: DeviceSizeNative field size.
Implementations§
Source§impl<'a> BufferMemoryBarrier2<'a>
impl<'a> BufferMemoryBarrier2<'a>
Sourcepub fn new() -> Self
pub fn new() -> Self
Construct the record with its canonical sType tag and default native state.
Sourcepub fn set_src_stage_mask(self, value: PipelineStageFlags2) -> Self
pub fn set_src_stage_mask(self, value: PipelineStageFlags2) -> Self
Set native field srcStageMask without native effects.
Sourcepub fn set_src_access_mask(self, value: AccessFlags2) -> Self
pub fn set_src_access_mask(self, value: AccessFlags2) -> Self
Set native field srcAccessMask without native effects.
Sourcepub fn set_dst_stage_mask(self, value: PipelineStageFlags2) -> Self
pub fn set_dst_stage_mask(self, value: PipelineStageFlags2) -> Self
Set native field dstStageMask without native effects.
Sourcepub fn set_dst_access_mask(self, value: AccessFlags2) -> Self
pub fn set_dst_access_mask(self, value: AccessFlags2) -> Self
Set native field dstAccessMask without native effects.
Sourcepub fn set_src_queue_family_index(self, value: u32) -> Self
pub fn set_src_queue_family_index(self, value: u32) -> Self
Set native field srcQueueFamilyIndex without native effects.
Sourcepub fn set_dst_queue_family_index(self, value: u32) -> Self
pub fn set_dst_queue_family_index(self, value: u32) -> Self
Set native field dstQueueFamilyIndex without native effects.
Sourcepub fn set_buffer(self, value: Buffer) -> Self
pub fn set_buffer(self, value: Buffer) -> Self
Set native field buffer without native effects.
Sourcepub fn set_offset(self, value: DeviceSize) -> Self
pub fn set_offset(self, value: DeviceSize) -> Self
Set native field offset without native effects.
Sourcepub fn set_size(self, value: DeviceSize) -> Self
pub fn set_size(self, value: DeviceSize) -> Self
Set native field size without native effects.
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.