From 70c912b7d545515823d0b06953a8afe0253ab09c Mon Sep 17 00:00:00 2001 From: Danny Holman Date: Tue, 17 Sep 2024 02:20:35 -0500 Subject: core: add several new files Add several new files to the core subsystem. These files will be the basic building blocks upon which the rest of the engine will sit atop of. These files will be present in all builds, including headless and platform builds. Signed-off-by: Danny Holman --- include/rune/core/callbacks.h | 29 +++++++++++++++++++++++++++++ include/rune/core/init.h | 30 ++++++++++++++++++++++++++++++ include/rune/graphics.h | 38 -------------------------------------- 3 files changed, 59 insertions(+), 38 deletions(-) create mode 100644 include/rune/core/callbacks.h create mode 100644 include/rune/core/init.h delete mode 100644 include/rune/graphics.h (limited to 'include') diff --git a/include/rune/core/callbacks.h b/include/rune/core/callbacks.h new file mode 100644 index 0000000..7367557 --- /dev/null +++ b/include/rune/core/callbacks.h @@ -0,0 +1,29 @@ +/* + * Rune Game Engine + * Copyright 2024 Danny Holman + * + * This software is provided 'as-is', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + */ + +#ifndef RUNE_CALLBACKS_H +#define RUNE_CALLBACKS_H + +#include + +RAPI void error_callback(int error, const char *desc); + +#endif diff --git a/include/rune/core/init.h b/include/rune/core/init.h new file mode 100644 index 0000000..3aef63c --- /dev/null +++ b/include/rune/core/init.h @@ -0,0 +1,30 @@ +/* + * Rune Game Engine + * Copyright 2024 Danny Holman + * + * This software is provided 'as-is', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + */ + +#ifndef RUNE_INIT_H +#define RUNE_INIT_H + +#include + +RAPI struct rune_window* rune_init(uint32_t width, uint32_t height, const char *title); +RAPI void rune_exit(void); + +#endif diff --git a/include/rune/graphics.h b/include/rune/graphics.h deleted file mode 100644 index 8f10b4a..0000000 --- a/include/rune/graphics.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Rune Game Engine - * Copyright 2024 Danny Holman - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any damages - * arising from the use of this software. - * - * Permission is granted to anyone to use this software for any purpose, - * including commercial applications, and to alter it and redistribute it - * freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you must not - * claim that you wrote the original software. If you use this software - * in a product, an acknowledgment in the product documentation would be - * appreciated but is not required. - * 2. Altered source versions must be plainly marked as such, and must not be - * misrepresented as being the original software. - * 3. This notice may not be removed or altered from any source distribution. - */ - -#ifndef RUNE_GRAPHICS_H -#define RUNE_GRAPHICS_H - -#include -#include - -struct rune_window { - uint32_t winw; - uint32_t winh; - const char *wintitle; - GLFWwindow *window; -}; - -RAPI int rune_gfx_init(struct rune_window *window); -RAPI void rune_gfx_quit(struct rune_window *window); - -#endif -- cgit v1.2.3