summaryrefslogtreecommitdiff
path: root/core/logger.h
diff options
context:
space:
mode:
authorPaul Oliver <contact@pauloliver.dev>2026-07-14 17:29:02 +0200
committerPaul Oliver <contact@pauloliver.dev>2026-08-30 16:24:48 +0200
commit1961b4b237083f4cfac9ca6b249c1d6cb665d149 (patch)
treefd9fc8260360e2ac30be9747ca558bcfc824a4c4 /core/logger.h
Initial (refactor)HEADmaster
Diffstat (limited to 'core/logger.h')
-rw-r--r--core/logger.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/core/logger.h b/core/logger.h
new file mode 100644
index 0000000..74b722d
--- /dev/null
+++ b/core/logger.h
@@ -0,0 +1,24 @@
+// file : core/logger.h
+// project : Salis-VM
+// author : Paul Oliver <contact@pauloliver.dev>
+//
+// Simple logging library.
+// Functions are exported and used to log within Python.
+
+#pragma once
+
+#define LOG_BUFFER_SIZE 0x800
+
+// UIs may install their own custom loggers.
+// By default, library logs to stdout.
+extern void (*log_trace)(const char *format, ...);
+extern void (*log_info)(const char *format, ...);
+extern void (*log_attention)(const char *format, ...);
+
+void log_trace_to_stdout(const char *format, ...);
+void log_info_to_stdout(const char *format, ...);
+void log_attention_to_stdout(const char *format, ...);
+
+void vlog_trace_to_buffer(char buffer[LOG_BUFFER_SIZE], const char *format, va_list args);
+void vlog_info_to_buffer(char buffer[LOG_BUFFER_SIZE], const char *format, va_list args);
+void vlog_attention_to_buffer(char buffer[LOG_BUFFER_SIZE], const char *format, va_list args);