Jafar
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Public Attributes | Private Member Functions | Friends
jafar::rtslam::MapAbstract Class Reference

Base class for all map types defined in the module rtslam. More...


Detailed Description

Base class for all map types defined in the module rtslam.

Author:
jsola

Definition at line 43 of file mapAbstract.hpp.

#include <mapAbstract.hpp>

Inheritance diagram for jafar::rtslam::MapAbstract:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 MapAbstract (size_t _max_size)
 Constructor.
 MapAbstract (const ekfInd_ptr_t &ekfPtr)
virtual ~MapAbstract ()
 Mandatory virtual destructor - Map is used as-is, non-abstract by now.
virtual std::string categoryName () const
jblas::ind_array ia_used_states ()
 Map's indirect array is a function by now.
jblas::vecx ()
jblas::sym_matP ()
double & x (size_t i)
double & P (size_t i, size_t j)
std::size_t unusedStates () const
 Query about available free space.
bool unusedStates (const size_t N) const
 Query about available free space.
jblas::ind_array reserveStates (const std::size_t _size)
 Obtain free Map space of a given size.
jblas::ind_array convertStates (const jblas::ind_array &_ia, const std::size_t N, jblas::ind_array &_icomp)
 From the already-reserved space _ia, keep the first N states in a new index that is returned, and stored all the other states in _icomp for future liberation.
void liberateStates (const jblas::ind_array &_ia)
 Liberate the space indicated.
void clear ()
void fillSeq ()
void fillDiag ()
void fillDiagSeq ()
void fillRndm ()
virtual void writeLogHeader (kernel::DataLogger &log) const
 Implements this method calling repeatidly log methods.
virtual void writeLogData (kernel::DataLogger &log) const
 Implements this method calling repeatidly log methods.

Public Attributes

Gaussian state
ekfInd_ptr_t filterPtr
 EKF engine.
size_t max_size
 Size things and map usage management.
size_t current_size
jblas::vecb used_states

Private Member Functions

 ENABLE_LINK_TO_PARENT (WorldAbstract, World, MapAbstract)
 ENABLE_ACCESS_TO_PARENT (WorldAbstract, world)
 ENABLE_ACCESS_TO_CHILDREN (RobotAbstract, Robot, robot)
 ENABLE_ACCESS_TO_CHILDREN (MapManagerAbstract, MapManager, mapManager)

Friends

std::ostream & operator<< (std::ostream &s, MapAbstract const &map)
 Print all MAP data.

Member Function Documentation

Map's indirect array is a function by now.

Returns:
the indirect array of all used states in the map.
Todo:
: see how to avoid constructing this each time

Definition at line 104 of file mapAbstract.hpp.

References jafar::jmath::ublasExtra::ia_set().

Liberate the space indicated.

The free space in used_states and the current size current_size are modified accordingly.

Parameters:
_iathe space to liberate.

Obtain free Map space of a given size.

The free space in used_states and the current size current_size are modified accordingly. Ig not enough space is available, the returned indirect array is of null size.

Parameters:
_sizethe requested free space size.
Returns:
the resulting free space.
std::size_t jafar::rtslam::MapAbstract::unusedStates ( ) const [inline]

Query about available free space.

Returns:
the number of unused states

Definition at line 120 of file mapAbstract.hpp.

References max_size.

Referenced by unusedStates().

bool jafar::rtslam::MapAbstract::unusedStates ( const size_t  N) const [inline]

Query about available free space.

Returns:
true if at least N non-used states

Definition at line 129 of file mapAbstract.hpp.

References unusedStates().

virtual void jafar::rtslam::MapAbstract::writeLogData ( kernel::DataLogger log) const [virtual]

Implements this method calling repeatidly log methods.

You should use writeData() or writeDataVector().

Implements jafar::kernel::DataLoggable.

virtual void jafar::rtslam::MapAbstract::writeLogHeader ( kernel::DataLogger log) const [virtual]

Implements this method calling repeatidly log methods.

You should use writeComment(), writeLegend() or writeLegendTokens().

Implements jafar::kernel::DataLoggable.


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  s,
MapAbstract const &  map 
) [friend]

Print all MAP data.

It traverses the map tree in the following way:

  • robots
    • sensors in robot
  • landmarks
    • observations of landmark from each sensor

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Wed Oct 15 2014 00:37:45 for Jafar by doxygen 1.7.6.1
LAAS-CNRS