Fawkes API
Fawkes Development Version
|
23 #ifndef _PLUGINS_COLLI_SEARCH_ASTAR_SEARCH_H_
24 #define _PLUGINS_COLLI_SEARCH_ASTAR_SEARCH_H_
26 #include "abstract_search.h"
33 class LaserOccupancyGrid;
38 typedef struct point_struct
point_t;
51 void update(
int robo_x,
int robo_y,
int target_x,
int target_y);
64 point_t calculate_local_target();
70 point_t calculate_local_trajec_point();
73 bool is_obstacle_between(
const point_t &a,
const point_t &b,
const int maxcount);
75 std::unique_ptr<AStarColli> astar_;
76 std::vector<point_t> plan_;
78 point_t robo_position_, target_position_;
79 bool updated_successful_;
81 cfg_search_line_allowed_cost_max_;
Point with cartesian coordinates as signed integers.
struct fawkes::point_struct point_t
Point with cartesian coordinates as signed integers.
Interface for configuration handling.
Fawkes library namespace.
std::vector< point_t > * get_plan()
Get the current plan.
Search(LaserOccupancyGrid *occ_grid, Logger *logger, Configuration *config)
Constructor.
This OccGrid is derived by the Occupancy Grid originally from Andreas Strack, but modified for speed ...
virtual ~Search()
Destructor.
point_t get_robot_position()
Get the robot's position in the grid, used for the plan.
This is the abstract search interpretation class for an arbitrary search algorithm to find its way th...
bool updated_successful()
returns, if the update was successful or not.
void update(int robo_x, int robo_y, int target_x, int target_y)
update complete plan things