SubmapIterator.hpp
Go to the documentation of this file.
00001 /*
00002  * SubmapIterator.hpp
00003  *
00004  *  Created on: Sep 12, 2014
00005  *      Author: Péter Fankhauser
00006  *   Institute: ETH Zurich, ANYbotics
00007  */
00008 
00009 #pragma once
00010 
00011 #include "grid_map_core/GridMap.hpp"
00012 #include "grid_map_core/SubmapGeometry.hpp"
00013 #include "grid_map_core/BufferRegion.hpp"
00014 
00015 #include <Eigen/Core>
00016 
00017 namespace grid_map {
00018 
00024 class SubmapIterator
00025 {
00026 public:
00027 
00032   SubmapIterator(const grid_map::SubmapGeometry& submap);
00033 
00038   SubmapIterator(const grid_map::GridMap& gridMap, const grid_map::BufferRegion& bufferRegion);
00039 
00046   SubmapIterator(const grid_map::GridMap& gridMap, const Index& submapStartIndex,
00047                  const Size& submapSize);
00048 
00053   SubmapIterator(const SubmapIterator* other);
00054 
00060   SubmapIterator& operator =(const SubmapIterator& other);
00061 
00066   bool operator !=(const SubmapIterator& other) const;
00067 
00072   const Index& operator *() const;
00073 
00078   const Index& getSubmapIndex() const;
00079 
00084   SubmapIterator& operator ++();
00085 
00090   bool isPastEnd() const;
00091 
00096   const Size& getSubmapSize() const;
00097 
00098 private:
00099 
00101   Size size_;
00102 
00104   Index startIndex_;
00105 
00107   Index index_;
00108 
00110   Size submapSize_;
00111 
00113   Index submapStartIndex_;
00114 
00116   Index submapIndex_;
00117 
00119   bool isPastEnd_;
00120 
00121  public:
00122   EIGEN_MAKE_ALIGNED_OPERATOR_NEW
00123 };
00124 
00125 } /* namespace */


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