Struct wgpu_hal::BindGroupDescriptor
source · pub struct BindGroupDescriptor<'a, A: Api> {
pub label: Label<'a>,
pub layout: &'a A::BindGroupLayout,
pub buffers: &'a [BufferBinding<'a, A>],
pub samplers: &'a [&'a A::Sampler],
pub textures: &'a [TextureBinding<'a, A>],
pub entries: &'a [BindGroupEntry],
pub acceleration_structures: &'a [&'a A::AccelerationStructure],
}
Expand description
BindGroup descriptor.
Valid usage:
. - entries
has to be sorted by ascending BindGroupEntry::binding
. - entries
has to have the same set of BindGroupEntry::binding
as layout
. - each entry has to be compatible with the layout
. - each entry’s BindGroupEntry::resource_index
is within range
of the corresponding resource array, selected by the relevant
BindGroupLayoutEntry
.
Fields§
§label: Label<'a>
§layout: &'a A::BindGroupLayout
§buffers: &'a [BufferBinding<'a, A>]
§samplers: &'a [&'a A::Sampler]
§textures: &'a [TextureBinding<'a, A>]
§entries: &'a [BindGroupEntry]
§acceleration_structures: &'a [&'a A::AccelerationStructure]
Trait Implementations§
Auto Trait Implementations§
impl<'a, A> Freeze for BindGroupDescriptor<'a, A>
impl<'a, A> RefUnwindSafe for BindGroupDescriptor<'a, A>where
<A as Api>::BindGroupLayout: RefUnwindSafe,
<A as Api>::Sampler: RefUnwindSafe,
<A as Api>::AccelerationStructure: RefUnwindSafe,
<A as Api>::Buffer: RefUnwindSafe,
<A as Api>::TextureView: RefUnwindSafe,
impl<'a, A> Send for BindGroupDescriptor<'a, A>where
<A as Api>::BindGroupLayout: Sync,
<A as Api>::Sampler: Sync,
<A as Api>::AccelerationStructure: Sync,
<A as Api>::Buffer: Sync,
<A as Api>::TextureView: Sync,
impl<'a, A> Sync for BindGroupDescriptor<'a, A>where
<A as Api>::BindGroupLayout: Sync,
<A as Api>::Sampler: Sync,
<A as Api>::AccelerationStructure: Sync,
<A as Api>::Buffer: Sync,
<A as Api>::TextureView: Sync,
impl<'a, A> Unpin for BindGroupDescriptor<'a, A>
impl<'a, A> UnwindSafe for BindGroupDescriptor<'a, A>where
<A as Api>::BindGroupLayout: RefUnwindSafe,
<A as Api>::Sampler: RefUnwindSafe,
<A as Api>::AccelerationStructure: RefUnwindSafe,
<A as Api>::Buffer: RefUnwindSafe,
<A as Api>::TextureView: RefUnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)