aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/utils.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/utils.h')
-rw-r--r--include/utils.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/include/utils.h b/include/utils.h
index d2c3b7d..d1a2a3c 100644
--- a/include/utils.h
+++ b/include/utils.h
@@ -6,6 +6,7 @@
#include "../include/defs.h"
#include <stdbool.h>
#include <stdint.h>
+#include <stddef.h>
typedef struct AVCodecContext AVCodecContext;
typedef struct AVFrame AVFrame;
@@ -64,4 +65,21 @@ unsigned int gl_create_texture(gsr_egl *egl, int width, int height, int internal
bool get_nvidia_driver_version(int *major, int *minor);
+/* Return false from the callback to stop splitting */
+typedef bool (*gsr_string_split_callback)(const char *str, size_t size, void *userdata);
+void gsr_string_split(const char *str, char delimiter, gsr_string_split_callback callback, void *userdata);
+
+bool gsr_string_starts_with(const char *str, size_t str_size, const char *substr);
+bool gsr_string_ends_with(const char *str, const char *substr);
+
+bool gsr_string_to_int(const char *str, size_t size, int *number);
+bool gsr_string_to_int64(const char *str, size_t size, int64_t *number);
+
+bool gsr_array_ensure_capacity(void **array, size_t num_items, size_t *capacity_items, size_t item_size);
+
+/* These write a formatted local date/time into |str|, which should be at least 128 bytes in size */
+void gsr_get_date_str(char *str, size_t size);
+void gsr_get_date_only_str(char *str, size_t size);
+void gsr_get_time_only_str(char *str, size_t size);
+
#endif /* GSR_UTILS_H */