Module schedule

Module schedule 

Source
Expand description

Contains APIs for ordering systems and executing them on a World

Re-exports§

pub use self::graph::GraphInfo;
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.
CompactNodeIdAndDirection
Compact storage of a NodeId and a Direction.
CompactNodeIdPair
Compact storage of a NodeId pair.
ConditionWithAccess
A BoxedCondition stored alongside the access returned from System::initialize.
Dag
A directed acyclic graph structure.
MainThreadExecutor
New-typed ThreadExecutor Resource that is used to run systems on the main thread
MultiThreadedExecutor
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.
SimpleExecutorDeprecated
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
SystemKey
A unique identifier for a system in a [ScheduleGraph].
SystemSchedule
Holds systems and conditions of a Schedule sorted in topological order (along with dependency information for multi_threaded execution).
SystemSetKey
A unique identifier for a system set in a [ScheduleGraph].
SystemSets
Container for system sets in a schedule.
SystemTypeSet
A SystemSet grouping instances of the same function.
SystemWithAccess
A ScheduleSystem stored alongside the access returned from System::initialize.
Systems
Container for systems in a schedule.

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.
NodeId
Unique identifier for a system or system set stored in a ScheduleGraph.
ReportCycles
Used to select the appropriate reporting function.
ScheduleBuildError
Category of errors encountered during Schedule::initialize.
ScheduleBuildWarning
Category of warnings encountered during Schedule::initialize.
ScheduleConfigs
Single or nested configurations for Schedulables.

Traits§

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.
SystemCondition
A system that determines if one or more scheduled systems should run.
SystemSet
System sets are tag-like labels that can be used to group systems together.

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.