Module schedule

Source
Expand description

Contains APIs for ordering systems and executing them on a World

Re-exports§

pub use self::graph::NodeId;
pub use crate::label::DynEq;

Modules§

common_conditions
A collection of run conditions that may be useful in any bevy app.
graph
An implementation of a graph data structure.
passes
Included optional schedule build passes.

Structs§

AnonymousSet
A SystemSet implicitly created when using Schedule::add_systems or Schedule::configure_sets.
ApplyDeferred
A special System that instructs the executor to call System::apply_deferred on the systems that have run but not applied their Deferred system parameters (like Commands) or other system buffers.
Dag
A directed acyclic graph structure.
MainThreadExecutorstd
New-typed ThreadExecutor Resource that is used to run systems on the main thread
MultiThreadedExecutorstd
Runs the schedule using a thread pool. Non-conflicting systems can run in parallel.
Schedule
A collection of systems, and the metadata and executor needed to run them in a certain order under certain conditions.
ScheduleBuildSettings
Specifies miscellaneous settings for schedule construction.
ScheduleConfig
Stores configuration for a single generic node (a system or a system set)
ScheduleGraph
Metadata for a Schedule.
ScheduleNotInitialized
Error to denote that Schedule::initialize or Schedule::run has not yet been called for this schedule.
Schedules
Resource that stores Schedules mapped to ScheduleLabels excluding the current running Schedule.
SimpleExecutor
A variant of SingleThreadedExecutor that calls apply_deferred immediately after running each system.
SingleThreadedExecutor
Runs the schedule using a single thread.
Stepping
Resource for controlling system stepping behavior
SystemNode
A ScheduleSystem stored in a ScheduleGraph.
SystemSchedule
Holds systems and conditions of a Schedule sorted in topological order (along with dependency information for multi_threaded execution).
SystemTypeSet
A SystemSet grouping instances of the same function.

Enums§

Chain
Chain systems into dependencies
ExecutorKind
Specifies how a Schedule will be run.
LogLevel
Specifies how schedule construction should respond to detecting a certain kind of issue.
ReportCycles
Used to select the appropriate reporting function.
ScheduleBuildError
Category of errors encountered during schedule construction.
ScheduleConfigs
Single or nested configurations for Schedulables.

Constants§

apply_deferredDeprecated
See ApplyDeferred.

Traits§

Condition
A system that determines if one or more scheduled systems should run.
IntoScheduleConfigs
Types that can convert into a ScheduleConfigs.
IntoSystemSet
Types that can be converted into a SystemSet.
Schedulable
Stores data to differentiate different schedulable structs.
ScheduleBuildPass
A pass for modular modification of the dependency graph.
ScheduleLabel
A strongly-typed class of labels used to identify a Schedule.
SystemSet
Types that identify logical groups of systems.

Type Aliases§

And
Combines the outputs of two systems using the && operator.
BoxedCondition
A type-erased run condition stored in a Box.
InternedScheduleLabel
A shorthand for Interned<dyn ScheduleLabel>.
InternedSystemSet
A shorthand for Interned<dyn SystemSet>.
Nand
Combines and inverts the outputs of two systems using the && and ! operators.
Nor
Combines and inverts the outputs of two systems using the && and ! operators.
NotSystem
Invokes Not with the output of another system.
Or
Combines the outputs of two systems using the || operator.
Xnor
Combines and inverts the outputs of two systems using the ^ and ! operators.
Xor
Combines the outputs of two systems using the ^ operator.

Derive Macros§

ScheduleLabel
Derive macro generating an impl of the trait ScheduleLabel.
SystemSet
Derive macro generating an impl of the trait SystemSet.