2024-09-11 10:16:57 +00:00
|
|
|
|
|
|
|
#ifndef VOXULA_H
|
|
|
|
#define VOXULA_H
|
|
|
|
|
2024-09-12 21:27:12 +00:00
|
|
|
#include <stdbool.h>
|
2024-09-11 10:16:57 +00:00
|
|
|
#include <stdint.h>
|
|
|
|
|
|
|
|
#include <voxula/internals/utility.h>
|
|
|
|
|
|
|
|
typedef void vecs_s;
|
|
|
|
typedef struct vecs_entity vecs_entity_s;
|
|
|
|
|
|
|
|
struct vecs_entity
|
|
|
|
{
|
|
|
|
vecs_s *ecs;
|
|
|
|
vx_uuid_d uuid;
|
|
|
|
};
|
|
|
|
|
2024-09-14 12:25:49 +00:00
|
|
|
vecs_s * vecs_new(vx_uuid_table_s *uuid_table);
|
2024-09-11 10:16:57 +00:00
|
|
|
void vecs_free(vecs_s *ecs);
|
|
|
|
|
|
|
|
vecs_entity_s vecs_summon(vecs_s *ecs);
|
2024-09-12 21:27:12 +00:00
|
|
|
void vecs_vanish(vecs_entity_s entity);
|
|
|
|
|
|
|
|
bool vecs_has(vecs_entity_s entity, const char *name);
|
|
|
|
void vecs_tag(vecs_entity_s entity, const char *name);
|
|
|
|
void * vecs_attach(vecs_entity_s entity, const char *name, uint32_t size);
|
|
|
|
void vecs_detach(vecs_entity_s entity, const char *name);
|
2024-09-11 10:16:57 +00:00
|
|
|
|
|
|
|
#endif // VOXULA_H
|