diff options
Diffstat (limited to 'include/rodeo')
| -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 |
3 files changed, 71 insertions, 0 deletions
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; |
