00001 /* 00008 * LEGAL: COPYRIGHT (C) 2007 JIM E. BROOKS 00009 * THIS SOURCE CODE IS RELEASED UNDER THE TERMS 00010 * OF THE GNU GENERAL PUBLIC LICENSE VERSION 2 (GPL 2). 00011 *****************************************************************************/ 00012 00013 #if COMPILING_MODULE_SIM 00014 #ifndef MOD_SIM_MODE_DEMO_HH 00015 #define MOD_SIM_MODE_DEMO_HH 1 00016 00017 #include "mod_base_craft.hh" 00018 #include "mod_base_keyboard.hh" 00019 using namespace mod_base; 00020 #include "mod_sim_craft.hh" 00021 #include "mod_sim_keyboard.hh" 00022 00023 namespace mod_sim { 00024 00028 class DemoMode : public mod_base::ModuleMode 00029 { 00030 00031 public: 00032 DemoMode( void ); 00033 ~DemoMode(); 00034 void Start( void ); 00035 00036 // ModuleMode interface: 00037 private: 00038 virtual void ResetScene( void ); 00039 virtual bool IfEyeMode( void ) { return false; } 00040 virtual bool IfDemoMode( void ) { return true; } 00041 00042 private: 00043 WorldVertex GetInitialEyePosition( void ); 00044 WorldVertex GetInitialProxyCraftPosition( void ); 00045 void Animate( void ); 00046 void TimerEvent( const Milliseconds millisecElapsed ); 00047 void IdleEvent( void ); 00048 void KeyboardEvent( const inp::Keyboard::Event& keyEvent ); 00049 00050 private: 00051 SharedPtr0<Craft> mCurrentCraft; 00052 shptr0<ProxyCraft> mProxyCraft; 00053 bool mOverdrive; 00054 }; 00055 00056 } // namespace mod_sim 00057 00058 #endif // MOD_SIM_MODE_DEMO_HH 00059 #endif // COMPILING_MODULE_SIM
Palomino 3D Engine documents generated by doxygen 1.5.3 on Fri Nov 23 11:26:13 2007