pub struct RafxPresentableFrame { /* private fields */ }
Expand description

Represents an acquired image from a swapchain. It can move between threads and be sumitted by any thread. The swapchain helper will not provide another image until this one is presented.

To ease error handling, the swapchain may be submitted with an error. This error will be returned on the next attempt to acquire a swapchain image (i.e. the main thread).

Implementations§

source§

impl RafxPresentableFrame

source

pub fn rotating_frame_index(&self) -> usize

An index that starts at 0 on the first present and increments every frame, wrapping back to 0 after each swapchain image has been presented once. (See image_count on RafxSwapchainHelper). WARNING: This is not always the returned swapchain image. Swapchain images may be acquired in any order.

source

pub fn incrementing_frame_index(&self) -> usize

source

pub fn swapchain_texture(&self) -> &RafxTexture

Returns the acquired swapchain image

source

pub fn swapchain(&self) -> &Arc<Mutex<RafxSwapchain>>

Returns the swapchain. The swapchain helper code generally assumes ownership/management of the swapchain. Messing with it may invalidate assumptions in the swapchain helper code, so mutating operations on it are not recommended

source

pub fn present( self, queue: &RafxQueue, command_buffers: &[&RafxCommandBuffer] ) -> RafxResult<RafxPresentSuccessResult>

Submits the given command buffers and schedules the swapchain image to be presented after their completion

source

pub fn present_with_error(self, queue: &RafxQueue, error: RafxError)

Presents the current swapchain image and returns the given error during the next image acquisition attempt

source

pub fn do_present( &mut self, queue: &RafxQueue, command_buffers: &[&RafxCommandBuffer] ) -> RafxResult<RafxPresentSuccessResult>

Trait Implementations§

source§

impl Drop for RafxPresentableFrame

source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where 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 T
where 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 T
where 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.
source§

impl<T> Resource for T
where T: Downcast + Send + Sync,