]>
git.proxmox.com Git - qemu.git/blob - include/monitor/readline.h
4 #include "qemu-common.h"
6 #define READLINE_CMD_BUF_SIZE 4095
7 #define READLINE_MAX_CMDS 64
8 #define READLINE_MAX_COMPLETIONS 256
10 typedef void ReadLineFunc(Monitor
*mon
, const char *str
, void *opaque
);
11 typedef void ReadLineCompletionFunc(Monitor
*mon
,
14 typedef struct ReadLineState
{
15 char cmd_buf
[READLINE_CMD_BUF_SIZE
+ 1];
19 char last_cmd_buf
[READLINE_CMD_BUF_SIZE
+ 1];
20 int last_cmd_buf_index
;
21 int last_cmd_buf_size
;
26 char *history
[READLINE_MAX_CMDS
];
29 ReadLineCompletionFunc
*completion_finder
;
30 char *completions
[READLINE_MAX_COMPLETIONS
];
34 ReadLineFunc
*readline_func
;
35 void *readline_opaque
;
41 void readline_add_completion(ReadLineState
*rs
, const char *str
);
42 void readline_set_completion_index(ReadLineState
*rs
, int completion_index
);
44 const char *readline_get_history(ReadLineState
*rs
, unsigned int index
);
46 void readline_handle_byte(ReadLineState
*rs
, int ch
);
48 void readline_start(ReadLineState
*rs
, const char *prompt
, int read_password
,
49 ReadLineFunc
*readline_func
, void *opaque
);
50 void readline_restart(ReadLineState
*rs
);
51 void readline_show_prompt(ReadLineState
*rs
);
53 ReadLineState
*readline_init(Monitor
*mon
,
54 ReadLineCompletionFunc
*completion_finder
);
56 #endif /* !READLINE_H */