![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtWeaponFireElementProcessor.h,v $ $Revision: 1.7 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 00015 #include <vrvVrl/vrvVrl.h> 00016 #include <vrvUtil/DtVirtualBaseClass.h> 00017 #include <vrvCore/DtVisualizerSet.h> 00018 #include <vrvCore/DtInteractionStateListener.h> 00019 00020 #include <vl/fireInter.h> 00021 00022 #ifndef DT_PROTOCOL_NAMESPACE 00023 #error Namespace Protocol Macro DT_PROTOCOL_NAMESPACE not defined. 00024 #endif 00025 00026 namespace makVrv 00027 { 00028 namespace DT_PROTOCOL_NAMESPACE 00029 { 00030 class DtVrlinkConnection; 00031 00034 class DL_DLL_IGCONVRLINK DtWeaponFireVisualizerSet : public DtVisualizerSet 00035 { 00036 public: 00037 DtWeaponFireVisualizerSet(DtVrlinkConnection& c); 00038 00039 virtual ~DtWeaponFireVisualizerSet(); 00040 00041 public: 00042 virtual void visualize(const DtUnicode& visDefName, int modelSet); 00043 virtual void setLocation(const DtVector&); 00044 00045 protected: 00046 DtInteractionStateListener myInteractionListener; 00047 }; 00048 00050 class DL_DLL_IGCONVRLINK DtWeaponFireElementProcessor : public DtVirtualBaseClass 00051 { 00052 public: 00053 00056 static void registerInstance(DtVrlinkConnection& conn, 00057 DtWeaponFireElementProcessor* instance); 00058 00060 static DtWeaponFireElementProcessor* findInstance(DtVrlinkConnection& conn); 00061 00063 DtWeaponFireElementProcessor(DtVrlinkConnection& baseSimulation); 00064 00066 virtual ~DtWeaponFireElementProcessor(); 00067 00069 void processInteraction(const DtFireInteraction& fireInteraction ); 00070 00071 protected: 00072 00073 const DtUnicode& chooseModelDefinition( 00074 const std::vector<DtUnicode>& definitions); 00075 00076 protected: 00077 DtVrlinkConnection& myConnection; 00078 }; 00079 } 00080 }