1 /* Output generating routines for GDB CLI. 2 Copyright (C) 1999, 2000, 2007, 2008, 2009, 2010, 2011 3 Free Software Foundation, Inc. 4 Contributed by Cygnus Solutions. 5 6 This file is part of GDB. 7 8 This program is free software; you can redistribute it and/or modify 9 it under the terms of the GNU General Public License as published by 10 the Free Software Foundation; either version 3 of the License, or 11 (at your option) any later version. 12 13 This program is distributed in the hope that it will be useful, 14 but WITHOUT ANY WARRANTY; without even the implied warranty of 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 GNU General Public License for more details. 17 18 You should have received a copy of the GNU General Public License 19 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 20 21 #ifndef CLI_OUT_H 22 #define CLI_OUT_H 23 24 #include "ui-out.h" 25 #include "vec.h" 26 27 /* Used for cli_ui_out_data->streams. */ 28 29 typedef struct ui_file *ui_filep; 30 DEF_VEC_P (ui_filep); 31 32 /* These are exported so that they can be extended by other `ui_out' 33 implementations, like TUI's. */ 34 35 struct cli_ui_out_data 36 { 37 VEC (ui_filep) *streams; 38 int suppress_output; 39 }; 40 41 extern struct ui_out_impl cli_ui_out_impl; 42 43 44 extern struct ui_out *cli_out_new (struct ui_file *stream); 45 46 extern void cli_out_data_ctor (struct cli_ui_out_data *data, 47 struct ui_file *stream); 48 49 extern struct ui_file *cli_out_set_stream (struct ui_out *uiout, 50 struct ui_file *stream); 51 52 #endif 53