mi_load_progress: Use unique_ptr to manage ui_out lifetime
[external/binutils.git] / gdb / mi / mi-main.h
1 /* MI Internal Functions for GDB, the GNU debugger.
2
3    Copyright (C) 2003-2017 Free Software Foundation, Inc.
4
5    This file is part of GDB.
6
7    This program is free software; you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation; either version 3 of the License, or
10    (at your option) any later version.
11
12    This program is distributed in the hope that it will be useful,
13    but WITHOUT ANY WARRANTY; without even the implied warranty of
14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15    GNU General Public License for more details.
16
17    You should have received a copy of the GNU General Public License
18    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
19
20 #ifndef MI_MAIN_H
21 #define MI_MAIN_H
22
23 struct ui_file;
24
25 extern void mi_load_progress (const char *section_name,
26                               unsigned long sent_so_far,
27                               unsigned long total_section,
28                               unsigned long total_sent,
29                               unsigned long grand_total);
30
31 extern void mi_print_timing_maybe (struct ui_file *file);
32
33 /* Whether MI is in async mode.  */
34
35 extern int mi_async_p (void);
36
37 extern char *current_token;
38
39 extern int running_result_record_printed;
40 extern int mi_proceeded;
41
42 struct mi_suppress_notification
43 {
44   /* Breakpoint notification suppressed?  */
45   int breakpoint;
46   /* Command param changed notification suppressed?  */
47   int cmd_param_changed;
48   /* Traceframe changed notification suppressed?  */
49   int traceframe;
50   /* Memory changed notification suppressed?  */
51   int memory;
52   /* User selected context changed notification suppressed?  */
53   int user_selected_context;
54 };
55 extern struct mi_suppress_notification mi_suppress_notification;
56
57 #endif
58