]>
Commit | Line | Data |
---|---|---|
376253ec AL |
1 | #ifndef MONITOR_H |
2 | #define MONITOR_H | |
3 | ||
737e150e | 4 | #include "block/block.h" |
112ed241 | 5 | #include "qapi/qapi-types-misc.h" |
0150cd81 | 6 | #include "qemu/readline.h" |
58519090 | 7 | #include "exec/hwaddr.h" |
376253ec | 8 | |
5f9dba16 | 9 | typedef struct MonitorHMP MonitorHMP; |
f2098725 | 10 | typedef struct MonitorOptions MonitorOptions; |
376253ec | 11 | |
9ab84470 PX |
12 | #define QMP_REQ_QUEUE_LEN_MAX 8 |
13 | ||
c3e95551 KW |
14 | extern QemuOptsList qemu_mon_opts; |
15 | ||
947e4744 | 16 | Monitor *monitor_cur(void); |
e69ee454 | 17 | Monitor *monitor_set_cur(Coroutine *co, Monitor *mon); |
489653b5 | 18 | bool monitor_cur_is_qmp(void); |
6620d3ce | 19 | |
6adf08dd | 20 | void monitor_init_globals(void); |
1d95db74 | 21 | void monitor_init_globals_core(void); |
f27a9bb3 | 22 | void monitor_init_qmp(Chardev *chr, bool pretty, Error **errp); |
8e9119a8 | 23 | void monitor_init_hmp(Chardev *chr, bool use_readline, Error **errp); |
a2f411c4 | 24 | int monitor_init(MonitorOptions *opts, bool allow_hmp, Error **errp); |
c3e95551 | 25 | int monitor_init_opts(QemuOpts *opts, Error **errp); |
2ef45716 | 26 | void monitor_cleanup(void); |
376253ec | 27 | |
cde76ee1 | 28 | int monitor_suspend(Monitor *mon); |
376253ec AL |
29 | void monitor_resume(Monitor *mon); |
30 | ||
a9940fc4 | 31 | int monitor_get_fd(Monitor *mon, const char *fdname, Error **errp); |
1677f4c6 | 32 | int monitor_fd_param(Monitor *mon, const char *fdname, Error **errp); |
7768e04c | 33 | |
bf0c50d4 | 34 | int monitor_puts(Monitor *mon, const char *str); |
679cb8e1 | 35 | int monitor_vprintf(Monitor *mon, const char *fmt, va_list ap) |
9edc6313 MAL |
36 | G_GNUC_PRINTF(2, 0); |
37 | int monitor_printf(Monitor *mon, const char *fmt, ...) G_GNUC_PRINTF(2, 3); | |
dd00d7fa | 38 | void monitor_printc(Monitor *mon, int ch); |
376253ec | 39 | void monitor_flush(Monitor *mon); |
dcba65f8 | 40 | int monitor_set_cpu(Monitor *mon, int cpu_index); |
87e6f4a4 | 41 | int monitor_get_cpu_index(Monitor *mon); |
376253ec | 42 | |
4cb96b97 PB |
43 | int monitor_puts_locked(Monitor *mon, const char *str); |
44 | void monitor_flush_locked(Monitor *mon); | |
45 | ||
c7f7e697 TFF |
46 | void *gpa2hva(MemoryRegion **p_mr, hwaddr addr, uint64_t size, Error **errp); |
47 | ||
5f9dba16 KW |
48 | void monitor_read_command(MonitorHMP *mon, int show_prompt); |
49 | int monitor_read_password(MonitorHMP *mon, ReadLineFunc *readline_func, | |
7060b478 | 50 | void *opaque); |
d6f46833 | 51 | |
e446f70d | 52 | AddfdInfo *monitor_fdset_add_fd(int fd, bool has_fdset_id, int64_t fdset_id, |
9492718b | 53 | const char *opaque, Error **errp); |
60efffa4 | 54 | int monitor_fdset_dup_fd_add(int64_t fdset_id, int flags); |
b3dd1b8c | 55 | void monitor_fdset_dup_fd_remove(int dup_fd); |
854f63d4 | 56 | int64_t monitor_fdset_dup_fd_find(int dup_fd); |
adb696f3 | 57 | |
f0e48cbd GH |
58 | void monitor_register_hmp(const char *name, bool info, |
59 | void (*cmd)(Monitor *mon, const QDict *qdict)); | |
f9429c67 DB |
60 | void monitor_register_hmp_info_hrt(const char *name, |
61 | HumanReadableText *(*handler)(Error **errp)); | |
f0e48cbd | 62 | |
756a98dd MAL |
63 | int error_vprintf_unless_qmp(const char *fmt, va_list ap) G_GNUC_PRINTF(1, 0); |
64 | int error_printf_unless_qmp(const char *fmt, ...) G_GNUC_PRINTF(1, 2); | |
65 | ||
175de524 | 66 | #endif /* MONITOR_H */ |