-
Notifications
You must be signed in to change notification settings - Fork 1
/
flecs_player.h
88 lines (70 loc) · 2 KB
/
flecs_player.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#define flecs_player_STATIC
#ifndef FLECS_PLAYER_H
#define FLECS_PLAYER_H
/* This generated file contains includes for project dependencies */
/*
)
(.)
.|.
| |
_.--| |--._
.-'; ;`-'& ; `&.
\ & ; & &_/
|"""---...---"""|
\ | | | | | | | /
`---.|.|.|.---'
* This file is generated by bake.lang.c for your convenience. Headers of
* dependencies will automatically show up in this file. Include bake_config.h
* in your main project file. Do not edit! */
#ifndef FLECS_PLAYER_BAKE_CONFIG_H
#define FLECS_PLAYER_BAKE_CONFIG_H
/* Headers of public dependencies */
#include <flecs.h>
#include <flecs_meta.h>
/* Convenience macro for exporting symbols */
#ifndef flecs_player_STATIC
#if flecs_player_EXPORTS && (defined(_MSC_VER) || defined(__MINGW32__))
#define FLECS_PLAYER_API __declspec(dllexport)
#elif flecs_player_EXPORTS
#define FLECS_PLAYER_API __attribute__((__visibility__("default")))
#elif defined _MSC_VER
#define FLECS_PLAYER_API __declspec(dllimport)
#else
#define FLECS_PLAYER_API
#endif
#else
#define FLECS_PLAYER_API
#endif
#endif
ECS_ENUM(EcsPlayerState, {
EcsPlayerPlay,
EcsPlayerPause,
EcsPlayerStop
});
ECS_STRUCT(EcsPlayer, {
EcsPlayerState state;
EcsPlayerState prev_state;
float time_scale;
ecs_entity_t play_pipeline;
ecs_entity_t stop_pipeline;
ECS_PRIVATE
ecs_snapshot_t *snapshot;
});
ECS_STRUCT(EcsTargetFps, {
float target_fps;
});
#ifdef __cplusplus
extern "C" {
#endif
typedef struct FlecsPlayer {
ECS_DECLARE_COMPONENT(EcsPlayer);
} FlecsPlayer;
FLECS_PLAYER_API
void FlecsPlayerImport(
ecs_world_t *world);
#define FlecsPlayerImportHandles(handles)\
ECS_IMPORT_COMPONENT(handles, EcsPlayer);
#ifdef __cplusplus
}
#endif
#endif