Public Types | Public Member Functions | Private Member Functions | Private Attributes
grid_map::SlidingWindowIterator Class Reference

#include <SlidingWindowIterator.hpp>

Inheritance diagram for grid_map::SlidingWindowIterator:
Inheritance graph
[legend]

List of all members.

Public Types

enum  EdgeHandling { INSIDE, CROP, EMPTY, MEAN }

Public Member Functions

const Matrix getData () const
SlidingWindowIteratoroperator++ ()
void setWindowLength (const GridMap &gridMap, const double windowLength)
 SlidingWindowIterator (const GridMap &gridMap, const std::string &layer, const EdgeHandling &edgeHandling=EdgeHandling::CROP, const size_t windowSize=3)
 SlidingWindowIterator (const SlidingWindowIterator *other)

Private Member Functions

bool dataInsideMap () const
 Check if data for current index is fully inside map.
void setup (const GridMap &gridMap)
 Setup members.

Private Attributes

const Matrixdata_
 Data.
const EdgeHandling edgeHandling_
 Edge handling method.
size_t windowMargin_
 Size of the border of the window around the center cell.
size_t windowSize_
 Size of the sliding window.

Detailed Description

Iterator class to iterate trough the entire grid map with access to a layer's data through a sliding window. Note: This iterator only works with maps with zero start index.

Definition at line 24 of file SlidingWindowIterator.hpp.


Member Enumeration Documentation

Enumerator:
INSIDE 
CROP 
EMPTY 
MEAN 

Definition at line 28 of file SlidingWindowIterator.hpp.


Constructor & Destructor Documentation

grid_map::SlidingWindowIterator::SlidingWindowIterator ( const GridMap gridMap,
const std::string &  layer,
const EdgeHandling edgeHandling = EdgeHandling::CROP,
const size_t  windowSize = 3 
)

Constructor.

Parameters:
gridMapthe grid map to iterate on.
layerthe layer on which the data is accessed.
edgeHandlingthe method to handle edges of the map.
windowSizethe size of the moving window in number of cells (has to be an odd number!).

Definition at line 16 of file SlidingWindowIterator.cpp.

Copy constructor.

Parameters:
otherthe object to copy.

Definition at line 26 of file SlidingWindowIterator.cpp.


Member Function Documentation

Check if data for current index is fully inside map.

Definition at line 99 of file SlidingWindowIterator.cpp.

Return the data of the sliding window.

Returns:
the data of the sliding window.

Definition at line 55 of file SlidingWindowIterator.cpp.

SlidingWindowIterator & grid_map::SlidingWindowIterator::operator++ ( ) [virtual]

Increase the iterator to the next element.

Returns:
a reference to the updated iterator.

Reimplemented from grid_map::GridMapIterator.

Definition at line 42 of file SlidingWindowIterator.cpp.

void grid_map::SlidingWindowIterator::setup ( const GridMap gridMap) [private]

Setup members.

Definition at line 84 of file SlidingWindowIterator.cpp.

void grid_map::SlidingWindowIterator::setWindowLength ( const GridMap gridMap,
const double  windowLength 
)

Set the side length of the moving window (in m).

Parameters:
gridMapthe grid map to iterate on.
windowLengththe side length of the window (in m).

Definition at line 35 of file SlidingWindowIterator.cpp.


Member Data Documentation

Data.

Definition at line 82 of file SlidingWindowIterator.hpp.

Edge handling method.

Definition at line 79 of file SlidingWindowIterator.hpp.

Size of the border of the window around the center cell.

Definition at line 88 of file SlidingWindowIterator.hpp.

Size of the sliding window.

Definition at line 85 of file SlidingWindowIterator.hpp.


The documentation for this class was generated from the following files:


grid_map_core
Author(s): P├ęter Fankhauser
autogenerated on Tue Jul 9 2019 05:06:13