59 #define MAXSTRINGLENGTH 1000
64 static int outlevel = -1;
67 static const char *callers[MAXLEVEL];
70 static char printbuffer[MAXSTRINGLENGTH];
73 static const char *domain =
"Undefined domain";
77 static bool initialized =
false;
79 static int number_of_warnings = 0;
113 number_of_warnings = 0;
123 cpl_msg_set_indentation(2);
137 #if WANT_TIME_MEASURE
138 cpl_msg_set_time_on();
140 cpl_msg_set_time_off();
143 cpl_msg_set_domain_on();
144 cpl_msg_set_component_off();
175 if (level + 1 < MAXLEVEL)
178 cpl_msg_indent_more();
180 callers[level] = fct;
208 if (level >= MAXLEVEL || strcmp(callers[level], fct) == 0)
214 cpl_msg_indent_less();
220 callers[level], fct);
242 va_start(al, format);
243 vsnprintf(printbuffer, MAXSTRINGLENGTH - 1, format, al);
246 printbuffer[MAXSTRINGLENGTH - 1] =
'\0';
248 if (outlevel < 0 || level <= outlevel)
251 cpl_msg_info(fct,
"%s", printbuffer);
256 cpl_msg_debug(fct,
"%s", printbuffer);
268 return number_of_warnings;
283 number_of_warnings += n;
308 va_start(al, format);
309 vsnprintf(printbuffer, MAXSTRINGLENGTH - 1, format, al);
312 printbuffer[MAXSTRINGLENGTH - 1] =
'\0';
314 cpl_msg_warning(fct,
"%s", printbuffer);
316 number_of_warnings += 1;
339 cpl_msg_set_domain(d);
const char * uves_msg_get_domain(void)
Get current message domain.
void uves_msg_init(int olevel, const char *dom)
Initialize messaging.
void uves_msg_softer_macro(const char *fct)
Decrease message volume.
void uves_msg_louder_macro(const char *fct)
Increase message volume.
#define uves_msg_warning(...)
Print an warning message.
void uves_msg_set_level(int olevel)
Set output level.
int uves_msg_get_warnings(void)
Get number of warnings printed so far.
void uves_msg_add_warnings(int n)
Accumulate warnings.
void uves_msg_macro(const char *fct, const char *format,...)
Print a message on 'info' or 'debug' level.
void uves_msg_warning_macro(const char *fct, const char *format,...)
Print a warning message.
void uves_msg_set_domain(const char *d)
Set message domain.