00001 // Copyright (C) 2006 University of Louisiana at Lafayette 00002 // Authors: Suresh Golconda 00003 00004 #ifndef CAJUN_DRAW_RNDF_LANE_H 00005 #define CAJUN_DRAW_RNDF_LANE_H 00006 00007 #include "data_queue.H" 00008 #include "cbviz_util.H" 00009 #include "conf.H" 00010 #include "component_interface.H" 00011 00012 #include "rndf.H" 00013 #include "proj_util.H" 00014 00015 namespace cajun 00016 { 00017 class draw_rndf_lane_t : public component_interface_t 00018 { 00019 public: 00020 draw_rndf_lane_t (double cbviz_origin[3], conf_t &conf, 00021 world_state_t *ws_, rndf_t const *rndf_); 00022 virtual ~draw_rndf_lane_t (); 00023 void toggle_display (); 00024 void update_data (double bot_pos_[3]); 00025 void display (double bot_pos[3]); 00026 private: 00027 std::vector<rndf_lane_data_t> m_lane_list; 00028 rndf_t const *m_rndf; 00029 double m_flag_posy; 00030 void display_lb (rndf_lane_data_t &lb_); 00031 }; 00032 } 00033 00034 #endif