#include <uturn.h>
Public Member Functions | |
void | configure () |
result_t | control (pilot_command_t &pcmd) |
void | reset (void) |
Uturn (Navigator *navptr, int _verbose) | |
~Uturn () | |
Private Types | |
enum | state_t { Backward, Forward, Wait } |
Private Member Functions | |
float | calculate_arc_length (bool forward, const MapXY ¢er, float safety_radius, const MapXY &p1, const MapXY &p2) |
bool | circle_and_line_intersect (MapXY center, float radius, MapXY p1, MapXY p2, MapXY &meet_point) |
float | estimate_uturn_distance (bool forward, float desired_arc_length) |
Controller::result_t | initialize (void) |
bool | outside_lanes_front (void) |
bool | outside_lanes_rear (void) |
bool | point_outside_lanes (MapXY point) |
void | reset_me (void) |
void | set_state (state_t newstate) |
MapXY | wheel_location (float x, float y) |
Private Attributes | |
bool | do_init |
float | goal_heading |
state_t | state |
Stop * | stop |
poly | uturn_entry |
poly | uturn_exit |
poly_list_t | uturn_polys |
enum Uturn::state_t [private] |
Uturn::Uturn | ( | Navigator * | navptr, |
int | _verbose | ||
) |
Uturn::~Uturn | ( | ) |
float Uturn::calculate_arc_length | ( | bool | forward, |
const MapXY & | center, | ||
float | safety_radius, | ||
const MapXY & | p1, | ||
const MapXY & | p2 | ||
) | [private] |
void Uturn::configure | ( | ) |
Controller::result_t Uturn::control | ( | pilot_command_t & | pcmd | ) | [virtual] |
Reimplemented from Controller.
float Uturn::estimate_uturn_distance | ( | bool | forward, |
float | desired_arc_length | ||
) | [private] |
Controller::result_t Uturn::initialize | ( | void | ) | [private] |
bool Uturn::outside_lanes_front | ( | void | ) | [private] |
bool Uturn::outside_lanes_rear | ( | void | ) | [private] |
bool Uturn::point_outside_lanes | ( | MapXY | point | ) | [private] |
void Uturn::reset | ( | void | ) | [virtual] |
Reimplemented from Controller.
void Uturn::reset_me | ( | void | ) | [private, virtual] |
Reimplemented from Controller.
void Uturn::set_state | ( | state_t | newstate | ) | [private] |
MapXY Uturn::wheel_location | ( | float | x, |
float | y | ||
) | [private] |
bool Uturn::do_init [private] |
float Uturn::goal_heading [private] |
state_t Uturn::state [private] |
Stop* Uturn::stop [private] |
poly Uturn::uturn_entry [private] |
poly Uturn::uturn_exit [private] |
poly_list_t Uturn::uturn_polys [private] |