![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2012 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00013 00014 #pragma once 00015 #include <vrvCore/DtStateVisualizer.h> 00016 #include <matrix/vlVector.h> 00017 00018 namespace makVrv 00019 { 00020 class DtAttachableUpdaterAgent; 00021 class Dt3DSegmentedLineModelAgent; 00022 class DtProjectedWidgetModelAgent; 00023 class DtWidgetAgent; 00024 00028 class DT_DLL_VRVCORE DtDetonationLineVisualizer : public DtStateVisualizer 00029 { 00030 public: 00031 00033 DtDetonationLineVisualizer(DtBaseConnection& simulation, 00034 DtStateListener& listener, int modelSet); 00035 00037 virtual ~DtDetonationLineVisualizer(); 00038 00040 virtual void setEnabled(bool b); 00041 00043 bool enabled() const; 00044 00046 virtual void setParent(DtStateVisualizer*); 00047 00049 virtual const DtStateVisualizer::TypeInfo& typeInfo() const; 00050 00052 static const DtStateVisualizer::TypeInfo& theTypeInfo(); 00053 00054 protected: 00055 00056 virtual void createModelAgents(); 00057 virtual void destroyModelAgents(); 00058 00059 virtual void setVisualizerDefinition(const DtVisualizerDefinition& visDef); 00060 00061 virtual void setModelDefinitionForAgents(); 00062 virtual DtVector lineColor() const; 00063 00064 protected: 00065 double myLifeTime; 00066 bool myEnabled; 00067 DtUnicode myBackgroundImage; 00068 DtProjectedWidgetModelAgent* myProjectedWidgetModelAgent; 00069 DtWidgetAgent* myDetonationIconAgent; 00070 Dt3DSegmentedLineModelAgent* myLineAgent; 00071 DtAttachableUpdaterAgent* myAttachableUpdater; 00072 bool myOcclude; 00073 }; 00074 00075 typedef DtStateVisualizerCreatorTemplate<DtDetonationLineVisualizer> 00076 DtDetonationLineVisualizerCreator; 00077 }