pub struct RenderPass {
pub name: String,
pub pass_type: PassType,
pub queue: QueueAffinity,
pub condition: PassCondition,
pub resolution: ResolutionScale,
pub inputs: Vec<ResourceHandle>,
pub outputs: Vec<ResourceHandle>,
pub input_names: Vec<String>,
pub output_names: Vec<String>,
pub explicit_deps: Vec<String>,
pub has_side_effects: bool,
pub tag: Option<String>,
}Expand description
A named node in the render graph representing a render pass.
Fields§
§name: String§pass_type: PassType§queue: QueueAffinity§condition: PassCondition§resolution: ResolutionScale§inputs: Vec<ResourceHandle>Resource handles this pass reads.
outputs: Vec<ResourceHandle>Resource handles this pass writes.
input_names: Vec<String>Names of input resources (for serialization / debug).
output_names: Vec<String>Names of output resources.
explicit_deps: Vec<String>Explicit ordering dependencies (pass names that must run before this).
has_side_effects: boolWhether this pass has side effects (e.g., writes to swapchain).
tag: Option<String>User-attached tag for grouping.
Implementations§
Source§impl RenderPass
impl RenderPass
pub fn new(name: &str, pass_type: PassType) -> Self
pub fn with_queue(self, queue: QueueAffinity) -> Self
pub fn with_condition(self, condition: PassCondition) -> Self
pub fn with_resolution(self, scale: ResolutionScale) -> Self
pub fn with_side_effects(self) -> Self
pub fn with_tag(self, tag: &str) -> Self
pub fn add_input(&mut self, handle: ResourceHandle, name: &str)
pub fn add_output(&mut self, handle: ResourceHandle, name: &str)
pub fn depends_on(&mut self, pass_name: &str)
Sourcepub fn is_async_compute_candidate(&self) -> bool
pub fn is_async_compute_candidate(&self) -> bool
True if this pass can potentially run on the async compute queue.
Trait Implementations§
Source§impl Clone for RenderPass
impl Clone for RenderPass
Source§fn clone(&self) -> RenderPass
fn clone(&self) -> RenderPass
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for RenderPass
impl RefUnwindSafe for RenderPass
impl Send for RenderPass
impl Sync for RenderPass
impl Unpin for RenderPass
impl UnsafeUnpin for RenderPass
impl UnwindSafe for RenderPass
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn 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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
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.Source§fn as_any(&self) -> &(dyn Any + 'static)
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.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
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.