robot_interface.h

Go to the documentation of this file.
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 
00029 // @{
00030 
00038 #ifndef CARMEN_ROBOT_INTERFACE_H
00039 #define CARMEN_ROBOT_INTERFACE_H
00040 
00041 #include <carmen/robot_messages.h>
00042 
00043 #ifdef __cplusplus
00044 extern "C" {
00045 #endif
00046 
00047 #ifndef COMPILE_WITHOUT_LASER_SUPPORT
00048 void carmen_robot_subscribe_frontlaser_message
00049 (carmen_robot_laser_message *laser, carmen_handler_t handler,
00050  carmen_subscribe_t subscribe_how);
00051 
00052 void carmen_robot_subscribe_rearlaser_message
00053 (carmen_robot_laser_message *laser, carmen_handler_t handler,
00054  carmen_subscribe_t subscribe_how);
00055 #endif
00056 
00057 void carmen_robot_subscribe_sonar_message
00058 (carmen_robot_sonar_message *sonar, carmen_handler_t handler,
00059  carmen_subscribe_t subscribe_how);
00060 
00061 void carmen_robot_subscribe_vector_status_message
00062 (carmen_robot_vector_status_message *vector, carmen_handler_t handler,
00063  carmen_subscribe_t subscribe_how);
00064 
00065 void carmen_robot_subscribe_base_binary_data_message
00066 (carmen_base_binary_data_message *base_data, carmen_handler_t handler,
00067  carmen_subscribe_t subscribe_how);
00068 
00069 void carmen_robot_velocity_command(double tv, double rv);
00070 void carmen_robot_move_along_vector(double distance, double theta);
00071 void carmen_robot_follow_trajectory(carmen_traj_point_t *trajectory, int trajectory_length,
00072                                     carmen_traj_point_t *robot);
00073 void carmen_robot_send_base_binary_command(unsigned char *data, int length);
00074 
00075 #ifdef __cplusplus
00076 }
00077 #endif
00078 
00079 #endif
00080 // @}

Generated on Wed Apr 5 18:34:18 2006 for CARMEN by  doxygen 1.4.4