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§

AmbiguousSystemConflictsWarning
Error returned when there are ambiguous system conflicts detected.
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.
ConflictingSystems
Pairs of systems that conflict with each other along with the components they conflict on, which prevents them from running in parallel. If the component list is empty, the systems conflict on World access in general (e.g. one of them is exclusive, or both systems have Query<EntityMut>).
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.
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.
SystemTypeSetAmbiguityError
Error returned when calling SystemSets::check_type_set_ambiguity.
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.
ScheduleBuildError
Category of errors encountered during Schedule::initialize.
ScheduleBuildWarning
Category of warnings encountered during Schedule::initialize.
ScheduleCleanupPolicy
Policy to use when removing systems.
ScheduleConfigs
Single or nested configurations for Schedulables.
ScheduleError
Error returned from some Schedule methods

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.