Expand description
Contains APIs for ordering systems and executing them on a World
Modules
- A collection of run conditions that may be useful in any bevy app.
Structs
- A directed acyclic graph structure.
- New-typed
ThreadExecutor
Resource
that is used to run systems on the main thread - Runs the schedule using a thread pool. Non-conflicting systems can run in parallel.
- The next state of
State<S>
. - Stores configuration for a single generic node.
- A collection of systems, and the metadata and executor needed to run them in a certain order under certain conditions.
- Specifies miscellaneous settings for schedule construction.
- Metadata for a
Schedule
. - Error to denote that
Schedule::initialize
orSchedule::run
has not yet been called for this schedule. - A variant of
SingleThreadedExecutor
that callsapply_deferred
immediately after running each system. - Runs the schedule using a single thread.
- A finite-state machine whose transitions have associated schedules ([
OnEnter(state)
] and [OnExit(state)
]). - Event sent when any state transition of
S
happens. - Resource for controlling system stepping behavior
- Holds systems and conditions of a
Schedule
sorted in topological order (along with dependency information for multi-threaded execution). - A
SystemSet
grouping instances of the same function.
Enums
- Chain systems into dependencies
- Specifies how a
Schedule
will be run. - Specifies how schedule construction should respond to detecting a certain kind of issue.
- A collections of generic
NodeConfig
s. - Unique identifier for a system or system set stored in a
ScheduleGraph
. - Category of errors encountered during schedule construction.
Traits
- A system that determines if one or more scheduled systems should run.
- An object safe version of
Eq
. This trait is automatically implemented for any'static
type that implementsEq
. - Types that can convert into a
SystemConfigs
. - Types that can be converted into a
SystemSet
. - Types that can convert into a
SystemSetConfigs
. - A strongly-typed class of labels used to identify an [
Schedule
]. - Types that can define world-wide states in a finite-state machine.
- Types that identify logical groups of systems.
Functions
- Instructs the executor to call
System::apply_deferred
on the systems that have run but not applied theirDeferred
system parameters (likeCommands
) or other system buffers. - If a new state is queued in
NextState<S>
, this system: - Run the enter schedule (if it exists) for the current state.
Type Aliases
- Combines the outputs of two systems using the
&&
operator. - A type-erased run condition stored in a
Box
. - A shorthand for
Interned<dyn ScheduleLabel>
. - A shorthand for
Interned<dyn SystemSet>
. - Invokes
Not
with the output of another system. - Combines the outputs of two systems using the
||
operator. - Stores configuration for a single system.
- A collection of
SystemConfig
. - A
SystemSet
with scheduling metadata. - A collection of
SystemSetConfig
.
Derive Macros
- Derive macro generating an impl of the trait
ScheduleLabel
. - Derive macro generating an impl of the trait
SystemSet
.