1 /* Generic serial interface functions. 2 3 Copyright (C) 2005-2013 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 SER_BASE_H 21 #define SER_BASE_H 22 23 struct serial; 24 struct ui_file; 25 26 extern int generic_readchar (struct serial *scb, int timeout, 27 int (*do_readchar) (struct serial *scb, 28 int timeout)); 29 extern int ser_base_flush_output (struct serial *scb); 30 extern int ser_base_flush_input (struct serial *scb); 31 extern int ser_base_send_break (struct serial *scb); 32 extern void ser_base_raw (struct serial *scb); 33 extern serial_ttystate ser_base_get_tty_state (struct serial *scb); 34 extern serial_ttystate ser_base_copy_tty_state (struct serial *scb, 35 serial_ttystate ttystate); 36 extern int ser_base_set_tty_state (struct serial *scb, 37 serial_ttystate ttystate); 38 extern void ser_base_print_tty_state (struct serial *scb, 39 serial_ttystate ttystate, 40 struct ui_file *stream); 41 extern int ser_base_noflush_set_tty_state (struct serial *scb, 42 serial_ttystate new_ttystate, 43 serial_ttystate old_ttystate); 44 extern int ser_base_setbaudrate (struct serial *scb, int rate); 45 extern int ser_base_setstopbits (struct serial *scb, int rate); 46 extern int ser_base_drain_output (struct serial *scb); 47 48 extern int ser_base_write (struct serial *scb, const char *str, int len); 49 50 extern void ser_base_async (struct serial *scb, int async_p); 51 extern int ser_base_readchar (struct serial *scb, int timeout); 52 53 #endif 54