38#include "gdbsupport/event-loop.h"
70 nc->
ack (
remote, nc, buf, event.release ());
84 nc->
parse (remote, nc, buf, event.get ());
86 return event.release ();
101 gdb_assert (nc != except);
126 for (i = 0; i < ARRAY_SIZE (
notifs); i++)
130 if (startswith (buf,
name)
131 && buf[strlen (
name)] ==
':')
137 if (i == ARRAY_SIZE (
notifs))
149 "notif: ignoring resent notification\n");
206 "notif: Notification '%s' captured\n",
224 notif_state,
"remote-notif");
249Set debugging of async remote notification."), _(
"\
250Show debugging of async remote notification."), _(
"\
251When non-zero, debugging output about async remote notifications"
void mark_async_event_handler(async_event_handler *async_handler_ptr)
async_event_handler * create_async_event_handler(async_event_handler_func *proc, gdb_client_data client_data, const char *name)
void clear_async_event_handler(async_event_handler *async_handler_ptr)
void delete_async_event_handler(async_event_handler **async_handler_ptr)
struct cmd_list_element * showdebuglist
struct cmd_list_element * setdebuglist
set_show_commands add_setshow_boolean_cmd(const char *name, enum command_class theclass, bool *var, const char *set_doc, const char *show_doc, const char *help_doc, cmd_func_ftype *set_func, show_value_ftype *show_func, struct cmd_list_element **set_list, struct cmd_list_element **show_list)
void handle_notification(struct remote_notif_state *state, const char *buf)
struct remote_notif_state * remote_notif_state_allocate(remote_target *remote)
void remote_notif_process(struct remote_notif_state *state, const notif_client *except)
static const notif_client *const notifs[]
void remote_notif_ack(remote_target *remote, const notif_client *nc, const char *buf)
static void remote_async_get_pending_events_handler(gdb_client_data data)
struct notif_event * remote_notif_parse(remote_target *remote, const notif_client *nc, const char *buf)
gdb_static_assert(ARRAY_SIZE(notifs)==REMOTE_NOTIF_LAST)
std::unique_ptr< notif_event > notif_event_up
const notif_client notif_client_stop
void remote_notif_get_pending_events(remote_target *remote, const notif_client *nc)
bool remote_target_is_non_stop_p(remote_target *t)
void(* ack)(remote_target *remote, const notif_client *self, const char *buf, struct notif_event *event)
void(* parse)(remote_target *remote, const notif_client *self, const char *buf, struct notif_event *event)
notif_event_up(* alloc_event)()
int(* can_get_pending_events)(remote_target *remote, const notif_client *self)
std::list< const notif_client * > notif_queue
struct async_event_handler * get_pending_events_token
struct notif_event * pending_event[REMOTE_NOTIF_LAST]
bool target_is_non_stop_p()
void gdb_printf(struct ui_file *stream, const char *format,...)