#ifndef DEBUG_LOG_H
#define DEBUG_LOG_H

#include <stdint.h>

#ifdef __cplusplus
extern "C" {
#endif

extern volatile uint32_t g_rtt_log_seq;
extern volatile uint32_t g_rtt_log_drop_count;
extern volatile uint32_t g_rtt_log_last_drop_seq;

void debug_log_init(void);
void debug_log_write(const char *msg);
void debug_log_printf(const char *fmt, ...);
void debug_log_boot(const char *tag);
void debug_log_fault(const char *tag);
void debug_log_runtime_snapshot(void);
void debug_log_fault_context(const char *tag, const char *file, int line);

#ifdef __cplusplus
}
#endif

#endif
