Trait legion::systems::Runnable [−][src]
Trait describing a schedulable type. This is implemented by System
Required methods
fn name(&self) -> Option<&SystemId>
[src]
Gets the name of the system.
fn reads(&self) -> (&[ResourceTypeId], &[ComponentTypeId])
[src]
Gets the resources and component types read by the system.
fn writes(&self) -> (&[ResourceTypeId], &[ComponentTypeId])
[src]
Gets the resources and component types written by the system.
fn prepare(&mut self, world: &World)
[src]
Prepares the system for execution against a world.
fn accesses_archetypes(&self) -> &ArchetypeAccess
[src]
Gets the set of archetypes the system will access when run, as determined when the system was last prepared.
unsafe fn run_unsafe(&mut self, world: &World, resources: &UnsafeResources)
[src]
Runs the system.
Safety
The shared references to world and resources may result in unsound mutable aliasing if other code
is accessing the same components or resources as this system. Prefer to use run
when possible.
Additionally, systems which are !Sync should never be invoked on a different thread to that which owns the resources collection passed into this function.
fn command_buffer_mut(&mut self, world: WorldId) -> Option<&mut CommandBuffer>
[src]
Gets the system’s command buffer.
Provided methods
Loading content...Trait Implementations
Implementors
impl<R, Q, F> Runnable for System<R, Q, F> where
R: for<'a> ResourceSet<'a>,
Q: QuerySet,
F: SystemFn<R, Q>,
[src]
R: for<'a> ResourceSet<'a>,
Q: QuerySet,
F: SystemFn<R, Q>,