![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /***************************************************************************** 00002 * Copyright (c) 2012 MAK Technologies, Inc. 00003 * All rights reserved. 00004 *****************************************************************************/ 00005 00009 00010 #pragma once 00011 00012 #include <vrvVrl/vrvVrl.h> 00013 00014 #include <vrvCore/DtRadioTransmissionVisualizer.h> 00015 00016 #include <vl/signalInter.h> 00017 00018 #include <set> 00019 00020 namespace makVrv 00021 { 00022 00023 namespace DT_PROTOCOL_NAMESPACE 00024 { 00025 00026 class DtEntityElement; 00027 class DtVrlinkConnection; 00028 class DtVrlinkEntityStateListener; 00029 class DtVrlinkRadioTransmissionListener; 00030 00034 class DL_DLL_IGCONVRLINK DtVrlinkRadioTransmissionVisualizer 00035 : public DtRadioTransmissionVisualizer 00036 { 00037 public: 00038 00044 DtVrlinkRadioTransmissionVisualizer( DtBaseConnection& simulation, 00045 DtStateListener& transmissionListener, int modelSet ); 00046 00049 virtual ~DtVrlinkRadioTransmissionVisualizer(); 00050 00051 protected: 00052 00056 virtual void createModelAgents(); 00057 00059 virtual void destroyModelAgents(); 00060 00064 virtual void slot_elementCreated( DtVrlinkEntityStateListener& listener, 00065 DtEntityElement* elem ); 00066 00070 virtual void slot_colorizationChanged(); 00071 00074 virtual void getSquawkIndicatorColor( float& r, float& g, float& b ); 00075 00078 virtual DtVector getOffsetForEntityType( const DtEntityType& type ); 00079 00081 virtual void setVisualizerDefinition( const DtVisualizerDefinition& vDef ); 00082 00083 protected: 00084 00086 typedef std::set<DtGlobalObjectDesignator> PendingSquawkIndicatorsSet; 00087 00088 PendingSquawkIndicatorsSet myPendingSquawkIndicators; 00089 00090 DtVrlinkConnection& myVrlConn; 00091 00092 DtVrlinkRadioTransmissionListener* myListener; 00093 00094 DtVrlinkEntityStateListener* myEntityListener; 00095 00096 DtUniqueID myEntityVisualizerSetId; 00097 00098 bool myCustomAnimationRateFlag; 00099 00100 float myAnimationRate; 00101 float myLifetime; 00102 00103 }; 00104 00105 00106 typedef DtStateVisualizerCreatorTemplate<DtVrlinkRadioTransmissionVisualizer> 00107 DtVrlinkRadioTransmissionsVisualizerCreator; 00108 } 00109 }