]> rtime.felk.cvut.cz Git - eurobot/public.git/blobdiff - src/robomon/RobomonAtlantis.h
robomon: Use both LIDARs using liblidar
[eurobot/public.git] / src / robomon / RobomonAtlantis.h
index b1d049847e6df4731d7fc28797f8e7fb9619989c..c7939ab281792e1d6ff20f84245dcf515c580ad3 100644 (file)
@@ -22,7 +22,7 @@
 #include "Map.h"
 #include <roboorte_robottype.h>
 #include "trail.h"
-#include "hokuyoscan.h"
+#include "LidarScan.h"
 #include <QMainWindow>
 
 class QHBoxLayout;
@@ -79,6 +79,7 @@ private slots:
        void setSimulation(int state);
        void setObstacleSimulation(int state);
        void simulateObstaclesHokuyo();
+       void simulateObstaclesSick();
        void changeObstacle(QPointF position);
        void sendStart(int plug);
        void setTeamColor(int plug);
@@ -184,7 +185,8 @@ private:
        Trail *trailPosIndepOdo;
        Trail *trailOdoPos;
 
-        HokuyoScan *hokuyoScan;
+        LidarScan *hokuyoScan;
+        LidarScan *sickScan;
 
        /* keypad */
        double leftMotorValue;
@@ -196,9 +198,10 @@ private:
        QTimer *mapTimer;
 
        /* obstacle simulation */
-       double distanceToWallHokuyo(int beamnum);
-       double distanceToObstacleHokuyo(int beamnum, Point obstacle, double obstacleSize);
-       double distanceToCircularObstacleHokuyo(int beamnum, Point center, double diameter);
+       void simulateObstaclesLidar(const struct lidar_params lidar);
+       double distanceToWallLidar(const struct lidar_params lidar, int beamnum);
+       double distanceToObstacleLidar(const struct lidar_params lidar, int beamnum, Point obstacle, double obstacleSize);
+       double distanceToCircularObstacleLidar(const struct lidar_params lidar, int beamnum, Point center, double diameter);
        int simulationEnabled;
 
        QTimer *obstacleSimulationTimer;