pub struct UnsafeDescriptorSet<P = StandardDescriptorSetAlloc> { /* private fields */ }
Expand description

Low-level descriptor set.

This descriptor set does not keep track of synchronization, nor does it store any information on what resources have been written to each descriptor.

Implementations§

source§

impl UnsafeDescriptorSet

source

pub fn new<A>( allocator: &A, layout: &Arc<DescriptorSetLayout>, variable_descriptor_count: u32 ) -> Result<UnsafeDescriptorSet<A::Alloc>, Validated<VulkanError>>where A: DescriptorSetAllocator + ?Sized,

Allocates a new descriptor set and returns it.

source§

impl<P> UnsafeDescriptorSet<P>where P: DescriptorSetAlloc,

source

pub fn alloc(&self) -> &P

Returns the allocation of this descriptor set.

source

pub fn pool(&self) -> &DescriptorPool

Returns the descriptor pool that the descriptor set was allocated from.

source

pub fn layout(&self) -> &Arc<DescriptorSetLayout>

Returns the layout of this descriptor set.

source

pub fn variable_descriptor_count(&self) -> u32

Returns the variable descriptor count that this descriptor set was allocated with.

source

pub unsafe fn update( &mut self, descriptor_writes: &[WriteDescriptorSet], descriptor_copies: &[CopyDescriptorSet] ) -> Result<(), Box<ValidationError>>

Updates the descriptor set with new values.

Safety
  • The resources in descriptor_writes and descriptor_copies must be kept alive for as long as self is in use.
  • The descriptor set must not be in use by the device, or be recorded to a command buffer as part of a bind command.

Trait Implementations§

source§

impl<P: Debug> Debug for UnsafeDescriptorSet<P>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<P> DeviceOwned for UnsafeDescriptorSet<P>where P: DescriptorSetAlloc,

source§

fn device(&self) -> &Arc<Device>

Returns the device that owns self.
source§

impl<P> Hash for UnsafeDescriptorSet<P>where P: DescriptorSetAlloc,

source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl<P> PartialEq for UnsafeDescriptorSet<P>where P: DescriptorSetAlloc,

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<P> VulkanObject for UnsafeDescriptorSet<P>where P: DescriptorSetAlloc,

§

type Handle = DescriptorSet

The type of the object.
source§

fn handle(&self) -> Self::Handle

Returns the raw Vulkan handle of the object.
source§

impl<P> Eq for UnsafeDescriptorSet<P>where P: DescriptorSetAlloc,

Auto Trait Implementations§

§

impl<P> RefUnwindSafe for UnsafeDescriptorSet<P>where P: RefUnwindSafe,

§

impl<P> Send for UnsafeDescriptorSet<P>where P: Send,

§

impl<P> Sync for UnsafeDescriptorSet<P>where P: Sync,

§

impl<P> Unpin for UnsafeDescriptorSet<P>where P: Unpin,

§

impl<P> UnwindSafe for UnsafeDescriptorSet<P>where P: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> DeviceOwnedVulkanObject for Twhere T: DeviceOwned + VulkanObject,

source§

fn set_debug_utils_object_name( &self, object_name: Option<&str> ) -> Result<(), VulkanError>

Assigns a human-readable name to the object for debugging purposes. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.