Struct vulkano::swapchain::PresentFuture[][src]

#[must_use = "Dropping this object will immediately block the thread until the GPU has finished processing the submission"]
pub struct PresentFuture<P, W> where
    P: GpuFuture
{ /* fields omitted */ }

Represents a swapchain image being presented on the screen.

Implementations

impl<P, W> PresentFuture<P, W> where
    P: GpuFuture
[src]

pub fn image_id(&self) -> usize[src]

Returns the index of the image in the list of images returned when creating the swapchain.

pub fn swapchain(&self) -> &Arc<Swapchain<W>>[src]

Returns the corresponding swapchain.

Trait Implementations

impl<P, W> DeviceOwned for PresentFuture<P, W> where
    P: GpuFuture
[src]

fn device(&self) -> &Arc<Device>[src]

Returns the device that owns Self.

impl<P, W> Drop for PresentFuture<P, W> where
    P: GpuFuture
[src]

fn drop(&mut self)[src]

Executes the destructor for this type. Read more

impl<P, W> GpuFuture for PresentFuture<P, W> where
    P: GpuFuture
[src]

fn cleanup_finished(&mut self)[src]

If possible, checks whether the submission has finished. If so, gives up ownership of the resources used by these submissions. Read more

unsafe fn build_submission(&self) -> Result<SubmitAnyBuilder<'_>, FlushError>[src]

Builds a submission that, if submitted, makes sure that the event represented by this GpuFuture will happen, and possibly contains extra elements (eg. a semaphore wait or an event wait) that makes the dependency with subsequent operations work. Read more

fn flush(&self) -> Result<(), FlushError>[src]

Flushes the future and submits to the GPU the actions that will permit this future to occur. Read more

unsafe fn signal_finished(&self)[src]

Sets the future to its “complete” state, meaning that it can safely be destroyed. Read more

fn queue_change_allowed(&self) -> bool[src]

Returns true if elements submitted after this future can be submitted to a different queue than the other returned by queue(). Read more

fn queue(&self) -> Option<Arc<Queue>>[src]

Returns the queue that triggers the event. Returns None if unknown or irrelevant. Read more

fn check_buffer_access(
    &self,
    buffer: &dyn BufferAccess,
    exclusive: bool,
    queue: &Queue
) -> Result<Option<(PipelineStages, AccessFlags)>, AccessCheckError>
[src]

Checks whether submitting something after this future grants access (exclusive or shared, depending on the parameter) to the given buffer on the given queue. Read more

fn check_image_access(
    &self,
    image: &dyn ImageAccess,
    layout: ImageLayout,
    exclusive: bool,
    queue: &Queue
) -> Result<Option<(PipelineStages, AccessFlags)>, AccessCheckError>
[src]

Checks whether submitting something after this future grants access (exclusive or shared, depending on the parameter) to the given image on the given queue. Read more

fn join<F>(self, other: F) -> JoinFuture<Self, F> where
    Self: Sized,
    F: GpuFuture
[src]

Joins this future with another one, representing the moment when both events have happened.

fn then_execute<Cb>(
    self,
    queue: Arc<Queue>,
    command_buffer: Cb
) -> Result<CommandBufferExecFuture<Self, Cb>, CommandBufferExecError> where
    Self: Sized,
    Cb: PrimaryCommandBuffer + 'static, 
[src]

Executes a command buffer after this future. Read more

fn then_execute_same_queue<Cb>(
    self,
    command_buffer: Cb
) -> Result<CommandBufferExecFuture<Self, Cb>, CommandBufferExecError> where
    Self: Sized,
    Cb: PrimaryCommandBuffer + 'static, 
[src]

Executes a command buffer after this future, on the same queue as the future. Read more

fn then_signal_semaphore(self) -> SemaphoreSignalFuture<Self> where
    Self: Sized
[src]

Signals a semaphore after this future. Returns another future that represents the signal. Read more

fn then_signal_semaphore_and_flush(
    self
) -> Result<SemaphoreSignalFuture<Self>, FlushError> where
    Self: Sized
[src]

Signals a semaphore after this future and flushes it. Returns another future that represents the moment when the semaphore is signalled. Read more

fn then_signal_fence(self) -> FenceSignalFuture<Self> where
    Self: Sized
[src]

Signals a fence after this future. Returns another future that represents the signal. Read more

fn then_signal_fence_and_flush(
    self
) -> Result<FenceSignalFuture<Self>, FlushError> where
    Self: Sized
[src]

Signals a fence after this future. Returns another future that represents the signal. Read more

fn then_swapchain_present<W>(
    self,
    queue: Arc<Queue>,
    swapchain: Arc<Swapchain<W>>,
    image_index: usize
) -> PresentFuture<Self, W> where
    Self: Sized
[src]

Presents a swapchain image after this future. Read more

fn then_swapchain_present_incremental<W>(
    self,
    queue: Arc<Queue>,
    swapchain: Arc<Swapchain<W>>,
    image_index: usize,
    present_region: PresentRegion
) -> PresentFuture<Self, W> where
    Self: Sized
[src]

Same as then_swapchain_present, except it allows specifying a present region. Read more

fn boxed(self) -> Box<dyn GpuFuture> where
    Self: Sized + 'static, 
[src]

Turn the current future into a Box<dyn GpuFuture>. Read more

Auto Trait Implementations

impl<P, W> RefUnwindSafe for PresentFuture<P, W> where
    P: RefUnwindSafe,
    W: RefUnwindSafe

impl<P, W> Send for PresentFuture<P, W> where
    P: Send,
    W: Send + Sync

impl<P, W> Sync for PresentFuture<P, W> where
    P: Sync,
    W: Send + Sync

impl<P, W> Unpin for PresentFuture<P, W> where
    P: Unpin

impl<P, W> UnwindSafe for PresentFuture<P, W> where
    P: UnwindSafe,
    W: RefUnwindSafe

Blanket Implementations

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

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> Content for T[src]

pub fn ref_from_ptr(*mut c_void, usize) -> Option<*mut T>[src]

Builds a pointer to this type from a raw pointer.

pub fn is_size_suitable(usize) -> bool[src]

Returns true if the size is suitable to store a type like this.

pub fn indiv_size() -> usize[src]

Returns the size of an individual element.

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

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

type Error = Infallible

The type returned in the event of a conversion error.

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

Performs the conversion.

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

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

The type returned in the event of a conversion error.

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

Performs the conversion.