]> git.proxmox.com Git - mirror_qemu.git/blame - include/monitor/monitor.h
Merge remote-tracking branch 'remotes/dgilbert/tags/pull-hmp-20170331' into staging
[mirror_qemu.git] / include / monitor / monitor.h
CommitLineData
376253ec
AL
1#ifndef MONITOR_H
2#define MONITOR_H
3
4#include "qemu-common.h"
7b1b5d19 5#include "qapi/qmp/qdict.h"
737e150e 6#include "block/block.h"
0150cd81 7#include "qemu/readline.h"
376253ec
AL
8
9extern Monitor *cur_mon;
10
731b0364 11/* flags for monitor_init */
bdbcb547 12/* 0x01 unused */
cde76ee1 13#define MONITOR_USE_READLINE 0x02
418173c7 14#define MONITOR_USE_CONTROL 0x04
39eaab9a 15#define MONITOR_USE_PRETTY 0x08
731b0364 16
489653b5 17bool monitor_cur_is_qmp(void);
6620d3ce 18
05875687 19void monitor_init_qmp_commands(void);
0ec7b3e7 20void monitor_init(Chardev *chr, int flags);
2ef45716 21void monitor_cleanup(void);
376253ec 22
cde76ee1 23int monitor_suspend(Monitor *mon);
376253ec
AL
24void monitor_resume(Monitor *mon);
25
0bbc47bb 26int monitor_read_bdrv_key_start(Monitor *mon, BlockDriverState *bs,
097310b5 27 BlockCompletionFunc *completion_cb,
0bbc47bb 28 void *opaque);
e42e818b 29int monitor_read_block_device_key(Monitor *mon, const char *device,
097310b5 30 BlockCompletionFunc *completion_cb,
e42e818b 31 void *opaque);
376253ec 32
a9940fc4 33int monitor_get_fd(Monitor *mon, const char *fdname, Error **errp);
1677f4c6 34int monitor_fd_param(Monitor *mon, const char *fdname, Error **errp);
7768e04c 35
8b7968f7
SW
36void monitor_vprintf(Monitor *mon, const char *fmt, va_list ap)
37 GCC_FMT_ATTR(2, 0);
e5924d89 38void monitor_printf(Monitor *mon, const char *fmt, ...) GCC_FMT_ATTR(2, 3);
caf15319 39int monitor_fprintf(FILE *stream, const char *fmt, ...) GCC_FMT_ATTR(2, 3);
376253ec 40void monitor_flush(Monitor *mon);
b025c8b4 41int monitor_set_cpu(int cpu_index);
99b7796f 42int monitor_get_cpu_index(void);
376253ec 43
7060b478 44void monitor_read_command(Monitor *mon, int show_prompt);
7060b478
AL
45int monitor_read_password(Monitor *mon, ReadLineFunc *readline_func,
46 void *opaque);
d6f46833 47
e446f70d
CB
48AddfdInfo *monitor_fdset_add_fd(int fd, bool has_fdset_id, int64_t fdset_id,
49 bool has_opaque, const char *opaque,
50 Error **errp);
adb696f3
CB
51int monitor_fdset_get_fd(int64_t fdset_id, int flags);
52int monitor_fdset_dup_fd_add(int64_t fdset_id, int dup_fd);
b3dd1b8c 53void monitor_fdset_dup_fd_remove(int dup_fd);
adb696f3
CB
54int monitor_fdset_dup_fd_find(int dup_fd);
55
175de524 56#endif /* MONITOR_H */