[−][src]Struct rendy_descriptor::DescriptorAllocator
Descriptor allocator. Can be used to allocate descriptor sets for any layout.
Methods
impl<B> DescriptorAllocator<B> where
B: Backend,
[src]
B: Backend,
pub fn new() -> Self
[src]
Create new allocator instance.
pub unsafe fn dispose(self, device: &B::Device)
[src]
Destroy allocator instance. All sets allocated from this allocator become invalid.
pub unsafe fn allocate(
&mut self,
device: &B::Device,
layout: &B::DescriptorSetLayout,
layout_ranges: DescriptorRanges,
count: u32,
extend: &mut impl Extend<DescriptorSet<B>>
) -> Result<(), OutOfMemory>
[src]
&mut self,
device: &B::Device,
layout: &B::DescriptorSetLayout,
layout_ranges: DescriptorRanges,
count: u32,
extend: &mut impl Extend<DescriptorSet<B>>
) -> Result<(), OutOfMemory>
Allocate descriptor set with specified layout.
DescriptorRanges
must match descriptor numbers of the layout.
DescriptorRanges
can be constructed from bindings that were used
to create layout instance.
pub unsafe fn free(
&mut self,
all_sets: impl IntoIterator<Item = DescriptorSet<B>>
)
[src]
&mut self,
all_sets: impl IntoIterator<Item = DescriptorSet<B>>
)
Free descriptor sets.
Safety
None of descriptor sets can be refernced in any pending command buffers. All command buffers where at least one of descriptor sets referenced move to invalid state.
pub unsafe fn cleanup(&mut self, device: &B::Device)
[src]
Perform cleanup to allow resources reuse.
Trait Implementations
impl<B: Debug + Backend> Debug for DescriptorAllocator<B>
[src]
Auto Trait Implementations
impl<B> Unpin for DescriptorAllocator<B> where
<B as Backend>::DescriptorPool: Unpin,
<B as Backend>::DescriptorSet: Unpin,
<B as Backend>::DescriptorPool: Unpin,
<B as Backend>::DescriptorSet: Unpin,
impl<B> Sync for DescriptorAllocator<B> where
<B as Backend>::DescriptorPool: Sync,
<B as Backend>::DescriptorSet: Sync,
<B as Backend>::DescriptorPool: Sync,
<B as Backend>::DescriptorSet: Sync,
impl<B> Send for DescriptorAllocator<B> where
<B as Backend>::DescriptorPool: Send,
<B as Backend>::DescriptorSet: Send,
<B as Backend>::DescriptorPool: Send,
<B as Backend>::DescriptorSet: Send,
impl<B> UnwindSafe for DescriptorAllocator<B> where
<B as Backend>::DescriptorPool: UnwindSafe,
<B as Backend>::DescriptorSet: UnwindSafe,
<B as Backend>::DescriptorPool: UnwindSafe,
<B as Backend>::DescriptorSet: UnwindSafe,
impl<B> RefUnwindSafe for DescriptorAllocator<B> where
<B as Backend>::DescriptorPool: RefUnwindSafe,
<B as Backend>::DescriptorSet: RefUnwindSafe,
<B as Backend>::DescriptorPool: RefUnwindSafe,
<B as Backend>::DescriptorSet: RefUnwindSafe,
Blanket Implementations
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,