-multithreading jobs dependencies:

*system has arrays of read only and modified components
 *new attribute "readonly" usable for variables which should be visible as read only. Const can be used instead for enable checks by compiler.
 *JobGroup was added. JobGroup contain array of jobs and array of dependencies (JobGroups)
 *new function generateDependencies() generate exclusion between systems, and then generate dependencies for SystemCallers and JobGroups
-fixed issue with jobs generating (empty blocks with only newly added entities was used, and led to crash)
-fixed small typo mistake
This commit is contained in:
Mergul 2018-10-20 11:42:29 +02:00
parent 2824bdb55b
commit 430ce8074c
4 changed files with 246 additions and 28 deletions

View file

@ -3,4 +3,6 @@ module ecs.attributes;
///Used to mark optional components for system.
enum optional = "optional";
///Used to mark absent components for system. Enum 'AbsentComponents' should be used instead of it.
enum absent = "absent";
enum absent = "absent";
///Used to mark readonly components for system. "const" can be used insted.
enum readonly = "readonly";