Crate specs [−] [src]
SPECS Parallel ECS
This library provides an ECS variant designed for parallel execution and convenient usage. It is highly flexible when it comes to actual component data and the way it is stored and accessed.
Structs
BitSet |
A |
BitSetAnd |
|
CreateEntityIter |
Entity creation iterator. Will yield new empty entities infinitely. Useful for bulk entity construction, since the locks are only happening once. |
DynamicEntityIter |
A custom entity iterator for dynamically added entities. |
Entity |
|
EntityBuilder |
Helper builder for entities. |
EntityIter |
A custom entity iterator. Needed because the world doesn't really store entities directly, but rather has just a vector of Index -> Generation. |
FetchArg |
System fetch-time argument. The fetch is executed at the start of the run.
It contains a subset of |
Generation |
Index generation. When a new entity is placed at an old index,
it bumps the |
HashMapStorage |
HashMap-based storage. Best suited for rare components. |
Planner |
System execution planner. Allows running systems via closures, distributes the load in parallel using a thread pool. |
RunArg |
System closure run-time argument. |
VecStorage |
Vec-based storage, stores the generations of the data in order to match with given entities. Supposed to have maximum performance for the components mostly present in entities. |
World |
The |
Traits
BitSetLike |
A generic interface for |
Component |
Abstract component type. Doesn't have to be Copy or even Clone. |
Storage |
Typed component storage trait. |
StorageBase |
Base trait for a component storage that is used as a trait object. Doesn't depend on the actual component type. |
UnprotectedStorage |
Used by the framework to quickly join componets |
Type Definitions
Index |
|