Struct sierra::Device

source ·
#[repr(transparent)]
pub struct Device { /* private fields */ }
Expand description

Handle to abstract device that can execute graphics, compute and ray-tracing pipelines.

Implementations§

Returns Graphics associated with the device instance.

Returns weak reference to this device.

Creates buffer with uninitialized content.

Creates buffer with uninitialized content.

Creates static buffer pre-initialized with content from [data]. Implies MemoryUsage::Device.

Panics

Function will panic if specified buffer size does not equal data size. i.e. if info.size != std::mem::size_of(data).

Creates image with uninitialized content.

Creates view to an image.

Returns handle to newly created Fence. Fences are create in un-signaled state.

Returns handle to newly created Framebuffer.

Creates graphics pipeline.

Creates compute pipeline.

Creates pipeline layout.

Creates render pass.

Creates semaphore. Semaphores are created in unsignaled state.

Creates new shader module from shader’s code.

Creates surface for specified window.

Resets fences. All specified fences must be in signalled state. Fences are moved into unsignalled state.

Checks if fence is in signalled state.

Wait for fences to become signaled. If all is true - waits for all specified fences to become signaled. Otherwise waits for at least on of specified fences to become signaled. May return immediately if all fences are already signaled (or at least one is signaled if all == false). Fences are signaled by Queues. See Queue::submit.

Wait for whole device to become idle. That is, wait for all pending operations to complete. This is equivalent to calling Queue::wait_idle for all queues. Typically used only before device destruction.

Returns memory size requirements for accelelration structure build operations.

Creates acceleration structure.

Panics

This method may panic if Feature::RayTracing wasn’t enabled.

Returns buffers device address.

Returns device address of acceleration strucutre.

Creates ray-tracing pipeline.

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
This method tests for self and other values to be equal, and is used by ==.
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
This method tests for self and other values to be equal, and is used by ==.
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
This method tests for self and other values to be equal, and is used by ==.
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
This method tests for self and other values to be equal, and is used by ==.
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.