00001 // Copyright (C) 2008 University of Louisiana at Lafayette 00002 // Authors: Christopher Mire 00003 00004 #ifndef CAJUN_DRAW_MESH_CELL_H 00005 #define CAJUN_DRAW_MESH_CELL_H 00006 00007 #define NUM_OBJECTS 100 00008 00009 #include <vector> 00010 00011 #include "queue_generator.H" 00012 #include "conf.H" 00013 00014 #include "component_interface.H" 00015 namespace cajun 00016 { 00017 class draw_mesh_cell_t : public component_interface_t 00018 { 00019 public: 00020 draw_mesh_cell_t (double cbviz_origin[3], unsigned qid_, 00021 world_state_t *ws_, conf_t &viz_conf_); 00022 void init_data (); 00023 void update_data (double bot_pos_[3]); 00024 void display (double cbviz_origin_[3]); 00025 void toggle_display (); 00026 00027 private: 00028 #define CELL_DEPTH 30 00029 bool m_cell_display; 00030 std::vector <mesh_cell_data_t> m_mesh_cells; 00031 unsigned m_qid; 00032 access_data_t *m_ad; 00033 double m_object_rotation[16]; 00034 }; 00035 }; 00036 #endif