Files
LLog/include/LLog.h

58 lines
1.0 KiB
C
Raw Normal View History

2026-05-18 16:21:05 -05:00
#ifndef LLog_H
#define LLog_H
2026-05-19 01:16:39 -05:00
#include "time.h"
2026-05-19 18:33:37 -05:00
#include <stdarg.h>
#define max_string_len 1024
2026-05-19 01:16:39 -05:00
typedef struct {
char *buf;
size_t len;
} lLogString;
2026-05-18 16:21:05 -05:00
enum lLogLevel {
lINFO,
lWARNING,
lERROR,
lDEBUG
};
2026-05-19 01:16:39 -05:00
typedef struct {
time_t start;
time_t end;
} lTimespan;
typedef struct {
lTimespan time;
} lTimer;
typedef struct {
size_t count;
size_t capacity;
lTimer* items;
} timer_array;
int timer_array_append(timer_array* array, lTimer timer);
2026-05-19 18:43:57 -05:00
typedef struct {
size_t count;
size_t capacity;
lLogString** items;
} lLogString_array;
int lLogString_array_append(lLogString_array* array, lLogString* string);
2026-05-19 01:16:39 -05:00
typedef struct {
lLogString logfolder;
timer_array timers;
2026-05-19 18:43:57 -05:00
lLogString_array history;
2026-05-19 01:16:39 -05:00
} Logger;
int create_timer(Logger* logger);
void start_timer(Logger* logger, int timer_id);
void stop_timer(Logger* logger, int timer_id);
2026-05-19 18:43:57 -05:00
lLogString* lLogString_new(const char* fmt, ...);
2026-05-19 01:16:39 -05:00
2026-05-19 18:43:57 -05:00
int lLog(Logger* logger, enum lLogLevel LOG_LEVEL, lLogString* MESSAGE);
2026-05-18 16:21:05 -05:00
#endif