27#ifndef __NO_DUP_LOG_HEADER_GUARD__
28#define __NO_DUP_LOG_HEADER_GUARD__
53#define n_nodup_log(__LEVEL__, ...) \
55 _n_nodup_log(__LEVEL__, __FILE__, __func__, __LINE__, __VA_ARGS__); \
59#define n_nodup_log_indexed(__LEVEL__, __PREF__, ...) \
61 _n_nodup_log_indexed(__LEVEL__, __PREF__, __FILE__, __func__, __LINE__, __VA_ARGS__); \
void line(BITMAP *bmp, int x1, int y1, int x2, int y2, int color)
draw a line
#define N_PRINTF_FORMAT(fmt, args)
declare a function printf-like; nothing on a compiler without attributes
int init_nodup_log(size_t max)
init the nodup log internal hash table
int dump_nodup_log(char *file)
Dump the duplicate error log hash table in a file The table is first written to a temporary file whic...
int close_nodup_log()
close the nodup log session
void _n_nodup_log(int LEVEL, const char *file, const char *func, int line, const char *format,...)
log a message only once per unique location
int empty_nodup_table()
empty the nodup table
void _n_nodup_log_indexed(int LEVEL, const char *prefix, const char *file, const char *func, int line, const char *format,...)
Logging function.
Common headers and low-level functions & define.
Hash functions and table.
List structures and definitions.
N_STR and string function declaration.