#pragma once #include #include #include #include #include #include #include #include #include #include class cOSG { public: cOSG(HWND hWnd); ~cOSG(){}; void InitOSG(std::string filename); void InitManipulators(void); void InitSceneGraph(void); void InitCameraConfig(void); void SetupWindow(void); void SetupCamera(void); void PreFrameUpdate(void); void PostFrameUpdate(void); static void Render(void* ptr); osgViewer::Viewer* getViewer() { return mViewer.get(); } private: std::string m_ModelName; HWND m_hWnd; osg::ref_ptr mViewer; osg::ref_ptr mRoot; osg::ref_ptr mModel; osg::ref_ptr trackball; osg::ref_ptr keyswitchManipulator; };