Struct wgpu_core::binding_model::BindGroupLayout
source · pub struct BindGroupLayout {
pub(crate) raw: ManuallyDrop<Box<dyn DynBindGroupLayout>>,
pub(crate) device: Arc<Device>,
pub(crate) entries: EntryMap,
pub(crate) origin: Origin,
pub(crate) exclusive_pipeline: OnceLock<ExclusivePipeline>,
pub(crate) binding_count_validator: BindingTypeMaxCountValidator,
pub(crate) label: String,
}
Expand description
Bind group layout.
Fields§
§raw: ManuallyDrop<Box<dyn DynBindGroupLayout>>
§device: Arc<Device>
§entries: EntryMap
§origin: Origin
It is very important that we know if the bind group comes from the BGL pool.
If it does, then we need to remove it from the pool when we drop it.
We cannot unconditionally remove from the pool, as BGLs that don’t come from the pool (derived BGLs) must not be removed.
exclusive_pipeline: OnceLock<ExclusivePipeline>
§binding_count_validator: BindingTypeMaxCountValidator
§label: String
The label
from the descriptor used to create the resource.
Implementations§
source§impl BindGroupLayout
impl BindGroupLayout
pub(crate) fn raw(&self) -> &dyn DynBindGroupLayout
Trait Implementations§
source§impl Debug for BindGroupLayout
impl Debug for BindGroupLayout
source§impl Drop for BindGroupLayout
impl Drop for BindGroupLayout
source§impl Labeled for BindGroupLayout
impl Labeled for BindGroupLayout
source§fn label(&self) -> &str
fn label(&self) -> &str
Returns a string identifying this resource for logging and errors. Read more
fn error_ident(&self) -> ResourceErrorIdent
source§impl ParentDevice for BindGroupLayout
impl ParentDevice for BindGroupLayout
source§impl ResourceType for BindGroupLayout
impl ResourceType for BindGroupLayout
source§impl StorageItem for BindGroupLayout
impl StorageItem for BindGroupLayout
type Marker = BindGroupLayout
Auto Trait Implementations§
impl !Freeze for BindGroupLayout
impl !RefUnwindSafe for BindGroupLayout
impl Send for BindGroupLayout
impl Sync for BindGroupLayout
impl Unpin for BindGroupLayout
impl !UnwindSafe for BindGroupLayout
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