[][src]Struct nobs_vkmem::Resource

pub struct Resource<'a> { /* fields omitted */ }

Generic builder for buffers and images

This builder can neither configure a buffer nor an image, but is useful to have when resources are created in a loop.

Exapmle

let mut allocator = vkmem::Allocator::new(pdevice.handle, device.handle);

let mut handles = vec![vk::NULL_HANDLE, vk::NULL_HANDLE, vk::NULL_HANDLE];
let mut builder = vkmem::Resource::new();
for h in handles.iter_mut() {
  builder = builder
    .new_buffer(h)
    .size(123)
    .devicelocal(true)
    .usage(vk::BUFFER_USAGE_TRANSFER_DST_BIT | vk::BUFFER_USAGE_STORAGE_BUFFER_BIT)
    .submit()
}
builder.bind(&mut allocator, vkmem::BindType::Scatter);

assert!(handles[0] != vk::NULL_HANDLE);
assert!(handles[1] != vk::NULL_HANDLE);
assert!(handles[2] != vk::NULL_HANDLE);

Methods

impl<'a> Resource<'a>[src]

pub fn new() -> Self[src]

pub fn new_buffer(self, handle: &'a mut u64) -> Buffer[src]

Starts configuration of a new buffer resource

The new builder will be initialized as in new

pub fn new_image(self, handle: &'a mut u64) -> Image[src]

Starts configuration of a new image resource

The new builder will be initialized as in new

pub fn bind(self, alloc: &mut Allocator, ty: BindType) -> Result<(), Error>[src]

Creates resources and binds them to the specified allocator

Auto Trait Implementations

impl<'a> !Send for Resource<'a>

impl<'a> !Sync for Resource<'a>

Blanket Implementations

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.