summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorrealtradam <[email protected]>2023-04-12 19:18:59 -0400
committerrealtradam <[email protected]>2023-04-12 19:18:59 -0400
commitf250a4090cf4d535a163388fb5faea5ff1ce48e4 (patch)
treeabccaee35e10fb05ec06f621ea14adf598ff53cc /src
parent231185997aef8b675033cf1a32db79e140bcef06 (diff)
downloadRodeoKit-f250a4090cf4d535a163388fb5faea5ff1ce48e4.tar.gz
RodeoKit-f250a4090cf4d535a163388fb5faea5ff1ce48e4.zip
remove string wrapper, use STC directly instead
Diffstat (limited to 'src')
-rw-r--r--src/rodeo.c32
-rw-r--r--src/rodeo_internal.h2
-rw-r--r--src/rodeo_log.c25
-rw-r--r--src/rodeo_string.c123
4 files changed, 32 insertions, 150 deletions
diff --git a/src/rodeo.c b/src/rodeo.c
index fbbee92..d92a9db 100644
--- a/src/rodeo.c
+++ b/src/rodeo.c
@@ -29,7 +29,7 @@ void
rodeo_window_init(
uint16_t screen_height,
uint16_t screen_width,
- rodeo_string_t title
+ cstr title
)
{
state.window = NULL;
@@ -61,7 +61,7 @@ rodeo_window_init(
"Initializing SDL window..."
);
state.window = SDL_CreateWindow(
- rodeo_string_to_constcstr(&title),
+ cstr_str(&title),
SDL_WINDOWPOS_UNDEFINED,
SDL_WINDOWPOS_UNDEFINED,
screen_width,
@@ -155,7 +155,7 @@ rodeo_window_init(
}
// load shaders
- rodeo_string_t shader_path = rodeo_string_create("???");
+ cstr shader_path = cstr_lit("???");
switch(bgfx_get_renderer_type()) {
case BGFX_RENDERER_TYPE_NOOP:
rodeo_log(
@@ -164,13 +164,13 @@ rodeo_window_init(
);
exit(EXIT_FAILURE);
case BGFX_RENDERER_TYPE_OPENGLES:
- rodeo_string_set(
+ cstr_assign(
&shader_path,
"shaders/100_es/"
);
break;
case BGFX_RENDERER_TYPE_VULKAN:
- rodeo_string_set(
+ cstr_assign(
&shader_path,
"shaders/spirv/"
);
@@ -182,15 +182,17 @@ rodeo_window_init(
);
exit(EXIT_FAILURE);
}
- rodeo_string_t vertex_shader_path = rodeo_string_create("simple.vertex.bin");
- rodeo_string_t fragment_shader_path = rodeo_string_create("simple.fragment.bin");
+ cstr vertex_shader_path = cstr_lit("simple.vertex.bin");
+ cstr fragment_shader_path = cstr_lit("simple.fragment.bin");
- rodeo_string_prepend(
+ cstr_insert_s(
&vertex_shader_path,
+ 0,
shader_path
);
- rodeo_string_prepend(
+ cstr_insert_s(
&fragment_shader_path,
+ 0,
shader_path
);
@@ -373,10 +375,10 @@ rodeo_debug_text_draw(u_int16_t x, u_int16_t y, const char *format, ...)
}
}
-rodeo_string_t
+cstr
rodeo_renderer_name_get(void)
{
- return rodeo_string_create(
+ return cstr_from(
bgfx_get_renderer_name(bgfx_get_renderer_type())
);
}
@@ -648,10 +650,10 @@ rodeo_texture_2d_draw(
}
rodeo_texture_2d_t
-rodeo_texture_2d_create_from_path(rodeo_string_t path)
+rodeo_texture_2d_create_from_path(cstr path)
{
// load image to surface
- SDL_Surface *surface = IMG_Load(rodeo_string_to_constcstr(&path));
+ SDL_Surface *surface = IMG_Load(cstr_str(&path));
if(surface == NULL)
{
rodeo_log(
@@ -704,9 +706,9 @@ rodeo_texture_2d_create_from_path(rodeo_string_t path)
}
bgfx_shader_handle_t
-irodeo_shader_load(const rodeo_string_t path)
+irodeo_shader_load(const cstr path)
{
- const char* path_cstr = rodeo_string_to_constcstr(&path);
+ const char* path_cstr = cstr_str(&path);
bgfx_shader_handle_t invalid = BGFX_INVALID_HANDLE;
FILE *file = fopen(path_cstr, "rb");
diff --git a/src/rodeo_internal.h b/src/rodeo_internal.h
index 6e60314..057f2ae 100644
--- a/src/rodeo_internal.h
+++ b/src/rodeo_internal.h
@@ -19,7 +19,7 @@ void
irodeo_render_buffer_transient_alloc(void);
bgfx_shader_handle_t
-irodeo_shader_load(const rodeo_string_t path);
+irodeo_shader_load(const cstr path);
void
irodeo_random_seed_set(stc64_t seed);
diff --git a/src/rodeo_log.c b/src/rodeo_log.c
index 243e04b..625b563 100644
--- a/src/rodeo_log.c
+++ b/src/rodeo_log.c
@@ -15,41 +15,44 @@ rodeo_log(
...
)
{
- rodeo_string_t formatted;
+ cstr formatted;
mrodeo_vargs_do(format)
{
- formatted = rodeo_string_vargs_format(format, vargs);
+ formatted = cstr_from_vfmt(format, vargs);
}
switch(loglevel)
{
case rodeo_logLevel_info:
- rodeo_string_prepend(
+ cstr_insert(
&formatted,
- rodeo_string_create("[INFO]: ")
+ 0,
+ "[INFO]: "
);
break;
case rodeo_logLevel_warning:
- rodeo_string_prepend(
+ cstr_insert(
&formatted,
- rodeo_string_create("\033[33m[WARN]:\033[0m ")
+ 0,
+ "\033[33m[WARN]:\033[0m "
);
break;
case rodeo_logLevel_error:
- rodeo_string_prepend(
+ cstr_insert(
&formatted,
- rodeo_string_create("\033[31;1m[ERROR]:\033[0m ")
+ 0,
+ "\033[31;1m[ERROR]:\033[0m "
);
break;
}
- rodeo_string_append(
+ cstr_append(
&formatted,
- rodeo_string_create("\n")
+ "\n"
);
if(logging_function == NULL)
{
- printf("%s", rodeo_string_to_constcstr(&formatted));
+ printf("%s", cstr_str(&formatted));
}
else
{
diff --git a/src/rodeo_string.c b/src/rodeo_string.c
deleted file mode 100644
index 8e82b6b..0000000
--- a/src/rodeo_string.c
+++ /dev/null
@@ -1,123 +0,0 @@
-
-// internal
-#include "rodeo.h"
-#include "rodeo_types.h"
-
-// external
-#define i_implement
-#include "stc/cstr.h"
-#include "SDL2/SDL.h"
-
-// system
-#include <stdarg.h>
-
-// TODO: the create and destroy functions arent actually used together.
-// one is a pointer and the other isnt
-rodeo_string_t
-rodeo_string_create(const char *c_string)
-{
- cstr result = cstr_NULL;
- if(c_string != NULL)
- {
- result = cstr_from(c_string);
- }
- return *(rodeo_string_t*)(&result);
-}
-
-void
-rodeo_string_destroy(rodeo_string_t *self)
-{
- cstr_drop((cstr*)self);
- //free(string); // the above already calls free on the entire pointer
-}
-
-char*
-rodeo_string_to_cstr(rodeo_string_t *self)
-{
- return cstr_data((cstr*)self);
-}
-
-const char*
-rodeo_string_to_constcstr(const rodeo_string_t *self)
-{
- return cstr_str((cstr*)self);
-}
-
-void
-rodeo_string_insert(
- rodeo_string_t *self,
- const rodeo_string_t insert,
- intptr_t position
-)
-{
- cstr_insert_s((cstr*)self, position, *(cstr*)&insert);
-}
-
-void
-rodeo_string_append(
- rodeo_string_t *self,
- const rodeo_string_t append
-)
-{
- rodeo_string_insert(
- self,
- append,
- cstr_size((cstr*)self)
- );
-}
-
-void
-rodeo_string_prepend(
- rodeo_string_t *self,
- const rodeo_string_t prepend
-)
-{
- rodeo_string_insert(
- self,
- prepend,
- 0
- );
-}
-
-void
-rodeo_string_clear(rodeo_string_t *self)
-{
- cstr_clear((cstr*)self);
-}
-
-void
-rodeo_string_set(rodeo_string_t *self, char *value)
-{
- cstr_clear((cstr*)self);
- cstr *temp = (cstr*)self;
- *temp = cstr_from(value);
-}
-
-rodeo_string_t
-rodeo_string_clone(const rodeo_string_t self)
-{
- cstr temp = cstr_clone(*(cstr*)&self);
- rodeo_string_t result = *(rodeo_string_t*)&temp;
- return result;
-}
-
-rodeo_string_t
-rodeo_string_format(const char *format, ...)
-{
- rodeo_string_t result;
- mrodeo_vargs_do(format)
- {
- cstr temp = cstr_from_vfmt(format, vargs);
- result = *(rodeo_string_t*)&temp;
- }
- return result;
-}
-
-rodeo_string_t
-rodeo_string_vargs_format(const char *format, va_list vargs)
-{
- cstr temp = cstr_from_vfmt(format, vargs);
- rodeo_string_t result = *(rodeo_string_t*)&temp;
- return result;
-}
-