Mercurial > hg > nnchat
diff th_util.c @ 99:0313fabd8049
Added varargs versions of some functions.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 17 Nov 2009 23:08:15 +0200 |
parents | 69aed051f84d |
children | 4ec36204d34e |
line wrap: on
line diff
--- a/th_util.c Tue Nov 17 19:21:35 2009 +0200 +++ b/th_util.c Tue Nov 17 23:08:15 2009 +0200 @@ -48,44 +48,66 @@ /* Print formatted error, warning and information messages * TODO: Implement th_vfprintf() and friends? */ -void THERR(const char *pcFormat, ...) +void THERR_V(const char *fmt, va_list ap) +{ + assert(th_initialized == TRUE); + + fprintf(stderr, "%s: ", th_prog_name); + vfprintf(stderr, fmt, ap); +} + + +void THMSG_V(int level, const char *fmt, va_list ap) +{ + assert(th_initialized == TRUE); + + if (th_verbosityLevel >= level) { + fprintf(stderr, "%s: ", th_prog_name); + vfprintf(stderr, fmt, ap); + } +} + + +void THPRINT_V(int level, const char *fmt, va_list ap) +{ + assert(th_initialized == TRUE); + + if (th_verbosityLevel >= level) { + vfprintf(stderr, fmt, ap); + } +} + + +void THERR(const char *fmt, ...) { va_list ap; - assert(th_initialized); + assert(th_initialized == TRUE); - va_start(ap, pcFormat); - fprintf(stderr, "%s: ", th_prog_name); - vfprintf(stderr, pcFormat, ap); + va_start(ap, fmt); + THERR_V(fmt, ap); va_end(ap); } -void THMSG(int verbLevel, const char *pcFormat, ...) +void THMSG(int level, const char *fmt, ...) { va_list ap; - assert(th_initialized); + assert(th_initialized == TRUE); - /* Check if the current verbosity level is enough */ - if (th_verbosityLevel >= verbLevel) { - va_start(ap, pcFormat); - fprintf(stderr, "%s: ", th_prog_name); - vfprintf(stderr, pcFormat, ap); - va_end(ap); - } + va_start(ap, fmt); + THMSG_V(level, fmt, ap); + va_end(ap); } -void THPRINT(int verbLevel, const char *pcFormat, ...) +void THPRINT(int level, const char *fmt, ...) { va_list ap; - assert(th_initialized); + assert(th_initialized == TRUE); - /* Check if the current verbosity level is enough */ - if (th_verbosityLevel >= verbLevel) { - va_start(ap, pcFormat); - vfprintf(stderr, pcFormat, ap); - va_end(ap); - } + va_start(ap, fmt); + THPRINT_V(level, fmt, ap); + va_end(ap); }