follow_lane.h
Go to the documentation of this file.
00001 /* -*- mode: C++ -*-
00002  *
00003  *  Navigator follow lane controller
00004  *
00005  *  Copyright (C) 2007, 2010, Austin Robot Technology
00006  *  License: Modified BSD Software License Agreement
00007  *
00008  *  $Id: follow_lane.h 872 2010-11-28 13:31:07Z jack.oquin $
00009  */
00010 
00011 #ifndef __FOLLOW_LANE_HH__
00012 #define __FOLLOW_LANE_HH__
00013 
00014 //class Avoid;
00015 class FollowSafely;
00016 class SlowForCurves;
00017 class StopArea;
00018 class StopLine;
00019 
00020 class FollowLane: public Controller
00021 {
00022 public:
00023 
00024   FollowLane(Navigator *navptr, int _verbose);
00025   ~FollowLane();
00026   result_t control(pilot_command_t &pcmd);
00027   void reset(void);
00028 
00029 private:
00030 
00031   // way-point types
00032   typedef enum
00033     {
00034       Lane,
00035       LaneChange,
00036       Merge,
00037       Stop,
00038       Uturn,
00039       Zone,
00040       ZoneExit,
00041     } way_type_t;
00042 
00043   //Avoid       *avoid;
00044   FollowSafely  *follow_safely;
00045   SlowForCurves *slow_for_curves;
00046   StopArea      *stop_area;
00047   StopLine      *stop_line;
00048 
00049   way_type_t approaching_waypoint_type(WayPointNode &stop_point);
00050   void reset_me(void);
00051 };
00052 
00053 #endif // __FOLLOW_LANE_HH__


art_nav
Author(s): Austin Robot Technology, Jack O'Quin
autogenerated on Fri Jan 3 2014 11:08:43