12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- #ifndef __LOGFACTORY_H__
- #define __LOGFACTORY_H__
- #pragma once
- #include "list.h"
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef struct logfactory_t
- {
- struct list_head entry;
- char* name;
- void (*destroy)(void* self);
- void* (*create_log)(void* self, const char* inst);
- int (*set_log_param)(void* self, void* log, const char* key, const char* value);
- int (*init_log)(void* self, void* log);
- int (*term_log)(void* self, void* log);
- void (*destroy_log)(void* self, void* log);
- int (*record_log)(void* self, void* log, int level, unsigned long ts_low, unsigned long ts_high, const char* s, int n);
- }logfactory_t;
- static __inline void logfactory_destroy(void* self)
- {
- logfactory_t* fac = (logfactory_t*)self;
- (*fac->destroy)(self);
- }
- static __inline void* logfactory_create_log(void* self, const char* inst)
- {
- logfactory_t* fac = (logfactory_t*)self;
- return (*fac->create_log)(self, inst);
- }
- static __inline int logfactory_set_log_param(void* self, void* log, const char* key, const char* value)
- {
- logfactory_t* fac = (logfactory_t*)self;
- return (*fac->set_log_param)(self, log, key, value);
- }
- static __inline int logfactory_init_log(void* self, void* log)
- {
- logfactory_t* fac = (logfactory_t*)self;
- return (*fac->init_log)(self, log);
- }
- static __inline int logfactory_term_log(void* self, void* log)
- {
- logfactory_t* fac = (logfactory_t*)self;
- return (*fac->term_log)(self, log);
- }
- static __inline void logfactory_destroy_log(void* self, void* log)
- {
- logfactory_t* fac = (logfactory_t*)self;
- (*fac->destroy_log)(self, log);
- }
- static __inline int logfactory_log_record(void* self, void* log, int level, unsigned long ts_low, unsigned long ts_high, const char* s, int n)
- {
- logfactory_t* fac = (logfactory_t*)self;
- return (*fac->record_log)(self, log, level, ts_low, ts_high, s, n);
- }
- const char* log_level2str(int level);
- #ifdef __cplusplus
- }
- #endif
- #endif //__LOGFACTORY_H__
|