VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtTacticalGraphicElementProcessor.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2022 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvVrl/vrvVrl.h>
13 
15 
16 #include <vrvCore/DtUniqueID.h>
19 
21 #include <vrvUtil/signalslib.h>
22 
23 #include <vl/globalObjectDesignator.h>
24 
26 
27 #include <boost/shared_ptr.hpp>
28 #include <boost/unordered_map.hpp>
29 
30 namespace makVrv
31 {
32  class DtVisualAttributeStringVector;
33  class DtTacticalGraphicVisualizerSet;
34  class DtTacticalGraphicElement;
35 
36  namespace DT_PROTOCOL_NAMESPACE
37  {
38  class DtVrlinkConnection;
39  class DtVrlinkTacticalGraphicStateListener;
40  class DtVrlinkEnvironmentalStateListenerInterface;
41 
46  : public DtVirtualBaseClass
47  {
48  public:
50  static void registerInstance(DtVrlinkConnection& simulation,
52 
54  static DtTacticalGraphicElementProcessor* findInstance(
55  DtVrlinkConnection& simulation);
56 
58  static DtTacticalGraphicElementProcessor& instance( DtVrlinkConnection& simulation );
59 
60  public:
63 
66 
67  public:
68  virtual DtTacticalGraphicElementManager& tacticalGraphicElementManager() const;
69 
71  DtTacticalGraphicVisualizerSet* findVisualizerSet( int modelSet,
72  const DtGlobalObjectDesignator& id );
73 
75  std::vector<DtTacticalGraphicVisualizerSet*> findVisualizerSets(
76  const DtGlobalObjectDesignator& id );
77 
79  makVrv::DtTacticalGraphicElement* findElement( const DtGlobalObjectDesignator& id );
80 
82  DtTacticalGraphicVisualizerSet* findVisualizerSet( DtUniqueID sceneId);
83 
86 
88  makVrv::DtTacticalGraphicElement* findElement( const DtUniqueID& elementId );
89 
90  protected:
92  void onEnvironmentalDiscovered(
94 
96  void onEnvironmentalToBeDestroyed(
98 
100  virtual void slot_completeDiscovery();
101 
102  using ToBeVisualizedMap = boost::unordered_map<DtUniqueID, DtVrlinkEnvironmentalStateListenerInterface*>;
103 
104  using NetworkKindToElementTypeMap = boost::unordered_map < DtTacticalGraphicStateListener::DtTacticalGraphicKind, DtElementEntry::ElementType >;
105 
109 
113  };
114 
115  }
116 }
The DtTacticalGraphicElementManager is used to create DtTacticalGraphicElements. It maintains a map o...
Definition: DtTacticalGraphicElementManager.h:36
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
DtSignalConnectionManager myConnections
Definition: DtTacticalGraphicElementProcessor.h:107
double myVisualizerCreationProcessingTime
Definition: DtTacticalGraphicElementProcessor.h:112
DtVrlinkTacticalGraphicElementManager & myVrlinkElementManager
Definition: DtTacticalGraphicElementProcessor.h:108
Contains makVrv:DtSelectionManager class.
boost::unordered_map< DtUniqueID, DtVrlinkEnvironmentalStateListenerInterface * > ToBeVisualizedMap
Definition: DtTacticalGraphicElementProcessor.h:102
NetworkKindToElementTypeMap myElementTypeMappings
Definition: DtTacticalGraphicElementProcessor.h:111
ToBeVisualizedMap myToBeVisualized
Definition: DtTacticalGraphicElementProcessor.h:110
boost::unordered_map< DtTacticalGraphicStateListener::DtTacticalGraphicKind, DtElementEntry::ElementType > NetworkKindToElementTypeMap
Definition: DtTacticalGraphicElementProcessor.h:104
#define DL_DLL_IGCONVRLINK
Definition: dllExport.h:26
#define DT_PROTOCOL_NAMESPACE
Contains DLL export macros.
Definition: vrfDis.h:17
Contains makVrv:DtTacticalGraphicStateListener class.
This class manages the display of Tactical Graphics discovered via a connection.
Definition: DtTacticalGraphicElementProcessor.h:45
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtVrlinkConnection & myConnection
Definition: DtTacticalGraphicElementProcessor.h:106
A single tactical graphic element. A tactical graphic element may be visualized using multiple visual...
Definition: DtTacticalGraphicElement.h:35
Base class to provide boost signal/slot management.
A visualizer is created for each entity state listener which it will drive it.
Definition: DtTacticalGraphicVisualizerSet.h:27
Contains makVrv::DtUniqueID type.
Contains DLL export macros.

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)