submap_iterator.hpp
Go to the documentation of this file.
00001 
00005 #pragma once
00006 
00007 #include "../common.hpp"
00008 #include "../cost_map.hpp"
00009 #include "../submap_geometry.hpp"
00010 
00011 namespace cost_map {
00012 
00018 class SubmapIterator
00019 {
00020 public:
00021 
00026   SubmapIterator(const cost_map::SubmapGeometry& submap);
00027 
00032   SubmapIterator(const cost_map::CostMap& gridMap, const cost_map::BufferRegion& bufferRegion);
00033 
00040   SubmapIterator(const cost_map::CostMap& gridMap, const Index& submapStartIndex,
00041                  const Size& submapSize);
00042 
00047   SubmapIterator(const SubmapIterator* other);
00048 
00054   SubmapIterator& operator =(const SubmapIterator& other);
00055 
00060   bool operator !=(const SubmapIterator& other) const;
00061 
00066   const Index& operator *() const;
00067 
00072   const Index& getSubmapIndex() const;
00073 
00078   SubmapIterator& operator ++();
00079 
00084   bool isPastEnd() const;
00085 
00086 private:
00087 
00089   Size size_;
00090 
00092   Index startIndex_;
00093 
00095   Index index_;
00096 
00098   Size submapSize_;
00099 
00101   Index submapStartIndex_;
00102 
00104   Index submapIndex_;
00105 
00107   bool isPastEnd_;
00108 };
00109 
00110 } /* namespace */


cost_map_core
Author(s): Daniel Stonier
autogenerated on Thu Jun 6 2019 20:27:46