Main MRPT website > C++ reference for MRPT 1.5.6
maps/CWirelessPowerGridMap2D.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 
10 #ifndef CWirelessPowerGridMap2D_H
11 #define CWirelessPowerGridMap2D_H
12 
15 
16 #include <mrpt/maps/link_pragmas.h>
17 
18 namespace mrpt
19 {
20 namespace maps
21 {
22  DEFINE_SERIALIZABLE_PRE_CUSTOM_BASE_LINKAGE( CWirelessPowerGridMap2D , CRandomFieldGridMap2D, MAPS_IMPEXP )
23 
24  /** CWirelessPowerGridMap2D represents a PDF of wifi concentrations over a 2D area.
25  *
26  * There are a number of methods available to build the wifi grid-map, depending on the value of
27  * "TMapRepresentation maptype" passed in the constructor (see CRandomFieldGridMap2D for a discussion).
28  *
29  * Update the map with insertIndividualReading() or insertObservation()
30  *
31  * \sa mrpt::maps::CRandomFieldGridMap2D, mrpt::maps::CMetricMap, mrpt::utils::CDynamicGrid, The application icp-slam, mrpt::maps::CMultiMetricMap
32  * \ingroup mrpt_maps_grp
33  */
35  {
36  // This must be added to any CSerializable derived class:
38  public:
39  /** Constructor */
40  CWirelessPowerGridMap2D(TMapRepresentation mapType = mrKernelDM, double x_min = -2, double x_max = 2, double y_min = -2, double y_max = 2, double resolution = 0.1);
41 
42  /** Destructor */
43  virtual ~CWirelessPowerGridMap2D();
44 
45  /** Parameters related with inserting observations into the map:
46  */
48  public utils::CLoadableOptions,
50  {
51  TInsertionOptions(); //!< Default values loader
52 
53  void loadFromConfigFile(const mrpt::utils::CConfigFileBase &source,const std::string &section) MRPT_OVERRIDE; // See base docs
54  void dumpToTextStream(mrpt::utils::CStream &out) const MRPT_OVERRIDE; // See base docs
55 
56  } insertionOptions;
57 
58  void getAs3DObject(mrpt::opengl::CSetOfObjectsPtr &outObj) const MRPT_OVERRIDE; //!< Returns a 3D object representing the map
59 
60  protected:
61  /** Get the part of the options common to all CRandomFieldGridMap2D classes */
63  return &insertionOptions;
64  }
65 
66  // See docs in derived class
67  void internal_clear() MRPT_OVERRIDE;
68  bool internal_insertObservation( const mrpt::obs::CObservation *obs, const mrpt::poses::CPose3D *robotPose = NULL ) MRPT_OVERRIDE;
69  double internal_computeObservationLikelihood( const mrpt::obs::CObservation *obs, const mrpt::poses::CPose3D &takenFrom ) MRPT_OVERRIDE;
70 
72  double min_x,max_x,min_y,max_y,resolution; //!< See CWirelessPowerGridMap2D::CWirelessPowerGridMap2D
73  mrpt::maps::CWirelessPowerGridMap2D::TMapRepresentation mapType; //!< The kind of map representation (see CWirelessPowerGridMap2D::CWirelessPowerGridMap2D)
74  mrpt::maps::CWirelessPowerGridMap2D::TInsertionOptions insertionOpts;
75  MAP_DEFINITION_END(CWirelessPowerGridMap2D,MAPS_IMPEXP)
76 
77  };
78  DEFINE_SERIALIZABLE_POST_CUSTOM_BASE_LINKAGE( CWirelessPowerGridMap2D , CRandomFieldGridMap2D, MAPS_IMPEXP )
79 
80  } // End of namespace
81 } // End of namespace
82 
83 #endif
#define MAP_DEFINITION_END(_CLASS_NAME_, _LINKAGE_)
#define MRPT_OVERRIDE
C++11 "override" for virtuals:
Parameters related with inserting observations into the map:
TMapRepresentation
The type of map representation to be used, see CRandomFieldGridMap2D for a discussion.
This class allows loading and storing values and vectors of different types from a configuration text...
CWirelessPowerGridMap2D represents a PDF of wifi concentrations over a 2D area.
This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...
Definition: CStream.h:38
#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...
#define DEFINE_SERIALIZABLE(class_name)
This declaration must be inserted in all CSerializable classes definition, within the class declarati...
CRandomFieldGridMap2D represents a 2D grid map where each cell is associated one real-valued property...
GLsizei const GLcharARB ** string
Definition: glew.h:3293
virtual CRandomFieldGridMap2D::TInsertionOptionsCommon * getCommonInsertOptions() MRPT_OVERRIDE
Get the part of the options common to all CRandomFieldGridMap2D classes.
#define DEFINE_SERIALIZABLE_POST_CUSTOM_BASE_LINKAGE(class_name, base_name, _LINKAGE_)
#define MAP_DEFINITION_START(_CLASS_NAME_, _LINKAGE_)
Add a MAP_DEFINITION_START() ...
GLsizei GLsizei GLchar * source
Definition: glew.h:1739



Page generated by Doxygen 1.8.6 for MRPT 1.5.6 Git: 4c65e84 Tue Apr 24 08:18:17 2018 +0200 at mar abr 24 08:26:17 CEST 2018