![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2011 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00006 #pragma once 00007 00008 #include <bhave3DGui/bhave3DGuiDefines.h> 00009 #include <vrvUtil/DtVirtualBaseClass.h> 00010 #include <vrvCore/DtDe.h> 00011 #include <bhave3DGui/bhavePdgThread.h> 00012 #include <vrvCore/DtScene.h> 00013 #include <vrvCore/DtTerrain.h> 00014 #include <vrfutil/scenario.h> 00015 #include "bhavePdgDrawerMenu.h" 00016 #include <deque> 00017 00018 00019 namespace BHAVE 00020 { 00021 namespace BHAVE3DGui 00022 { 00025 class DT_DLL_bhave3DGui DtBhavePdgManager : public makVrv::DtVirtualBaseClass 00026 { 00027 public: 00028 DtBhavePdgManager(makVrv::DtDe&); 00029 00030 virtual ~DtBhavePdgManager(); 00031 00033 static DtBhavePdgManager& instance(makVrv::DtDe& de); 00034 00035 virtual void initializePdg(); 00036 virtual void initializeGui(); 00037 00038 protected: 00044 inline virtual void createShowPdgTypes(std::deque<DtBhavePdgDrawerMenuItem*>& subMenus) 00045 { 00046 subMenus.push_back(new DtBhavePdgDrawLifeformAction(*myDe)); 00047 subMenus.push_back(new DtBhavePdgDrawGroundPlatformAction(*myDe)); 00048 } 00049 00052 virtual void registerShowPdgTypes(std::deque<DtBhavePdgDrawerMenuItem*>& subMenus); 00053 00054 virtual void slot_onTerrainLoaded(const std::string&); 00055 virtual void slot_onTerrainGeometryLoaded(); 00056 virtual void slot_onTerrainCleared(); 00057 00058 00059 protected: 00060 makVrv::DtDe* myDe; 00061 DtBhavePdgThread* myPdgThread; 00062 }; 00063 } 00064 } 00065