X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fevent-loop.h;h=155dafad9184bae9667a946babac3c870dad31e1;hb=5fe966540d6b748f825774868463003700f0c878;hp=16c228637c2fba3ca7f5c422d8e0ff76130c5bf8;hpb=28e7fd62340426746f9c896cbc40c5d374ec47aa;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/event-loop.h b/gdb/event-loop.h index 16c228637c..155dafad91 100644 --- a/gdb/event-loop.h +++ b/gdb/event-loop.h @@ -1,5 +1,5 @@ /* Definitions used by the GDB event loop. - Copyright (C) 1999-2013 Free Software Foundation, Inc. + Copyright (C) 1999-2016 Free Software Foundation, Inc. Written by Elena Zannoni of Cygnus Solutions. This file is part of GDB. @@ -75,18 +75,6 @@ typedef void (sig_handler_func) (gdb_client_data); typedef void (async_event_handler_func) (gdb_client_data); typedef void (timer_handler_func) (gdb_client_data); -/* Where to add an event onto the event queue, by queue_event. */ -typedef enum - { - /* Add at tail of queue. It will be processed in first in first - out order. */ - TAIL, - /* Add at head of queue. It will be processed in last in first - out order. */ - HEAD - } -queue_position; - /* Exported functions from event-loop.c */ extern void start_event_loop (void); @@ -114,6 +102,15 @@ void call_async_signal_handler (struct async_signal_handler *handler); below, with IMMEDIATE_P == 0. */ void mark_async_signal_handler (struct async_signal_handler *handler); +/* Returns true if HANDLER is marked ready. */ + +extern int + async_signal_handler_is_marked (struct async_signal_handler *handler); + +/* Mark HANDLER as NOT ready. */ + +extern void clear_async_signal_handler (struct async_signal_handler *handler); + /* Wrapper for the body of signal handlers. Call this function from any SIGINT handler which needs to access GDB data structures or escape via longjmp. If IMMEDIATE_P is set, this triggers either @@ -142,3 +139,9 @@ extern void /* Call the handler from HANDLER the next time through the event loop. */ extern void mark_async_event_handler (struct async_event_handler *handler); + +/* Mark the handler (ASYNC_HANDLER_PTR) as NOT ready. */ + +extern void clear_async_event_handler (struct async_event_handler *handler); + +extern void initialize_async_signal_handlers (void);