#include <stdio.h>
#include "../list.h"
#include "../names.h"
#include "require.h"
Go to the source code of this file.
|
| static scheduler_t | scheduler_new (scheduler_strategy_t strategy, allocator_t persistent_allocator, allocator_t temporary_allocator) |
| |
| static void | scheduler_add_system (scheduler_t *scheduler, system_req_t req, system_runner_f runner) |
| |
| static void | scheduler_add_system_declared_specific_data (scheduler_t *scheduler, system_requirements_declaration_t *declaration, void *system_specific_data) |
| |
| static void | scheduler_add_system_declared (scheduler_t *scheduler, system_requirements_declaration_t *declaration) |
| |
| static void | scheduler_dump_dependency_graph (scheduler_t *scheduler, FILE *out) |
| |
| static void | scheduler__topological_sort (allocator_t alloc, list_t *scheduler_system_list) |
| |
| static void | scheduler_set_parent_payload (scheduler_t *scheduler, system_payload_t payload) |
| |
| static void | scheduler_tick (scheduler_t *scheduler, double delta_time) |
| |
| static void | scheduler_begin_running (scheduler_t *scheduler) |
| |
| static void | scheduler_end_running (scheduler_t *scheduler) |
| |
◆ scheduler_declare_system_with_custom_runner
| #define scheduler_declare_system_with_custom_runner |
( |
|
scheduler, |
|
|
|
mut, |
|
|
|
cons, |
|
|
|
system_name, |
|
|
|
runner_f, |
|
|
|
deps_on, |
|
|
|
dependency_count, |
|
|
|
... |
|
) |
| |
Value:
do { \
__system_req.
name = runner_f##_name; \
system_req_entity_kinds_const(&__system_req, cons); \
system_req_entity_kinds_mut(&__system_req, mut); \
scheduler_add_system(scheduler, __system_req, runner_f); \
} while (0)
static name_t as_name(const char *str)
Definition names.h:33
u64 name_t
Definition names.h:14
name_t name
Definition require.h:76
u32 depends_on_count
Definition require.h:81
name_t * depends_on
Definition require.h:80
◆ scheduler_strategy_t
| Enumerator |
|---|
| SCHEDULER_STRATEGY_RANDOM | |
◆ scheduler__topological_sort()
| static void scheduler__topological_sort |
( |
allocator_t |
alloc, |
|
|
list_t * |
scheduler_system_list |
|
) |
| |
|
static |
◆ scheduler_add_system()
◆ scheduler_add_system_declared()
◆ scheduler_add_system_declared_specific_data()
◆ scheduler_begin_running()
| static void scheduler_begin_running |
( |
scheduler_t * |
scheduler | ) |
|
|
static |
◆ scheduler_dump_dependency_graph()
| static void scheduler_dump_dependency_graph |
( |
scheduler_t * |
scheduler, |
|
|
FILE * |
out |
|
) |
| |
|
static |
◆ scheduler_end_running()
| static void scheduler_end_running |
( |
scheduler_t * |
scheduler | ) |
|
|
static |
◆ scheduler_new()
◆ scheduler_set_parent_payload()
◆ scheduler_tick()
| static void scheduler_tick |
( |
scheduler_t * |
scheduler, |
|
|
double |
delta_time |
|
) |
| |
|
static |
Update all the active data members of a scheduler like delta_time