5#ifndef SPA_DEBUG_FILE_H
6#define SPA_DEBUG_FILE_H
29#ifndef SPA_API_DEBUG_FILE
31 #define SPA_API_DEBUG_FILE SPA_API_IMPL
33 #define SPA_API_DEBUG_FILE static inline
48 vfprintf(c->
f, fmt,
args); fputc(
'\n', c->
f);
52#define SPA_DEBUG_FILE_INIT(_f) \
53 (struct spa_debug_file_ctx){ { spa_debug_file_log }, _f, }
55#define spa_debug_file_error_location(f,loc,fmt,...) \
57 struct spa_debug_file_ctx c = SPA_DEBUG_FILE_INIT(f); \
58 if (fmt) spa_debugc(&c.ctx, fmt, __VA_ARGS__); \
59 spa_debugc_error_location(&c.ctx, loc); \
59 spa_debugc_error_location(&c.ctx, loc); \ …
uint32_t int int const char va_list args
Definition core.h:434
SPA_API_DEBUG_FILE void spa_debug_file_log(struct spa_debug_context *ctx, const char *fmt,...)
Definition file.h:50
#define SPA_API_DEBUG_FILE
Definition file.h:40
#define SPA_CONTAINER_OF(p, t, m)
Definition defs.h:235
#define SPA_PRINTF_FUNC(fmt, arg1)
Definition defs.h:295
FILE * f
Definition file.h:46
struct spa_debug_context ctx
Definition file.h:45