31 lines
672 B
C
31 lines
672 B
C
|
#ifndef INCLUDE_WAYLANDCLIENT_OBJECT_H_
|
||
|
#define INCLUDE_WAYLANDCLIENT_OBJECT_H_
|
||
|
|
||
|
#include "dynarray.h"
|
||
|
// #include "vulkan_internal.h"
|
||
|
|
||
|
dyn_array_define(da_Object, struct Object *);
|
||
|
|
||
|
struct Scene {
|
||
|
struct Vk *vk;
|
||
|
struct Mem *mem;
|
||
|
struct da_Object objects;
|
||
|
struct da_Object insert_queue;
|
||
|
struct Register *reg;
|
||
|
|
||
|
float delta_secs;
|
||
|
long msecs;
|
||
|
};
|
||
|
|
||
|
struct Object {
|
||
|
struct Type *type;
|
||
|
void *data;
|
||
|
};
|
||
|
|
||
|
struct Scene *make_scene(struct Vk *vk, struct Register *reg);
|
||
|
void free_scene(struct Scene *scene);
|
||
|
void scene_tick(struct Scene *scene);
|
||
|
void scene_queue_insert(struct Scene *scene, char *name, void *object_data);
|
||
|
|
||
|
#endif // INCLUDE_WAYLANDCLIENT_OBJECT_H_
|