![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2009 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtVrlinkTacticalGraphicStateVisualizerFactory.h,v $ $Revision: 1.1 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 #include <vrvVrl/vrvVrl.h> 00015 00016 #include <vrvUtil/DtVirtualBaseClass.h> 00017 00018 #include <boost/unordered_map.hpp> 00019 00020 #include <string> 00021 00022 namespace makVrv 00023 { 00024 namespace DT_PROTOCOL_NAMESPACE 00025 { 00026 class DtTacticalGraphicVisualizerSetCreator; 00027 00030 class DL_DLL_IGCONVRLINK DtTacticalGraphicStateVisualizerFactory : 00031 public DtVirtualBaseClass 00032 { 00033 public: 00034 00035 typedef boost::unordered_map<int,DtTacticalGraphicVisualizerSetCreator*> CreatorMap; 00036 00038 static DtTacticalGraphicStateVisualizerFactory& instance( 00039 DtVrlinkConnection& sim ); 00040 00042 virtual ~DtTacticalGraphicStateVisualizerFactory(); 00043 00045 virtual void addTacticalGraphicStateVisualizerCreator( int kind, 00046 DtTacticalGraphicVisualizerSetCreator* creator); 00047 00049 DtTacticalGraphicVisualizerSet* createTacticalGraphicStateVisualizer( 00050 DtVrlinkTacticalGraphicStateListener& listener, int modelSet ); 00051 00053 const CreatorMap& creators() const; 00054 00055 protected: 00056 00058 DtTacticalGraphicStateVisualizerFactory( DtVrlinkConnection& sim ); 00059 00060 protected: 00061 DtVrlinkConnection& mySimulation; 00062 CreatorMap myCreators; 00063 }; 00064 } 00065 }