Removes Ivy annotations (XCC)
[akaros.git] / kern / include / stdio.h
1 #ifndef ROS_INC_STDIO_H
2 #define ROS_INC_STDIO_H
3
4 #include <ros/common.h>
5 #include <stdarg.h>
6 #include <kdebug.h>
7
8 #ifndef NULL
9 #define NULL    ((void *) 0)
10 #endif /* !NULL */
11
12 //#define DEBUG
13 #ifdef DEBUG
14 #define printd(args...) cprintf(args)
15 #else
16 #define printd(args...) {}
17 #endif
18
19 #define printk(args...) cprintf(args)
20 #define I_AM_HERE printk("Core %d is in %s() at %s:%d\n", core_id(), \
21                          __FUNCTION__, __FILE__, __LINE__);
22
23 // lib/stdio.c
24 void    cputchar(int c);
25 void    cputbuf(const char *buf, int len);
26 int     getchar(void);
27 int     iscons(int fd);
28
29 // lib/printfmt.c
30 void    printfmt(void (*putch)(int, void**), void **putdat, const char *fmt, ...);
31 void    vprintfmt(void (*putch)(int, void**), void **putdat, const char *fmt, va_list);
32
33 // lib/printf.c
34 int     ( cprintf)(const char *fmt, ...);
35 int     vcprintf(const char *fmt, va_list);
36
37 // lib/sprintf.c
38 int     snprintf(char *str, int size, const char *fmt, ...);
39 int     vsnprintf(char *str, int size, const char *fmt, va_list);
40
41 // lib/fprintf.c
42 int     printf(const char *fmt, ...);
43 int     fprintf(int fd, const char *fmt, ...);
44 int     vfprintf(int fd, const char *fmt, va_list);
45
46 // lib/readline.c
47 int readline(char *buf, size_t buf_l, const char *prompt, ...);
48
49 char *seprintf(char *buf, char *end, const char *fmt, ...);
50
51 // kern/src/net/eipconv.c
52 void printemac(void (*putch)(int, void**), void **putdat, uint8_t *mac);
53 void printip(void (*putch)(int, void**), void **putdat, uint8_t *ip);
54 void printipmask(void (*putch)(int, void**), void **putdat, uint8_t *ip);
55 void printipv4(void (*putch)(int, void**), void **putdat, uint8_t *ip);
56
57 /* #K */
58 void trace_printk(const char *fmt, ...);
59
60 /* vsprintf.c (linux) */
61 int vsscanf(const char *buf, const char *fmt, va_list args);
62 int sscanf(const char *buf, const char *fmt, ...);
63
64 #endif /* !ROS_INC_STDIO_H */