Struct bevy::ecs::schedule::SystemStage
[−]pub struct SystemStage { /* private fields */ }
Expand description
Stores and executes systems. Execution order is not defined unless explicitly specified;
see SystemDescriptor
documentation.
Implementations
impl SystemStage
impl SystemStage
pub fn new(
executor: Box<dyn ParallelSystemExecutor + 'static, Global>
) -> SystemStage
pub fn single<Params>(system: impl IntoSystemDescriptor<Params>) -> SystemStage
pub fn single_threaded() -> SystemStage
pub fn parallel() -> SystemStage
pub fn get_executor<T>(&self) -> Option<&T> where
T: ParallelSystemExecutor,
pub fn get_executor_mut<T>(&mut self) -> Option<&mut T> where
T: ParallelSystemExecutor,
pub fn set_executor(
&mut self,
executor: Box<dyn ParallelSystemExecutor + 'static, Global>
)
pub fn with_system<Params>(
self,
system: impl IntoSystemDescriptor<Params>
) -> SystemStage
pub fn add_system<Params>(
&mut self,
system: impl IntoSystemDescriptor<Params>
) -> &mut SystemStage
pub fn apply_buffers(&mut self, world: &mut World)
pub fn set_apply_buffers(&mut self, apply_buffers: bool)
pub fn parallel_systems(&self) -> &[impl SystemContainer]
pub fn parallel_systems(&self) -> &[impl SystemContainer]
Topologically sorted parallel systems.
Note that systems won’t be fully-formed until the stage has been run at least once.
pub fn exclusive_at_start_systems(&self) -> &[impl SystemContainer]
pub fn exclusive_at_start_systems(&self) -> &[impl SystemContainer]
Topologically sorted exclusive systems that want to be run at the start of the stage.
Note that systems won’t be fully-formed until the stage has been run at least once.
pub fn exclusive_at_end_systems(&self) -> &[impl SystemContainer]
pub fn exclusive_at_end_systems(&self) -> &[impl SystemContainer]
Topologically sorted exclusive systems that want to be run at the end of the stage.
Note that systems won’t be fully-formed until the stage has been run at least once.
pub fn exclusive_before_commands_systems(&self) -> &[impl SystemContainer]
pub fn exclusive_before_commands_systems(&self) -> &[impl SystemContainer]
Topologically sorted exclusive systems that want to be run after parallel systems but before the application of their command buffers.
Note that systems won’t be fully-formed until the stage has been run at least once.
pub fn with_system_set(self, system_set: SystemSet) -> SystemStage
pub fn add_system_set(&mut self, system_set: SystemSet) -> &mut SystemStage
pub fn with_run_criteria<Param, S>(self, system: S) -> SystemStage where
S: IntoSystem<(), ShouldRun, Param>,
pub fn set_run_criteria<Param, S>(&mut self, system: S) -> &mut SystemStage where
S: IntoSystem<(), ShouldRun, Param>,
pub fn with_system_run_criteria(
self,
run_criteria: RunCriteriaDescriptor
) -> SystemStage
pub fn add_system_run_criteria(
&mut self,
run_criteria: RunCriteriaDescriptor
) -> &mut SystemStage
Trait Implementations
impl Stage for SystemStage
impl Stage for SystemStage
Auto Trait Implementations
impl !RefUnwindSafe for SystemStage
impl Send for SystemStage
impl Sync for SystemStage
impl Unpin for SystemStage
impl !UnwindSafe for SystemStage
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘNotable traits for Box<F, A>impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘNotable traits for Box<F, A>impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;
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
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn as_any(&self) -> &(dyn Any + 'static)
pub 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. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub 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. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
fn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;
sourcefn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
fn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T> where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
pub fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
where
S: Into<Dispatch>,
T: Future, type Output = <T as Future>::Output;
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
fn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T> where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more