00001 /* 00002 Object Oriented Mobile Robot Model (OOMRM) C++ Library Copyright (C) 2002-2005 Derek Jones 00003 00004 This library is free software; you can redistribute it and/or 00005 modify it under the terms of the GNU Lesser General Public 00006 License as published by the Free Software Foundation; either 00007 version 2.1 of the License, or (at your option) any later version. 00008 00009 This library is distributed in the hope that it will be useful, 00010 but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 Lesser General Public License for more details. 00013 00014 You should have received a copy of the GNU Lesser General Public 00015 License along with this library; if not, write to the Free Software 00016 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00017 00018 $Id: fl_simulator.h,v 1.1.1.1 2006/05/11 05:22:43 derek Exp $ 00019 */ 00020 #ifndef FLTK_SIMULATOR_H 00021 #define FLTK_SIMULATOR_H 00022 #include <FL/Fl_Double_Window.H> 00023 #include <FL/Fl_Light_Button.H> 00024 #include <FL/Fl_Counter.H> 00025 #include <FL/Fl_Value_Output.H> 00026 #include <string.h> 00027 #define XPOSITION 52 00028 #define TILE_WIDTH 900 00029 #define TILE_HEIGHT 550 00030 00031 class tab_t 00032 { 00033 public: 00034 tab_t(void); 00035 tab_t(const char* const ilabel) { strcpy(label,ilabel); } 00036 Fl_Double_Window* window; 00037 Fl_Group* group; 00038 int num; 00039 char label[20]; 00040 }; 00041 00042 00044 class Fl_Simulator 00045 { 00046 public: 00047 Fl_Simulator(void); 00048 static void STC(int); 00049 static int STC(void); 00050 static void STC_Widget(Fl_Counter* w); 00051 static void Millisecond_Widget(Fl_Value_Output* w); 00052 static void Milliseconds(int); 00053 static void Second_Widget(Fl_Value_Output* w); 00054 static void Seconds(int); 00055 // static void insert_vector_driver(Fl_Group* vd); 00056 static void Vgroup(Fl_Group* v); 00057 static Fl_Group* Vgroup(void); 00058 // static Fl_Group* vector_driver_group(void); 00059 00060 static Fl_Counter* OOMRM_STC; // index in step-through mode. 00061 static Fl_Value_Output* _Milliseconds; 00062 static Fl_Value_Output* _Seconds; 00063 static Fl_Group* _VD; 00064 static Fl_Group* _Vgroup; 00065 00066 static tab_t fl_dcmotor; 00067 static tab_t fl_pwm; 00068 static tab_t fl_encoder; 00069 static tab_t fl_encodedmotor; 00070 static tab_t fl_mr; 00071 static tab_t fl_ins; 00072 static tab_t fl_dialogue; 00073 static enum PLAYBACK_MODE playback_mode; 00074 static bool Checkpoint_Image_SHOW; 00075 static bool START; // = false; 00076 static bool SIM_PAUSE; // = false; 00077 static int milliseconds; 00078 static int seconds; // =0; 00079 static bool ins_walltoggle; // = true; 00080 static Fl_Light_Button* OnOff; //=NULL; 00081 static Fl_Light_Button* SIM_RedLED; 00082 static Fl_Light_Button* SIM_GreenLED; 00083 private: 00084 00085 00086 00087 }; 00088 00089 #endif
1.3