diff options
| author | realtradam <[email protected]> | 2023-04-14 16:45:29 -0400 |
|---|---|---|
| committer | realtradam <[email protected]> | 2023-04-14 16:45:29 -0400 |
| commit | 4b9437a5bf8dea4475a2dd5f433ee9729d6493c2 (patch) | |
| tree | 7e4d76abcae19747043d29d87cfe85b99b2c625c | |
| parent | 3387c9fef273f2cc0674ea77ed950c0965299c4e (diff) | |
| download | RodeoKit-4b9437a5bf8dea4475a2dd5f433ee9729d6493c2.tar.gz RodeoKit-4b9437a5bf8dea4475a2dd5f433ee9729d6493c2.zip | |
split off logging into seperate files
| -rw-r--r-- | CMakeLists.txt | 2 | ||||
| -rw-r--r-- | include/compile_flags.txt | 11 | ||||
| -rw-r--r-- | include/rodeo.h | 30 | ||||
| -rw-r--r-- | include/rodeo/common.h | 20 | ||||
| -rw-r--r-- | include/rodeo/log.h | 11 | ||||
| -rw-r--r-- | include/rodeo/log_t.h | 40 | ||||
| -rw-r--r-- | include/rodeo_types.h | 41 | ||||
| -rw-r--r-- | src/input/rodeo_input.c | 12 | ||||
| -rw-r--r-- | src/log/irodeo_log.h | 12 | ||||
| -rw-r--r-- | src/log/rodeo_log.c (renamed from src/rodeo_log.c) | 25 |
10 files changed, 124 insertions, 80 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 76152a5..fdfa91d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,7 @@ project(RodeoKit add_library(${PROJECT_NAME} "src/rodeo.c" "src/rodeo_math.c" - "src/rodeo_log.c" + "src/log/rodeo_log.c" "src/rodeo_input.c" "src/input/rodeo_input.c" ) diff --git a/include/compile_flags.txt b/include/compile_flags.txt new file mode 100644 index 0000000..2c81d8a --- /dev/null +++ b/include/compile_flags.txt @@ -0,0 +1,11 @@ +-I./ +-I../include +-I../external/SDL/include +-I../external/bgfx/include +-I../external/bx/include +-I../external/cglm/include +-I../external/STC/include +-Wall +-Wextra +-Wpedantic +-Wconversion diff --git a/include/rodeo.h b/include/rodeo.h index 1fd27a6..2d43ce0 100644 --- a/include/rodeo.h +++ b/include/rodeo.h @@ -2,6 +2,9 @@ // -- internal -- // public #include "rodeo_types.h" +#include "rodeo/input.h" +#include "rodeo/log.h" +#include "rodeo/common.h" // -- external -- #include "stc/cstr.h" @@ -14,25 +17,6 @@ #include <string.h> #include <limits.h> -#define mrodeo_name_concat(prefix, suffix) prefix##suffix - -#define mrodeo_macrovar(prefix) mrodeo_name_concat(prefix##_, __LINE__) - -#define mrodeo_defer_do(start, end) \ - for( \ - int mrodeo_macrovar(_macrovar_) = (start, 0); \ - !mrodeo_macrovar(_macrovar_); \ - (mrodeo_macrovar(_macrovar_) += 1), end \ - ) \ - -#define \ -mrodeo_vargs_do(final_arg) \ - va_list vargs; \ - mrodeo_defer_do( \ - va_start(vargs, final_arg), \ - va_end(vargs) \ - ) \ - /// --- Math --- rodeo_color_RGBA8_t @@ -148,14 +132,6 @@ rodeo_texture_2d_draw( const rodeo_texture_2d_t *texture ); -/// --- Log --- - -void -rodeo_log( - rodeo_logLevel_t loglevel, - const char *format, - ... -); /// --- Framerate --- diff --git a/include/rodeo/common.h b/include/rodeo/common.h new file mode 100644 index 0000000..886a82c --- /dev/null +++ b/include/rodeo/common.h @@ -0,0 +1,20 @@ + +#define mrodeo_name_concat(prefix, suffix) prefix##suffix + +#define mrodeo_macrovar(prefix) mrodeo_name_concat(prefix##_, __LINE__) + +#define mrodeo_defer_do(start, end) \ + for( \ + int mrodeo_macrovar(_macrovar_) = (start, 0); \ + !mrodeo_macrovar(_macrovar_); \ + (mrodeo_macrovar(_macrovar_) += 1), end \ + ) \ + +#define \ +mrodeo_vargs_do(final_arg) \ + va_list vargs; \ + mrodeo_defer_do( \ + va_start(vargs, final_arg), \ + va_end(vargs) \ + ) \ + diff --git a/include/rodeo/log.h b/include/rodeo/log.h new file mode 100644 index 0000000..837e795 --- /dev/null +++ b/include/rodeo/log.h @@ -0,0 +1,11 @@ + +// -- internal -- +// public +#include "rodeo/log_t.h" + +void +rodeo_log( + rodeo_logLevel_t loglevel, + const char *format, + ... +); diff --git a/include/rodeo/log_t.h b/include/rodeo/log_t.h new file mode 100644 index 0000000..844601a --- /dev/null +++ b/include/rodeo/log_t.h @@ -0,0 +1,40 @@ +#pragma once + +// -- external -- +#include "stc/cstr.h" + +typedef +enum +{ + rodeo_logLevel_info, + rodeo_logLevel_warning, + rodeo_logLevel_error +} +rodeo_logLevel_t; + +typedef +void +(*rodeo_log_function)(cstr text); + +typedef +union +{ + struct { + float x; + float y; + }; + float array[2]; +} +rodeo_vector2_t; + +typedef +union +{ + struct { + float x; + float y; + float z; + }; + float array[3]; +} +rodeo_vector3_t; diff --git a/include/rodeo_types.h b/include/rodeo_types.h index 4ed7767..bc92fb4 100644 --- a/include/rodeo_types.h +++ b/include/rodeo_types.h @@ -1,9 +1,9 @@ #pragma once -// external +// -- external -- #include "stc/cstr.h" -// system +// -- system -- #include <stdbool.h> #include <stdint.h> #include <stddef.h> @@ -89,40 +89,3 @@ typedef struct rodeo_frameBuffer_2d_t; */ -/// --- Log --- - -typedef -enum -{ - rodeo_logLevel_info, - rodeo_logLevel_warning, - rodeo_logLevel_error -} -rodeo_logLevel_t; - -typedef -void -(*rodeo_log_function)(cstr text); - -typedef -union -{ - struct { - float x; - float y; - }; - float array[2]; -} -rodeo_vector2_t; - -typedef -union -{ - struct { - float x; - float y; - float z; - }; - float array[3]; -} -rodeo_vector3_t; diff --git a/src/input/rodeo_input.c b/src/input/rodeo_input.c index 0137e69..e8c736b 100644 --- a/src/input/rodeo_input.c +++ b/src/input/rodeo_input.c @@ -1,9 +1,9 @@ // -- internal -- // public -#include "rodeo/input_t.h" #include "rodeo/input.h" #include "irodeo_input.h" +#include "rodeo/log.h" // -- external -- #include "SDL2/SDL.h" @@ -142,12 +142,18 @@ rodeo_input_scene_register_callback( break; case rodeo_input_binary_Invalid: - // TODO make it a log + rodeo_log( + rodeo_logLevel_error, + "Failed to register invalid binary input type" + ); break; } break; case rodeo_input_type_Invalid: - // TODO make it log + rodeo_log( + rodeo_logLevel_error, + "Failed to register invalid input type" + ); break; } } diff --git a/src/log/irodeo_log.h b/src/log/irodeo_log.h new file mode 100644 index 0000000..2eb3341 --- /dev/null +++ b/src/log/irodeo_log.h @@ -0,0 +1,12 @@ + +// -- internal -- +// public +#include "rodeo/log.h" + +typedef +struct +{ + rodeo_log_function logging_function; +} +irodeo_log_state_t; + diff --git a/src/rodeo_log.c b/src/log/rodeo_log.c index 625b563..bc2c4f0 100644 --- a/src/rodeo_log.c +++ b/src/log/rodeo_log.c @@ -1,12 +1,12 @@ -// public internal -#include "rodeo_types.h" -#include "rodeo.h" +// -- internal -- +// public +#include "rodeo/log.h" +#include "rodeo/common.h" +// private +#include "log/irodeo_log.h" -// external -#include "SDL2/SDL.h" - -static rodeo_log_function logging_function = NULL; +static irodeo_log_state_t istate = {0}; void rodeo_log( @@ -50,19 +50,24 @@ rodeo_log( "\n" ); - if(logging_function == NULL) + if(istate.logging_function == NULL) { printf("%s", cstr_str(&formatted)); } else { - logging_function(formatted); + istate.logging_function(formatted); } } void rodeo_log_function_set(rodeo_log_function rodeo_log_func) { - logging_function = rodeo_log_func; + istate.logging_function = rodeo_log_func; } +rodeo_log_function +rodeo_log_function_get(void) +{ + return istate.logging_function; +} |
