INTRODUCTION
Overview
Download and Install
Quick Start
Documentation
Publications

NONFRAMEWORK CODE
Driver Interfaces
Drivers
Libraries
Utilities

FRAMEWORK CODE
Interfaces
Components
Libraries
Utilities

Full Software Listings

DEVELOPER
Tutorials
Examples
Dev Guide
Dashboard

PEOPLE
Contributors
Users

SourceForge.net Logo
Project
Download
Mailing lists

 

         

rangescannersimulator.h

00001 #ifndef HYDROSIM2D_RANGESCANNERSIMULATOR_H
00002 #define HYDROSIM2D_RANGESCANNERSIMULATOR_H
00003 
00004 #include <hydroogmap/hydroogmap.h>
00005 #include <hydroogmap/oglostracer.h>
00006 #include <hydronavutil/hydronavutil.h>
00007 #include <vector>
00008 #include <hydropublish/rangescanner2dpublisher.h>
00009 
00010 namespace hydrosim2d {
00011 
00017 class RangeScannerSimulator
00018 {
00019 
00020 public: 
00021 
00022     struct Config {
00023         Config() {}
00024         Config( double pMaxRange,
00025                 double pStartAngle,
00026                 double pAngleIncrement,
00027                 int    pNumReturns )
00028             : maxRange(pMaxRange),
00029               startAngle(pStartAngle),
00030               angleIncrement(pAngleIncrement),
00031               numReturns(pNumReturns)
00032             {}
00033         double maxRange;
00034         double startAngle;
00035         double angleIncrement;
00036         int    numReturns;
00037     };
00039 
00040     RangeScannerSimulator( const Config                          &config,
00041                            const hydroogmap::OgMap               &ogMap,
00042                            hydropublish::RangeScanner2dPublisher &rangeScanPublisher );
00043 
00044     void getRangesFromPose( const hydronavutil::Pose &sensorPose,
00045                             std::vector<float>       &ranges,
00046                             const hydrotime::Time    &time = hydrotime::Time(0,0) ) const;
00047 
00048 private: 
00049 
00050     const Config                                   config_;
00051     const hydroogmap::OgMap                        ogMap_;
00052     mutable hydroogmap::OgLosTracer                rayTracer_;
00053     mutable hydropublish::RangeScanner2dPublisher &rangeScanPublisher_;
00054 };
00055 
00056 bool isSane( const RangeScannerSimulator::Config &config, std::string &reason );
00057 
00058 
00059 }
00060 
00061 #endif
 

Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)


Generated for Orca Robotics by  doxygen 1.4.5