00001 00005 #pragma once 00006 00007 #include "common.hpp" 00008 00009 namespace cost_map { 00010 00011 class CostMap; 00012 00018 class SubmapGeometry 00019 { 00020 public: 00021 00031 SubmapGeometry(const CostMap& gridMap, const Position& position, const Length& length, 00032 bool& isSuccess); 00033 00034 virtual ~SubmapGeometry(); 00035 00036 const CostMap& getGridMap() const; 00037 const Length& getLength() const; 00038 const Position& getPosition() const; 00039 const Index& getRequestedIndexInSubmap() const; 00040 const Size& getSize() const; 00041 double getResolution() const; 00042 const Index& getStartIndex() const; 00043 00044 private: 00045 00047 const CostMap& gridMap_; 00048 00050 Index startIndex_; 00051 00053 Size size_; 00054 00056 Position position_; 00057 00059 Length length_; 00060 00063 Index requestedIndexInSubmap_; 00064 }; 00065 00066 } /* namespace cost_map */