00001
00008
00009
00010
00011
00012
00013 #if COMPILING_MODULE_SIM && DEBUG && ! DOXYGEN
00014 #ifndef MOD_SIM_TEST_HH
00015 #define MOD_SIM_TEST_HH 1
00016
00017 #include "mod_base_keyboard.hh"
00018 using namespace mod_base;
00019 #include "mod_sim_keyboard.hh"
00020
00021 namespace mod_sim {
00022 namespace test {
00023
00027 class TestMode
00028 {
00029
00030 public:
00032 class KeyboardFunctor : public mod_base::Keyboard::Functor
00033 {
00034 public:
00035 KeyboardFunctor( void ) { }
00036 ~KeyboardFunctor() { }
00037 void operator()( const inp::Keyboard::Event& keyEvent );
00038 };
00039
00040 public:
00041 TestMode( void );
00042 ~TestMode();
00043 void Init( void );
00044 };
00045
00049 class LandTile : public Object
00050 {
00051
00052 public:
00053 LandTile( SharedPtr<Graph> graph, const WorldVertex& pos );
00054 ~LandTile();
00055 bool Reproducible( void ) { return true; }
00056 const string GetName( void ) { return "LandTile"; }
00057 };
00058
00062 class TerrainFactory
00063 {
00064
00065 public:
00066 TerrainFactory( void );
00067 ~TerrainFactory();
00068 void Make( const BoxVolume& boxVolume );
00069
00070 private:
00071 void MakeLandTiles( const BoxVolume& boxVolume );
00072 };
00073
00074
00075
00076
00077 #if MOD_SIM_TEST_CC
00078 TestMode gTestMode;
00079 TerrainFactory gTerrainFactory;
00080 #else
00081 extern TestMode gTestMode;
00082 extern TerrainFactory gTerrainFactory;
00083 #endif
00084
00085 }
00086 }
00087
00088 #endif // MOD_SIM_TEST_HH
00089 #endif // COMPILING_MODULE_SIM && DEBUG && ! DOXYGEN