VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtRadioTransmissionElementProcessor.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2021 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #ifndef DT_PROTOCOL_NAMESPACE
13 #error Namespace Protocol Macro DT_PROTOCOL_NAMESPACE not defined.
14 #endif
15 
16 #include <vrvVrl/vrvVrl.h>
17 
19 
21 
22 #include <vl/signalInteraction.h>
23 
24 #include <boost/unordered_map.hpp>
25 
26 namespace makVrv
27 {
28  class DtVisualizerCreationSettings;
29  class DtUnicode;
30  class DtRadioTransmissionElement;
31 
32  namespace DT_PROTOCOL_NAMESPACE
33  {
34 
35  class DtVrlinkRadioTransmissionListener;
36  class DtVrlinkAggregateStateListener;
37  class DtVrlinkConnection;
39 
44  : public DtVirtualBaseClass
45  {
46  public:
47 
50  static void registerInstance( DtVrlinkConnection& conn,
52 
54  static DtRadioTransmissionElementProcessor* findInstance( DtVrlinkConnection& conn );
55 
58 
61 
62  protected:
63 
66 
71  virtual void initialize();
72 
74  virtual void startProcessingInteractions();
75 
77  virtual void stopProcessingInteractions();
78 
80  virtual void processInteraction( const DtSignalInteraction& signalInter );
81 
83  virtual DtRadioTransmissionElement* createTransmissionElement( DtVrlinkRadioTransmissionListener* listener,
84  std::vector<DtUnicode>& definitions );
85 
88  virtual void slot_displayRadioCommsChanged( bool enabled );
89 
92  virtual void slot_displaySquawkIndicatorsChanged( bool enabled );
93 
96  virtual void slot_transmissionLifetimeChanged( double lifetime );
97 
99  virtual void slot_preTick();
100 
103  virtual void slot_toBeDisconnected();
104 
107  virtual void onEntityToBeDestroyed(DtVrlinkEntityStateListener& listener);
108 
111  virtual void onAggregateToBeDestroyed(DtVrlinkAggregateStateListener& listener);
112 
113  protected:
115  using TransmissionElementMap = std::unordered_map<DtVrlinkRadioTransmissionListener*, DtRadioTransmissionElement*>;
116 
118 
120 
123  };
124 
125  }
126 }
std::unordered_map< DtVrlinkRadioTransmissionListener *, DtRadioTransmissionElement * > TransmissionElementMap
Map type for mapping radio transmissions listeners to ModelSetVisualizerSetMaps.
Definition: DtRadioTransmissionElementProcessor.h:115
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
bool myProcessMessages
Definition: DtRadioTransmissionElementProcessor.h:121
vrvCore RadioTransmission Element
Definition: DtRadioTransmissionElement.h:25
DtVrlinkConnection & myVrlinkConnection
Definition: DtRadioTransmissionElementProcessor.h:119
Element processor for radio transmissions. Instantiates visualizer sets for new transmissions.
Definition: DtRadioTransmissionElementProcessor.h:43
#define DL_DLL_IGCONVRLINK
Definition: dllExport.h:26
#define DT_PROTOCOL_NAMESPACE
Contains DLL export macros.
Definition: vrfDis.h:17
Contains makVrv::DtVirtualBaseClass class.
TransmissionElementMap myTransmissionElementMap
Definition: DtRadioTransmissionElementProcessor.h:117
double myTransmissionLifetime
Definition: DtRadioTransmissionElementProcessor.h:122
Contains the DtRadioTransmissionListener class declaration.
Contains DLL export macros.

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)