![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2012 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00008 00009 #pragma once 00010 00011 #include <vrvUtil/signalslib.h> 00012 #include <vrfGuiCore/vrfGuiCore.h> 00013 #include <vrvCore/DtIntervisibilityDriver.h> 00014 #include <vrvCore/DtIntervisibilityVertexVisualizer.h> 00015 00016 namespace makVrf 00017 { 00022 class DT_DLL_VRFGUICORE DtVrfGuiIntervisibilityVertexVisualizer : public makVrv::DtIntervisibilityVertexVisualizer 00023 { 00024 public: 00026 DtVrfGuiIntervisibilityVertexVisualizer(makVrv::DtBaseConnection& simulation, makVrv::DtStateListener& listener, 00027 int modelSet); 00028 00030 virtual ~DtVrfGuiIntervisibilityVertexVisualizer(); 00031 00032 virtual makVrv::DtEnvironmentalVisualizerSet* createVertexVisualizer(VertexInformation& info); 00033 00034 virtual void setWidgetEventsEnabled(bool); 00035 00036 protected: 00037 std::vector<makVrv::DtEnvironmentalVisualizerSet*> myVertices; 00038 }; 00039 00040 00041 typedef makVrv::DtStateVisualizerCreatorTemplate<DtVrfGuiIntervisibilityVertexVisualizer> DtVrfGuiIntervisibilityVertexVisualizerCreator; 00042 00043 class DT_DLL_VRFGUICORE DtVrfGuiIntervisibilityDriver : public makVrv::DtIntervisibilityDriver 00044 { 00045 public: 00046 00048 DtVrfGuiIntervisibilityDriver(makVrv::DtDe& de, const std::string& className); 00049 00051 virtual ~DtVrfGuiIntervisibilityDriver(); 00052 00053 virtual void create(const makVrv::DtUnicode& elementDefinitionName, const AttachPoints& pts); 00054 00056 virtual void destroy(makVrv::DtElementID id); 00057 00058 static DtVrfGuiIntervisibilityDriver* findDriver(makVrv::DtDe& de); 00059 00060 boost::signal<void (makVrv::DtIntervisibilityElement*)> signal_intervisibilityElementCreated; 00061 boost::signal<void (makVrv::DtIntervisibilityElement*)> signal_intervisibilityElementAboutToBeDestroyed; 00062 00063 protected: 00064 virtual void finishEditing(); 00065 virtual void cancelChanges(); 00066 }; 00067 00068 class DT_DLL_VRFGUICORE DtVrfGuiIntervisibilityDriverCreator : public makVrv::DtIntervisibilityDriverCreator 00069 { 00070 public: 00072 virtual makVrv::DtIntervisibilityDriver* create(makVrv::DtDe&) const; 00073 }; 00074 }