localize_motion.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 
00039 #ifndef CARMEN_LOCALIZE_MOTION_H
00040 #define CARMEN_LOCALIZE_MOTION_H
00041 
00042 #ifdef __cplusplus
00043 extern "C" {
00044 #endif
00045 
00046 typedef struct {
00047   double mean_c_d;
00048   double mean_c_t;
00049   double std_dev_c_d;
00050   double std_dev_c_t;
00051 
00052   double mean_d_d;
00053   double mean_d_t;
00054   double std_dev_d_d;
00055   double std_dev_d_t;
00056 
00057   double mean_t_d;
00058   double mean_t_t;
00059   double std_dev_t_d;
00060   double std_dev_t_t;
00061 } carmen_localize_motion_model_t;
00062 
00063 carmen_localize_motion_model_t *carmen_localize_motion_initialize(int argc, char *argv[]);
00064 
00065 double carmen_localize_sample_noisy_downrange(double delta_t, 
00066                                               double delta_theta,
00067                                               carmen_localize_motion_model_t *model);
00068 
00069 double carmen_localize_sample_noisy_crossrange(double delta_t, 
00070                                                double delta_theta,
00071                                                carmen_localize_motion_model_t *model);
00072 
00073 double carmen_localize_sample_noisy_turn(double delta_t, 
00074                                          double delta_theta,
00075                                          carmen_localize_motion_model_t *model);
00076 
00077 #ifdef __cplusplus
00078 }
00079 #endif
00080 
00081 #endif
00082 // @}

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