00001 /********************************************************* 00002 * 00003 * This source code is part of the Carnegie Mellon Robot 00004 * Navigation Toolkit (CARMEN) 00005 * 00006 * CARMEN Copyright (c) 2002 Michael Montemerlo, Nicholas 00007 * Roy, and Sebastian Thrun 00008 * 00009 * CARMEN is free software; you can redistribute it and/or 00010 * modify it under the terms of the GNU General Public 00011 * License as published by the Free Software Foundation; 00012 * either version 2 of the License, or (at your option) 00013 * any later version. 00014 * 00015 * CARMEN is distributed in the hope that it will be useful, 00016 * but WITHOUT ANY WARRANTY; without even the implied 00017 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00018 * PURPOSE. See the GNU General Public License for more 00019 * details. 00020 * 00021 * You should have received a copy of the GNU General 00022 * Public License along with CARMEN; if not, write to the 00023 * Free Software Foundation, Inc., 59 Temple Place, 00024 * Suite 330, Boston, MA 02111-1307 USA 00025 * 00026 ********************************************************/ 00027 00028 00030 // @{ 00031 00039 #ifndef CARMEN_SERIAL_H 00040 #define CARMEN_SERIAL_H 00041 00042 #ifdef __cplusplus 00043 extern "C" { 00044 #endif 00045 00052 int carmen_serial_connect(int *dev_fd, char *dev_name); 00053 00054 00061 void carmen_serial_configure(int dev_fd, int baudrate, char *parity); 00062 00068 long carmen_serial_numChars(int dev_fd); 00069 00075 int carmen_serial_ClearInputBuffer(int dev_fd); 00076 00084 int carmen_serial_writen(int dev_fd, unsigned char *buf, int nChars); 00085 00093 int carmen_serial_readn(int dev_fd, unsigned char *buf, int nChars); 00094 00100 int carmen_serial_close(int dev_fd); 00101 00110 int carmen_serial_set_low_latency(int fd); 00111 00112 #ifdef __cplusplus 00113 } 00114 #endif 00115 00116 #endif 00117 // @}