Main MRPT website > C++ reference for MRPT 1.5.7
CHolonomicVFF.h
Go to the documentation of this file.
1 /* +---------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2017, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +---------------------------------------------------------------------------+ */
9 #ifndef CHolonomicVFF_H
10 #define CHolonomicVFF_H
11 
15 
16 
17 namespace mrpt
18 {
19  namespace nav
20  {
21  DEFINE_SERIALIZABLE_PRE_CUSTOM_BASE_LINKAGE( CLogFileRecord_VFF, CHolonomicLogFileRecord, NAV_IMPEXP )
22  /** \addtogroup nav_holo Holonomic navigation methods
23  * \ingroup mrpt_nav_grp
24  * @{ */
25 
26  /** A class for storing extra information about the execution of
27  * CHolonomicVFF navigation.
28  * \sa CHolonomicVFF, CHolonomicLogFileRecord
29  */
31  {
33  public:
34 
35  };
37 
38 
40  /** A holonomic reactive navigation method, based on Virtual Force Fields (VFF).
41  *
42  * These are the optional parameters of the method which can be set by means of a configuration file passed to the constructor or to CHolonomicND::initialize (see also the field CHolonomicVFF::options).
43  *
44  * \code
45  * # Section name can be changed via setConfigFileSectionName()
46  * [VFF_CONFIG]
47  * TARGET_SLOW_APPROACHING_DISTANCE = 0.10 // For stopping gradually
48  * TARGET_ATTRACTIVE_FORCE = 20 // Dimension-less (may have to be tuned depending on the density of obstacle sampling)
49  * \endcode
50  *
51  * \sa CAbstractHolonomicReactiveMethod,CReactiveNavigationSystem
52  */
54  {
56  public:
57  /** Initialize the parameters of the navigator, from some configuration file, or default values if set to NULL. */
58  CHolonomicVFF(const mrpt::utils::CConfigFileBase *INI_FILE=NULL);
59 
60  // See base class docs
61  void navigate(const NavInput & ni, NavOutput &no) MRPT_OVERRIDE;
62 
63  void initialize(const mrpt::utils::CConfigFileBase &INI_FILE) MRPT_OVERRIDE; // See base class docs
64  virtual void saveConfigFile(mrpt::utils::CConfigFileBase &c) const MRPT_OVERRIDE; // See base class docs
65 
66  /** Algorithm options */
68  {
69  double TARGET_SLOW_APPROACHING_DISTANCE; //!< For stopping gradually (Default: 0.10)
70  double TARGET_ATTRACTIVE_FORCE; //!< Dimension-less (may have to be tuned depending on the density of obstacle sampling) (Default: 20)
71 
72  TOptions();
73  void loadFromConfigFile(const mrpt::utils::CConfigFileBase &source,const std::string &section) MRPT_OVERRIDE; // See base docs
74  void saveToConfigFile(mrpt::utils::CConfigFileBase &cfg ,const std::string &section) const MRPT_OVERRIDE; // See base docs
75  };
76 
77  TOptions options; //!< Parameters of the algorithm (can be set manually or loaded from CHolonomicVFF::initialize or options.loadFromConfigFile(), etc.)
78 
81 
82  };
83  DEFINE_SERIALIZABLE_POST_CUSTOM_BASE_LINKAGE( CHolonomicVFF, CAbstractHolonomicReactiveMethod, NAV_IMPEXP )
84  /** @} */
85  }
86 }
87 
88 
89 #endif
90 
91 
92 
A holonomic reactive navigation method, based on Virtual Force Fields (VFF).
Definition: CHolonomicVFF.h:53
#define MRPT_OVERRIDE
C++11 "override" for virtuals:
A class for storing extra information about the execution of CHolonomicVFF navigation.
Definition: CHolonomicVFF.h:30
A base class for holonomic reactive navigation methods.
double TARGET_ATTRACTIVE_FORCE
Dimension-less (may have to be tuned depending on the density of obstacle sampling) (Default: 20) ...
Definition: CHolonomicVFF.h:70
TOptions options
Parameters of the algorithm (can be set manually or loaded from CHolonomicVFF::initialize or options...
Definition: CHolonomicVFF.h:77
This class allows loading and storing values and vectors of different types from a configuration text...
#define DEFINE_SERIALIZABLE_PRE_CUSTOM_BASE_LINKAGE(class_name, base_name, _LINKAGE_)
This declaration must be inserted in all CSerializable classes definition, before the class declarati...
const GLubyte * c
Definition: glext.h:5590
A base class for log records for different holonomic navigation methods.
void setTargetApproachSlowDownDistance(const double dist) MRPT_OVERRIDE
Sets the actual value of this parameter [m].
Definition: CHolonomicVFF.h:80
GLsizei const GLchar ** string
Definition: glext.h:3919
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
#define DEFINE_SERIALIZABLE(class_name)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
GLsizei GLsizei GLchar * source
Definition: glext.h:3908
Input parameters for CAbstractHolonomicReactiveMethod::navigate()
#define DEFINE_SERIALIZABLE_POST_CUSTOM_BASE_LINKAGE(class_name, base_name, _LINKAGE_)
Output for CAbstractHolonomicReactiveMethod::navigate()
double getTargetApproachSlowDownDistance() const MRPT_OVERRIDE
Returns the actual value of this parameter [m], as set via the children class options structure...
Definition: CHolonomicVFF.h:79
This is a virtual base class for sets of options than can be loaded from and/or saved to configuratio...
double TARGET_SLOW_APPROACHING_DISTANCE
For stopping gradually (Default: 0.10)
Definition: CHolonomicVFF.h:69



Page generated by Doxygen 1.8.14 for MRPT 1.5.7 Git: 5902e14cc Wed Apr 24 15:04:01 2019 +0200 at lun oct 28 01:39:17 CET 2019