pub struct Queue<B: Backend> { /* private fields */ }
Expand description
Command queue wrapper.
Implementations§
Source§impl<B> Queue<B>where
B: Backend,
impl<B> Queue<B>where
B: Backend,
Sourcepub fn assert_family_owner<C>(&self, family: &Family<B, C>)
pub fn assert_family_owner<C>(&self, family: &Family<B, C>)
Assert specified family is owner.
Sourcepub fn assert_device_owner(&self, device: &Device<B>)
pub fn assert_device_owner(&self, device: &Device<B>)
Assert specified device is owner.
Sourcepub fn assert_instance_owner(&self, instance: &Instance<B>)
pub fn assert_instance_owner(&self, instance: &Instance<B>)
Assert specified instance is owner.
Source§impl<B> Queue<B>where
B: Backend,
impl<B> Queue<B>where
B: Backend,
Sourcepub fn raw(&mut self) -> &mut impl CommandQueue<B>
pub fn raw(&mut self) -> &mut impl CommandQueue<B>
Get raw command queue.
Sourcepub fn next_epoch(&self) -> u64
pub fn next_epoch(&self) -> u64
Returns next queue epoch.
Sourcepub unsafe fn submit<'a>(
&mut self,
submissions: impl IntoIterator<Item = Submission<B, impl IntoIterator<Item = (&'a (impl Borrow<B::Semaphore> + 'a), PipelineStage)>, impl IntoIterator<Item = impl Submittable<B>>, impl IntoIterator<Item = &'a (impl Borrow<B::Semaphore> + 'a)>>>,
fence: Option<&mut Fence<B>>,
)
pub unsafe fn submit<'a>( &mut self, submissions: impl IntoIterator<Item = Submission<B, impl IntoIterator<Item = (&'a (impl Borrow<B::Semaphore> + 'a), PipelineStage)>, impl IntoIterator<Item = impl Submittable<B>>, impl IntoIterator<Item = &'a (impl Borrow<B::Semaphore> + 'a)>>>, fence: Option<&mut Fence<B>>, )
Submit commands to the queue of the family. Fence must be submitted.
Sourcepub unsafe fn submit_raw_fence<'a>(
&mut self,
submissions: impl IntoIterator<Item = Submission<B, impl IntoIterator<Item = (&'a (impl Borrow<B::Semaphore> + 'a), PipelineStage)>, impl IntoIterator<Item = impl Submittable<B>>, impl IntoIterator<Item = &'a (impl Borrow<B::Semaphore> + 'a)>>>,
fence: Option<&B::Fence>,
)
pub unsafe fn submit_raw_fence<'a>( &mut self, submissions: impl IntoIterator<Item = Submission<B, impl IntoIterator<Item = (&'a (impl Borrow<B::Semaphore> + 'a), PipelineStage)>, impl IntoIterator<Item = impl Submittable<B>>, impl IntoIterator<Item = &'a (impl Borrow<B::Semaphore> + 'a)>>>, fence: Option<&B::Fence>, )
Submit commands to the queue of the family. Fence must be submitted. This version uses raw fence and doesn’t increment epoch.
Sourcepub fn wait_idle(&self) -> Result<(), OutOfMemory>
pub fn wait_idle(&self) -> Result<(), OutOfMemory>
Wait for queue to finish all pending commands.
Trait Implementations§
Auto Trait Implementations§
impl<B> Freeze for Queue<B>
impl<B> RefUnwindSafe for Queue<B>
impl<B> Send for Queue<B>
impl<B> Sync for Queue<B>
impl<B> Unpin for Queue<B>
impl<B> UnwindSafe for Queue<B>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more