uav_random_direction.h
Go to the documentation of this file.
1 #ifndef UAV_RANDOM_DIRECTION_H
2 #define UAV_RANDOM_DIRECTION_H
3 
4 #include <random_numbers/random_numbers.h>
5 #include <cpswarm_msgs/GetSector.h>
6 #include <position.h>
7 
8 using namespace std;
9 using namespace ros;
10 
14 typedef enum {
19 
24 {
25 public:
30 
35 
40  behavior_state_t step();
41 
42 private:
47  geometry_msgs::Pose select_goal ();
48 
53  bool new_direction ();
54 
58  ServiceClient clear_sector_client;
59 
63  position pos;
64 
68  double step_size_max;
69 
73  double step_size_min;
74 
78  bool turn;
79 
83  double direction;
84 
88  double distance;
89 
93  random_numbers::RandomNumberGenerator* rng;
94 };
95 
96 #endif // UAV_RANDOM_DIRECTION_H
97 
bool turn
Whether the drone still needs to turn before moving.
behavior_state_t
An enumeration for the state of the behavior algorithm.
random_numbers::RandomNumberGenerator * rng
The random number generator used for selecting a random direction.
position pos
A helper object for position related tasks.
double direction
The direction in which the drone is travling. It is measured in radian, clockwise starting from north...
double step_size_max
The maximum distance that a UAV travels in one step.
A class that allows to cover a given area with the random direction algorithm. The random direction i...
ServiceClient clear_sector_client
Service client for determining the sector clear of obstacles.
double distance
The distance which the drone is traveling.
double step_size_min
The minimum distance that a UAV travels in one step.


uav_random_direction
Author(s): Micha Sende
autogenerated on Sun Dec 29 2019 10:25:58