MRXT: The Multi-Robot eXploration Tool
Multi-Robot autonomous exploration and mapping simulator.
include/architecture/basics/explorer.h
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 
 All Classes Functions Variables Typedefs