2 * Copyright 2002 David Shipman,
3 * Copyright 2003-2007 Marcus Overhagen
4 * Copyright 2007 Haiku Inc. All rights reserved.
5 * Distributed under the terms of the MIT License.
7 #ifndef _MIXER_DEBUG_H_
8 #define _MIXER_DEBUG_H_
24 inline void ERROR(const char *fmt
, ...) { va_list ap
; va_start(ap
, fmt
); printf("### ERROR: "); vprintf(fmt
, ap
); va_end(ap
); }
25 inline void PRINT(int level
, const char *fmt
, ...) { va_list ap
; if (level
> DEBUG
) return; va_start(ap
, fmt
); vprintf(fmt
, ap
); va_end(ap
); }
27 # define PRINT_FORMAT(_text, _fmt) do { char _buf[300]; string_for_format((_fmt), _buf, sizeof(_buf)); printf("%s %s\n", (_text), (_buf)); } while (0)
28 # define PRINT_INPUT(_text, _in) do { char _buf[300]; string_for_format((_in).format, _buf, sizeof(_buf)); printf("%s node(node %" B_PRId32 ", port %" B_PRId32 "); source(port %" B_PRId32 ", id %" B_PRId32 "); dest(port %" B_PRId32 ", id %" B_PRId32 "); fmt(%s); name(%s)\n", (_text), (_in).node.node, (_in).node.port, (_in).source.port, (_in).source.id, (_in).destination.port, (_in).destination.id, _buf, (_in).name); } while (0)
29 # define PRINT_OUTPUT(_text, _out) do { char _buf[300]; string_for_format((_out).format, _buf, sizeof(_buf)); printf("%s node(node %" B_PRId32 ", port %" B_PRId32 "); source(port %" B_PRId32 ", id %" B_PRId32 "); dest(port %" B_PRId32 ", id %" B_PRId32 "); fmt(%s); name(%s)\n", (_text), (_out).node.node, (_out).node.port, (_out).source.port, (_out).source.id, (_out).destination.port, (_out).destination.id, _buf, (_out).name); } while (0)
30 # define PRINT_CHANNEL_MASK(fmt) do { char s[200]; StringForChannelMask(s, (fmt).u.raw_audio.channel_mask); printf(" channel_mask 0x%08" B_PRIX32 " %s\n", (fmt).u.raw_audio.channel_mask, s); } while (0)
35 # define TRACE(a...) ((void)0)
38 # define PRINT_FORMAT(_text, _fmt) ((void)0)
39 # define PRINT_INPUT(_text, _in) ((void)0)
40 # define PRINT_OUTPUT(_text, _out) ((void)0)
41 # define PRINT_CHANNEL_MASK(fmt) ((void)0)
42 # define PRINT(l, a...) ((void)0)
43 # define ERROR(a...) ((void)0)
44 # define TRACE(a...) ((void)0)
47 #endif /* _MIXER_DEBUG_H_ */