pub struct Submission { /* private fields */ }Expand description
A finalized graph execution plan.
Submission owns the remaining commands of a Graph after Graph::finalize has ended the
graph-building phase. It supports two execution styles:
Submission::queue_submitfor a one-shot submission path.Submission::recordwith aRecordSelectionfor explicit command-buffer recording, returning aRecording.
Implementations§
Source§impl Submission
impl Submission
Sourcepub fn is_empty(&self) -> bool
pub fn is_empty(&self) -> bool
Returns true when this submission contains no more commands to record.
Sourcepub fn resource<N>(&self, resource_node: N) -> &N::Resourcewhere
N: Node,
pub fn resource<N>(&self, resource_node: N) -> &N::Resourcewhere
N: Node,
Returns a borrow of the original Vulkan resource (buffer, image or acceleration structure) which the given node represents.
Sourcepub fn queue_submit<P>(
self,
resource_pool: &mut P,
queue_family_index: u32,
queue_index: u32,
) -> Result<Fence, DriverError>
pub fn queue_submit<P>( self, resource_pool: &mut P, queue_family_index: u32, queue_index: u32, ) -> Result<Fence, DriverError>
Records and submits all remaining commands using an internally allocated command buffer.
This legacy submit path only supports binary semaphore behavior. All wait and signal
values must be 0, and wait and signal stage masks must be ALL_COMMANDS or NONE.
Sourcepub fn record<'p, 's, P, Cb>(
self,
resource_pool: &'p mut P,
cmd_buf: Cb,
selection: impl Into<RecordSelection<'s>>,
) -> Result<Recording<'p, P, Cb>, DriverError>
pub fn record<'p, 's, P, Cb>( self, resource_pool: &'p mut P, cmd_buf: Cb, selection: impl Into<RecordSelection<'s>>, ) -> Result<Recording<'p, P, Cb>, DriverError>
Records any remaining graph commands into cmd_buf and returns a Recording.
When selection is RecordSelection::Nodes, nodes are processed sequentially in the
provided slice order and each step mutates the remaining submission state.