![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtVrlinkAttributeGroupStateVisualizer.h,v $ $Revision: 1.43 $ $SceneObject: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 00015 #include <vrvVrl/DtVrlink3DRemoteGraphicStateVisualizer.h> 00016 #include <vrvCore/DtAttributeGroupStateVisualizer.h> 00017 #include <vrvCore/DtAttributeGroupStateListener.h> 00018 #include <vrvUtil/DtSignalConnectionManager.h> 00019 00020 #include <boost/unordered_map.hpp> 00021 00022 namespace makVrv 00023 { 00024 namespace DT_PROTOCOL_NAMESPACE 00025 { 00026 class DtAttributeGroupTemplateManager; 00027 00028 class DL_DLL_IGCONVRLINK DtVrlinkAttributeGroupStateVisualizer : 00029 public DtVrlink3DRemoteGraphicStateVisualizer<DtAttributeGroupStateVisualizer> 00030 { 00031 public: 00032 DtVrlinkAttributeGroupStateVisualizer(DtBaseConnection& simulation, DtStateListener& listener, int modelSet); 00033 00034 virtual ~DtVrlinkAttributeGroupStateVisualizer(); 00035 00036 virtual void attributeGroupTemplateStatusChanged(const std::string& groupName, 00037 const std::string& templateName, bool onOff); 00038 00039 virtual void setAttribute(const std::string& name, double numVal, 00040 const std::string& imageFile, double yVal); 00041 00042 virtual void slot_attributeTemplateAdded(const DtGlobalObjectDesignator& groupId, 00043 const std::string& name, int attType, double minRange, double maxRange, int index); 00044 00045 protected: 00046 DtAttributeGroupTemplateManager& myGroupTemplateManager; 00047 00048 typedef boost::unordered_map<std::string, DtAttributeGroupStateListener::DtAttributeGroupInfo> 00049 AttributesWaitingMap; 00050 AttributesWaitingMap myAttributesWaiting; 00051 }; 00052 typedef DtStateVisualizerCreatorTemplate<DtVrlinkAttributeGroupStateVisualizer> DtVrlinkAttributeGroupStateVisualizerCreator; 00053 } 00054 } 00055