summaryrefslogtreecommitdiff
path: root/src/rendering
diff options
context:
space:
mode:
Diffstat (limited to 'src/rendering')
-rw-r--r--src/rendering/include/engine/rendering/window.h6
-rw-r--r--src/rendering/src/window.c7
2 files changed, 13 insertions, 0 deletions
diff --git a/src/rendering/include/engine/rendering/window.h b/src/rendering/include/engine/rendering/window.h
index 16a0336..f6da016 100644
--- a/src/rendering/include/engine/rendering/window.h
+++ b/src/rendering/include/engine/rendering/window.h
@@ -4,6 +4,11 @@
#include <engine/core/types.h>
#include <cglm/cglm.h>
+#ifndef ENGINE_RENDERING_WINDOW_H_EXCLUDE_EXTERNS
+extern void* window_poll_events;
+extern f64 (*get_time)(void);
+#endif
+
enum Window_framework {
WINDOW_FRAMEWORK_NONE = 0,
WINDOW_FRAMEWORK_GLFW,
@@ -40,4 +45,5 @@ void destroy_window(Window w);
// Renderer intializer(s)
void init_render_opengl(Window w);
+#undef API
#endif
diff --git a/src/rendering/src/window.c b/src/rendering/src/window.c
index 8c22bbd..de0aae6 100644
--- a/src/rendering/src/window.c
+++ b/src/rendering/src/window.c
@@ -6,6 +6,7 @@
#include <engine/core/types.h>
#include <engine/core/logging.h>
+#define ENGINE_RENDERING_WINDOW_H_EXCLUDE_EXTERNS
#include <engine/rendering/window.h>
#define GLAD_GL_IMPLEMENTATION
@@ -19,6 +20,9 @@
extern Platform* GLOBAL_PLATFORM;
+void *window_poll_events = NULL;
+f64 (*get_time)(void) = NULL;
+
/* GLFW And vulkan spaghetti boiler */
void glfw_err_callback(int code, const char* description) {
ERROR("glfw [%d]: %s\n", code, description);
@@ -107,6 +111,9 @@ Window init_window_glfw(
// Last parameter is used for the renderer
ret->context = NULL;
+ window_poll_events = &glfwPollEvents;
+ get_time = &glfwGetTime;
+
return ret;
}