MRXT: The Multi-Robot eXploration Tool
Multi-Robot autonomous exploration and mapping simulator.
|
00001 /* 00002 * 00003 * Author: Miguel Julia <mjulia@umh.es> 00004 * 00005 * Date: 2010 00006 * 00007 * Class explorer 00008 * 00009 */ 00010 00011 #pragma once 00012 #ifndef __EXPLORER__ 00013 #define __EXPLORER__ 00014 00015 #include "robot.h" 00016 00017 #define HYBRIDPLANNER 0 00018 #define FSAPLANNER 1 00019 #define FRONTIERGREEDYPLANNER 2 00020 #define IGPLANNER 3 00021 #define COORDINATEDPLANNER 4 00022 #define MARKETPLANNER 5 00023 #define INTEGRATEDIGPLANNER 6 00024 00025 #define REACTIVEGAUSS 0 00026 #define REACTIVEINV 1 00027 00028 /** 00029 * 00030 * @brief Implements the architecture of a mobile robot that explores the environment 00031 * 00032 */ 00033 00034 class explorer: public robot{ 00035 00036 /////////////////////////////////////////////////////////////////////// 00037 //------------------------- Attributes ------------------------------ 00038 /////////////////////////////////////////////////////////////////////// 00039 private: 00040 00041 int plantype; 00042 int reactype; 00043 00044 //--------------------------------------------------------------------- 00045 /////////////////////////////////////////////////////////////////////// 00046 00047 /////////////////////////////////////////////////////////////////////// 00048 //------------------------- Methods --------------------------------- 00049 /////////////////////////////////////////////////////////////////////// 00050 public: 00051 /// Default Constructor 00052 explorer(); 00053 /// Default Destructor 00054 virtual ~explorer(); 00055 00056 /// Constructor 00057 /// \param number ID number 00058 /// \param scene reference to virtual world object 00059 /// \param slamProc reference to slam object 00060 explorer(int number, slamInterface& slamProc, worldModelInterface& scene, const ConfigFile& config); 00061 /// Initializer 00062 /// \param number ID number 00063 /// \param scene virtual world 00064 /// \param slamProc pointer to slam object 00065 void initialize(int number, slamInterface& slamProc, worldModelInterface& scene, const ConfigFile& config); 00066 00067 /// Initiatites the hybrid exploration of the environment 00068 void start(); 00069 00070 /// stops all actions execution 00071 void stop(); 00072 //--------------------------------------------------------------------- 00073 /////////////////////////////////////////////////////////////////////// 00074 }; 00075 00076 00077 #endif 00078