Updated src/main.c
Signed-off-by: Robear Selwans <robear.selwans@outlook.com>
This commit is contained in:
30
src/main.c
30
src/main.c
@@ -1,18 +1,40 @@
|
|||||||
#include <evol/evol.h>
|
#include <evol/evol.h>
|
||||||
|
#include <assert.h>
|
||||||
|
|
||||||
#define NAMESPACE_MODULE evmod_glfw
|
#define NAMESPACE_MODULE evmod_glfw
|
||||||
#include <evol/meta/namespace_import.h>
|
#include <evol/meta/namespace_import.h>
|
||||||
|
|
||||||
int main(int argc, char **argv) {
|
#define TYPE_MODULE evmod_glfw
|
||||||
|
#include <evol/meta/type_import.h>
|
||||||
|
|
||||||
|
#define NAMESPACE_MODULE evmod_world
|
||||||
|
#include <evol/meta/namespace_import.h>
|
||||||
|
|
||||||
|
#define IMPORT_NAMESPACES do { \
|
||||||
|
IMPORT_NAMESPACE(World, world_module); \
|
||||||
|
IMPORT_NAMESPACE(Window, window_module); \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
int main(int argc, char **argv)
|
||||||
|
{
|
||||||
evolengine_t *engine = evol_create();
|
evolengine_t *engine = evol_create();
|
||||||
evol_parse_args(engine, argc, argv);
|
evol_parse_args(engine, argc, argv);
|
||||||
evol_init(engine);
|
evol_init(engine);
|
||||||
|
|
||||||
evolmodule_t window_module = evol_loadmodule("window");
|
evolmodule_t window_module = evol_loadmodule("window"); assert(window_module);
|
||||||
IMPORT_NAMESPACE(Window, window_module);
|
evolmodule_t world_module = evol_loadmodule("world"); assert(world_module);
|
||||||
|
|
||||||
while(!Window->update(0.0));
|
IMPORT_NAMESPACES;
|
||||||
|
|
||||||
|
bool result = 0;
|
||||||
|
while(true) {
|
||||||
|
result |= Window->update(0.0);
|
||||||
|
result |= World->update(0.0);
|
||||||
|
|
||||||
|
if(result) break;
|
||||||
|
}
|
||||||
|
|
||||||
|
evol_unloadmodule(world_module);
|
||||||
evol_unloadmodule(window_module);
|
evol_unloadmodule(window_module);
|
||||||
evol_deinit(engine);
|
evol_deinit(engine);
|
||||||
evol_destroy(engine);
|
evol_destroy(engine);
|
||||||
|
|||||||
Reference in New Issue
Block a user