aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/log.h
diff options
context:
space:
mode:
authorMaria Lisina <sekoohaka.sarisan@gmail.com>2026-08-10 10:38:14 +0500
committerMaria Lisina <sekoohaka.sarisan@gmail.com>2026-08-10 10:38:14 +0500
commit6dc1149d078fc3b04a19696bfb7d5d6940372175 (patch)
tree169f7f71e6a292a4ab61a0493000e1add4430f8e /include/log.h
parent6836426ae183b9a7d0ec99c1e147e8ad6edabd92 (diff)
parent80517840f4ae64469721598e8373d81f2e4493dd (diff)
Merge tag '6.0.0' of https://repo.dec05eba.com/gpu-screen-recorder into debian
Diffstat (limited to 'include/log.h')
-rw-r--r--include/log.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/log.h b/include/log.h
new file mode 100644
index 0000000..e92ac99
--- /dev/null
+++ b/include/log.h
@@ -0,0 +1,20 @@
+#ifndef GSR_LOG_H
+#define GSR_LOG_H
+
+typedef enum {
+ GSR_LOG_LEVEL_DEBUG,
+ GSR_LOG_LEVEL_INFO,
+ GSR_LOG_LEVEL_WARNING,
+ GSR_LOG_LEVEL_ERROR
+} gsr_log_level;
+
+/* The handler may be called from any thread. |message| has no prefix, level name or trailing newline */
+typedef void (*gsr_log_handler)(gsr_log_level level, const char *message, void *userdata);
+
+void gsr_log(gsr_log_level level, const char *fmt, ...) __attribute__((format(printf, 2, 3)));
+/* Messages below |level| are discarded */
+void gsr_log_set_level(gsr_log_level level);
+/* A NULL |handler| restores the default handler which prints "gsr <level>: <message>" to stderr */
+void gsr_log_set_handler(gsr_log_handler handler, void *userdata);
+
+#endif /* GSR_LOG_H */