aliguori | 376253e | 2009-03-05 23:01:23 +0000 | [diff] [blame] | 1 | #ifndef MONITOR_H |
| 2 | #define MONITOR_H |
| 3 | |
| 4 | #include "qemu-common.h" |
| 5 | #include "qemu-char.h" |
Luiz Capitulino | cdb0def | 2009-08-28 15:27:11 -0300 | [diff] [blame] | 6 | #include "qdict.h" |
aliguori | 376253e | 2009-03-05 23:01:23 +0000 | [diff] [blame] | 7 | #include "block.h" |
| 8 | |
| 9 | extern Monitor *cur_mon; |
| 10 | |
aliguori | 731b036 | 2009-03-05 23:01:42 +0000 | [diff] [blame] | 11 | /* flags for monitor_init */ |
| 12 | #define MONITOR_IS_DEFAULT 0x01 |
aliguori | cde76ee | 2009-03-05 23:01:51 +0000 | [diff] [blame] | 13 | #define MONITOR_USE_READLINE 0x02 |
Luiz Capitulino | 418173c | 2009-11-26 22:58:51 -0200 | [diff] [blame] | 14 | #define MONITOR_USE_CONTROL 0x04 |
aliguori | 731b036 | 2009-03-05 23:01:42 +0000 | [diff] [blame] | 15 | |
Luiz Capitulino | 0d1ea87 | 2009-11-26 22:59:03 -0200 | [diff] [blame] | 16 | /* QMP events */ |
| 17 | typedef enum MonitorEvent { |
Luiz Capitulino | b1a15e7 | 2009-11-26 22:59:04 -0200 | [diff] [blame] | 18 | EVENT_DEBUG, |
| 19 | EVENT_SHUTDOWN, |
| 20 | EVENT_RESET, |
| 21 | EVENT_POWERDOWN, |
| 22 | EVENT_STOP, |
Luiz Capitulino | 0d1ea87 | 2009-11-26 22:59:03 -0200 | [diff] [blame] | 23 | EVENT_MAX, |
| 24 | } MonitorEvent; |
| 25 | |
| 26 | void monitor_protocol_event(MonitorEvent event, QObject *data); |
Luiz Capitulino | adcb181 | 2009-11-26 22:58:52 -0200 | [diff] [blame] | 27 | const char *monitor_cmdline_parse(const char *cmdline, int *flags); |
aliguori | 731b036 | 2009-03-05 23:01:42 +0000 | [diff] [blame] | 28 | void monitor_init(CharDriverState *chr, int flags); |
aliguori | 376253e | 2009-03-05 23:01:23 +0000 | [diff] [blame] | 29 | |
aliguori | cde76ee | 2009-03-05 23:01:51 +0000 | [diff] [blame] | 30 | int monitor_suspend(Monitor *mon); |
aliguori | 376253e | 2009-03-05 23:01:23 +0000 | [diff] [blame] | 31 | void monitor_resume(Monitor *mon); |
| 32 | |
| 33 | void monitor_read_bdrv_key_start(Monitor *mon, BlockDriverState *bs, |
| 34 | BlockDriverCompletionFunc *completion_cb, |
| 35 | void *opaque); |
| 36 | |
Mark McLoughlin | 7768e04 | 2009-07-22 09:11:41 +0100 | [diff] [blame] | 37 | int monitor_get_fd(Monitor *mon, const char *fdname); |
| 38 | |
aliguori | 376253e | 2009-03-05 23:01:23 +0000 | [diff] [blame] | 39 | void monitor_vprintf(Monitor *mon, const char *fmt, va_list ap); |
| 40 | void monitor_printf(Monitor *mon, const char *fmt, ...) |
| 41 | __attribute__ ((__format__ (__printf__, 2, 3))); |
| 42 | void monitor_print_filename(Monitor *mon, const char *filename); |
| 43 | void monitor_flush(Monitor *mon); |
| 44 | |
| 45 | #endif /* !MONITOR_H */ |