[−][src]Enum rafx_api::RafxFence
A GPU -> CPU synchronization mechanism.
A fence can be in the following states:
- Unsubmitted - Initial state when created
- Incomplete - Once a command buffer is submitted, the fence is marked as incomplete
- Complete - The GPU can mark a fence as complete to signal completion of work.
The status of the fence returns to Unsubmitted when get_fence_status() is called while in a completed state. In other words, the Complete status can only be returned one time unless the fence is submitted again.
Fences must not be dropped if they are in use by the GPU.
Variants
Vk(RafxFenceVulkan)
Implementations
impl RafxFence
[src]
pub fn get_fence_status(&self) -> RafxResult<RafxFenceStatus>
[src]
Get the status of the fence. See RafxFenceStatus
The status of the fence returns to Unsubmitted when get_fence_status() is called while in a completed state. In other words, the Complete status can only be returned one time unless the fence is submitted again.
pub fn wait(&self) -> RafxResult<()>
[src]
Wait for the fence to be signaled as complete by the GPU
pub fn vk_fence(&self) -> Option<&RafxFenceVulkan>
[src]
Get the underlying vulkan API object. This provides access to any internally created vulkan objects.
Auto Trait Implementations
impl RefUnwindSafe for RafxFence
[src]
impl Send for RafxFence
[src]
impl Sync for RafxFence
[src]
impl Unpin for RafxFence
[src]
impl UnwindSafe for RafxFence
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Downcast for T where
T: Any,
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn as_any(&self) -> &(dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
impl<T> DowncastSync for T where
T: Send + Sync + Any,
T: Send + Sync + Any,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Resource for T where
T: Downcast + Send + Sync,
[src]
T: Downcast + Send + Sync,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
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]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,