grid_cell_strategy.h
Go to the documentation of this file.
00001 #ifndef __GRID_CELL_STRATEGY_H
00002 #define __GRID_CELL_STRATEGY_H
00003 
00004 #include <memory>
00005 
00006 #include "grid_cell_factory.h"
00007 #include "../grid_scan_matcher.h"
00008 #include "cell_occupancy_estimator.h"
00009 
00013 class GridCellStrategy {
00014 public:
00021   GridCellStrategy(std::shared_ptr<GridCellFactory> factory,
00022                    std::shared_ptr<ScanCostEstimator> cost_est,
00023                    std::shared_ptr<CellOccupancyEstimator> occ_est)
00024     : _cell_factory(factory), _cost_estimator(cost_est),
00025       _occupancy_estimator(occ_est) {}
00026 
00031   std::shared_ptr<GridCellFactory> cell_factory() { return _cell_factory; }
00032 
00037   std::shared_ptr<ScanCostEstimator> cost_est() { return _cost_estimator; }
00038 
00043   std::shared_ptr<CellOccupancyEstimator> occupancy_est() {
00044     return _occupancy_estimator;
00045   }
00046 
00047 private:
00048   // cell creation/update
00049   std::shared_ptr<GridCellFactory> _cell_factory;
00050   // cell comparison (scan evaluation)
00051   std::shared_ptr<ScanCostEstimator> _cost_estimator;
00052   // new cell value estimation
00053   std::shared_ptr<CellOccupancyEstimator> _occupancy_estimator;
00054 };
00055 
00056 #endif


tiny_slam
Author(s):
autogenerated on Mon Jul 17 2017 02:33:42