VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtDynamicTerrainElementProcessor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvVrl/vrvVrl.h>
13 
14 #include <vrvCore/DtUniqueID.h>
15 
17 
18 #include <boost/unordered_map.hpp>
19 #include <boost/signal.hpp>
20 
21 #if 0
22 // temporary definitions to make intellisense work
23 //#define DT_PROTOCOL_NAMESPACE vrvDIS
24 //#define DtDIS 1
25 #define DT_PROTOCOL_NAMESPACE vrvHla13
26 #define DtHLA 1
27 #define DL_DLL_IGCONVRLINK __declspec ( dllexport )
28 #endif
29 
30 #include <vl/globalObjectDesignator.h>
31 
32 #ifndef DT_PROTOCOL_NAMESPACE
33 #error Namespace Protocol Macro DT_PROTOCOL_NAMESPACE not defined.
34 #endif
35 
36 namespace makVrv
37 {
38  namespace DT_PROTOCOL_NAMESPACE
39  {
40  class DtDynamicTerrainElement;
41  class DtDynamicTerrainExistenceListener;
42  class DtVrlinkConnection;
43  class DtDynamicTerrainStateListener;
44 
53  {
54  private:
55  // No default constructor
57 
58  //Not copyable
60 
61  //Not assignable
63 
64  public:
67 
70  static void registerInstance(DtVrlinkConnection& conn,
72 
74  static DtDynamicTerrainElementProcessor* findInstance(DtVrlinkConnection& conn);
75 
78 
80  DtDynamicTerrainElement* findElement( const DtElementID& elementId );
81 
83  DtDynamicTerrainElement* findElement( const DtGlobalObjectDesignator& id );
84 
85  public:
87  boost::signal<void (DtDynamicTerrainElement*)> signal_elementCreated;
88 
90  boost::signal<void (DtDynamicTerrainElement*)> signal_elementAboutToBeDestroyed;
91 
92  protected:
93 
95  virtual void onDynamicTerrainElementDiscovered(DtDynamicTerrainStateListener& listener);
96 
98  virtual void onDynamicTerrainElementToBeDestroyed(DtDynamicTerrainStateListener& listener);
99 
102  virtual void createElement(DtDynamicTerrainStateListener&);
103 
104  protected:
105 
106  typedef boost::unordered_map<DtElementID, DtDynamicTerrainElement*>
108  typedef boost::unordered_map<std::string, DtDynamicTerrainElement*>
110 
113 
115  };
116  }
117 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)