Flecs
v3.2
A fast entity component system (ECS) for C & C++
Loading...
Searching...
No Matches
journal.h
Go to the documentation of this file.
1
13
#ifdef FLECS_JOURNAL
14
15
#ifndef FLECS_LOG
16
#define FLECS_LOG
17
#endif
18
19
#ifndef FLECS_JOURNAL_H
20
#define FLECS_JOURNAL_H
21
30
/* Trace when log level is at or higher than level */
31
#define FLECS_JOURNAL_LOG_LEVEL (0)
32
33
#ifdef __cplusplus
34
extern
"C"
{
35
#endif
36
37
/* Journaling API, meant to be used by internals. */
38
39
typedef
enum
ecs_journal_kind_t {
40
EcsJournalNew,
41
EcsJournalMove,
42
EcsJournalClear,
43
EcsJournalDelete,
44
EcsJournalDeleteWith,
45
EcsJournalRemoveAll,
46
EcsJournalTableEvents
47
} ecs_journal_kind_t;
48
49
FLECS_DBG_API
50
void
flecs_journal_begin(
51
ecs_world_t
*world,
52
ecs_journal_kind_t kind,
53
ecs_entity_t
entity,
54
ecs_type_t
*add,
55
ecs_type_t
*remove);
56
57
FLECS_DBG_API
58
void
flecs_journal_end(
void
);
59
60
#define flecs_journal(...)\
61
flecs_journal_begin(__VA_ARGS__);\
62
flecs_journal_end();
63
64
#ifdef __cplusplus
65
}
66
#endif
// __cplusplus
67
#endif
// FLECS_JOURNAL_H
68
#else
69
#define flecs_journal_begin(...)
70
#define flecs_journal_end(...)
71
#define flecs_journal(...)
72
75
#endif
// FLECS_JOURNAL
ecs_entity_t
ecs_id_t ecs_entity_t
An entity identifier.
Definition:
flecs.h:288
ecs_world_t
struct ecs_world_t ecs_world_t
A world is the container for all ECS data and supporting features.
Definition:
flecs.h:332
ecs_type_t
A type is a list of (component) ids.
Definition:
flecs.h:305