Files
Yajbir Singh f1b860b25c
Some checks failed
check / markdownlint (push) Has been cancelled
check / spellchecker (push) Has been cancelled
updated
2025-12-11 19:03:17 +05:30

44 lines
1.1 KiB
C

//========================================================================
//
// Trace.h
//
// Nested tracing.
//
// Copyright 2020 Glyph & Cog, LLC
//
//========================================================================
#ifndef TRACING_H
#define TRACING_H
#include <aconf.h>
#if ENABLE_TRACING
// Enter a nesting level.
extern void traceBegin(void *nestHandle, const char *fmt, ...);
// Exit a nesting level.
extern void traceEnd(void *nestHandle, const char *fmt, ...);
// Mark a resource as allocated.
extern void traceAlloc(void *resourceHandle, const char *fmt, ...);
// Mark a resource as freed.
extern void traceFree(void *resourceHandle, const char *fmt, ...);
// Misc message.
extern void traceMessage(const char *fmt, ...);
#else // ENABLE_TRACING
static inline void traceBegin(void *nestHandle, const char *fmt, ...) {}
static inline void traceEnd(void *nestHandle, const char *fmt, ...) {}
static inline void traceAlloc(void *resourceHandle, const char *fmt, ...) {}
static inline void traceFree(void *nestHandle, const char *fmt, ...) {}
static inline void traceMessage(const char *fmt, ...) {}
#endif // ENABLE_TRACING
#endif // TRACING_H