1
/*
2
* \brief Formatted output
3
* \author Christian Helmuth
4
* \date 2008-08-15
5
*/
6
7
/*
8
* Copyright (C) 2008-2013 Genode Labs GmbH
9
*
10
* This file is part of the Genode OS framework, which is distributed
11
* under the terms of the GNU General Public License version 2.
12
*/
13
14
#
ifndef _INCLUDE__DDE_KIT__PRINTF_H_
15
#
define _INCLUDE__DDE_KIT__PRINTF_H_
16
17
#
include <stdarg.h>
18
19
/**
20
* Print message
21
*
22
* \param msg message string
23
*/
24
void
dde_kit_print(
const
char *
msg
)
;
25
26
/**
27
* Print formatted message (varargs variant)
28
*
29
* \param fmt format string
30
*/
31
void
dde_kit_printf(
const
char *
fmt
,
.
.
.
)
__attribute__ (
(
format (
printf,
1,
2)
)
)
;
32
33
/**
34
* Print formatted message (va_list variant)
35
*
36
* \param fmt format string
37
* \param va variable argument list
38
*/
39
void
dde_kit_vprintf(
const
char *
fmt
,
va_list
va
)
__attribute__ (
(
format (
printf,
1,
0)
)
)
;
40
41
/**
42
* Log current function and message
43
*
44
* \param doit if false logging is suppressed
45
* \param msg format string plus arguments
46
*/
47
#
define dde_kit_log(doit, msg...) \
48
do { \
49
if (doit) { \
50
dde_kit_printf("%s(): "
, __func__); \
51
dde_kit_printf(msg); \
52
dde_kit_printf("\n"
); \
53
} \
54
} while(0);
55
56
#
endif /* _INCLUDE__DDE_KIT__PRINTF_H_ */