![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /********************************************************************* 00002 ** Copyright (c) 2010 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: Dt3DTextStateVisualizer.h,v $ $Revision: 1.1 $ $State: Exp $ 00007 *********************************************************************/ 00011 00012 #pragma once 00013 00014 #include <vrvCore/vrvCore.h> 00015 #include <vrvCore/DtRemoteGraphicVisualizerAttributes.h> 00016 #include <vrvCore/DtSceneObjectVisualizer.h> 00017 #include <vrvCore/Dt3DTextModelAgent.hpp> 00018 #include <vrvCore/DtVisibilityAdapter.h> 00019 00020 class DtVector; 00021 00022 namespace makVrv 00023 { 00024 class DtAttachableUpdaterAgent; 00025 00028 class DT_DLL_VRVCORE Dt3DTextStateVisualizer : 00029 public DtSceneObjectVisualizer , 00030 public DtRemoteGraphicVisualizerAttributes 00031 { 00032 public: 00034 Dt3DTextStateVisualizer(DtBaseConnection& simulation, 00035 DtStateListener& listener, int modelSet); 00036 00038 virtual ~Dt3DTextStateVisualizer(); 00039 00042 virtual void setLocation(const DtVector& loc); 00043 00045 virtual void setColor(float r,float g,float b,float a); 00046 00048 virtual void setFlashing(bool flashing); 00049 00051 virtual void setText(const std::string& str); 00052 00058 virtual void setAttached(DtUniqueID id, int vtx, double percentage); 00059 00061 virtual void setHostId(const std::string& id, int vtx, double percentage); 00062 00064 virtual const DtStateVisualizer::TypeInfo& typeInfo() const; 00065 00067 static const DtStateVisualizer::TypeInfo& theTypeInfo(); 00068 00069 protected: 00073 virtual void setVisible(bool yesNo); 00074 00076 virtual void createModelAgents(); 00077 00085 virtual void destroyModelAgents(); 00086 00088 virtual void setModelDefinitionForAgents(); 00089 00090 protected: 00091 Dt3DTextModelAgent* myTextModelAgent; 00092 DtAttachableUpdaterAgent* myAttachableUpdater; 00093 DtVisibilityAdapter<Dt3DTextModelAgent>* myVisibilityAdapter; 00094 }; 00095 00096 typedef DtStateVisualizerCreatorTemplate<Dt3DTextStateVisualizer> 00097 Dt3DTextStateVisualizerCreator; 00098 }