-/* UI_FILE - a generic STDIO like output stream.
- Copyright (C) 1999, 2000, 2007, 2008 Free Software Foundation, Inc.
+/* TUI_FILE - a STDIO-like output stream for the TUI.
+ Copyright (C) 1999-2019 Free Software Foundation, Inc.
This file is part of GDB.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
-#ifndef TUI_FILE_H
-#define TUI_FILE_H
+#ifndef TUI_TUI_FILE_H
+#define TUI_TUI_FILE_H
-extern struct ui_file *tui_fileopen (FILE *);
-extern struct ui_file *tui_sfileopen (int);
-extern char *tui_file_get_strbuf (struct ui_file *);
-extern void tui_file_adjust_strbuf (int, struct ui_file *);
+#include "ui-file.h"
-#endif
+/* A STDIO-like output stream for the TUI. */
+
+class tui_file : public stdio_file
+{
+public:
+ explicit tui_file (FILE *stream);
+
+ void write (const char *buf, long length_buf) override;
+ void puts (const char *) override;
+ void flush () override;
+};
+
+#endif /* TUI_TUI_FILE_H */