00001 00010 #ifndef ISAPP_H 00011 #define ISAPP_H 00012 00013 #include "DrawMgr.H" 00014 00015 class ISApp 00016 { 00017 public: 00018 ISApp() {} 00019 virtual ~ISApp() {} 00020 00021 // right after GL starts up, draw first frame in here.. 00022 virtual void splashScreen() {} 00023 00024 // after first frame, not inside a GL context if using multi-contexts 00025 // do normal program setup here. 00026 virtual void postSplashInit() {} 00027 00028 // after first frame, guaranteed to be inside a GL context, will be 00029 // called once per context 00030 // do GL specific program setup here.. 00031 virtual void postSplashGLContextInit() {} 00032 00033 virtual void draw() { 00034 DRAWMGR::draw(); 00035 DRAWMGR::frameDone(); 00036 } 00037 00038 virtual void inputDone() {} 00039 virtual void drawDone() {} 00040 00041 virtual void shutdown() {} 00042 00043 }; 00044 00045 #endif