From 4b9437a5bf8dea4475a2dd5f433ee9729d6493c2 Mon Sep 17 00:00:00 2001 From: realtradam Date: Fri, 14 Apr 2023 16:45:29 -0400 Subject: split off logging into seperate files --- include/rodeo/common.h | 20 ++++++++++++++++++++ include/rodeo/log.h | 11 +++++++++++ include/rodeo/log_t.h | 40 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 71 insertions(+) create mode 100644 include/rodeo/common.h create mode 100644 include/rodeo/log.h create mode 100644 include/rodeo/log_t.h (limited to 'include/rodeo') 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; -- cgit v1.2.3