VR-Forces 4.6 Class Documentation
 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) 2014 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvVrl/vrvVrl.h>
15 #include <boost/unordered_map.hpp>
16 #include <vl/globalObjectDesignator.h>
17 #include <boost/signal.hpp>
18 #include <boost/shared_ptr.hpp>
19 
20 namespace makVrv
21 {
22 
23  class DtVisualAttributeStringVector;
24 
25  namespace DT_PROTOCOL_NAMESPACE
26  {
27 
28  class DtTacticalGraphicElement;
29  class DtTacticalGraphicVisualizerSet;
30  class DtVrlinkConnection;
31  class DtVrlinkTacticalGraphicStateListener;
32  class DtVrlinkEnvironmentalStateListenerInterface;
33 
38  : public DtVirtualBaseClass
39  {
40  public:
41 
44 
46  static void registerInstance( DtVrlinkConnection& simulation,
48 
50  static DtTacticalGraphicElementProcessor* findInstance(
51  DtVrlinkConnection& simulation );
52 
55 
57  void tacticalGraphicsSelectionChanged( const DtSelectionManager::IdSet& selected,
58  const DtSelectionManager::IdSet& deselected );
59 
61  void tacticalGraphicsHeightAboveTerrainLinesEnabledChanged( bool enabled );
62 
64  void tacticalGraphicsHeightAboveTerrainModeChanged(
66 
68  DtTacticalGraphicVisualizerSet* findVisualizer( int modelSet,
69  const DtGlobalObjectDesignator& id );
70 
72  std::vector<DtTacticalGraphicVisualizerSet*> findVisualizers(
73  const DtGlobalObjectDesignator& id );
74 
76  DtTacticalGraphicVisualizerSet* findVisualizer( DtUniqueID sceneId);
77 
80 
82  DtTacticalGraphicElement* findElement( const DtUniqueID& elementId );
83 
85  DtTacticalGraphicElement* findElement( const DtGlobalObjectDesignator& id );
86 
89  void setVisualizerCreationProcessingTime(double);
90  double visualizerCreationProcessingTime() const;
91 
92  public:
93 
94  boost::signal<void (DtVrlinkEnvironmentalStateListenerInterface&, DtTacticalGraphicElement*)> signal_elementCreated;
95  boost::signal<void (DtVrlinkEnvironmentalStateListenerInterface&, DtTacticalGraphicElement*)> signal_elementAboutToBeDestroyed;
96 
97  protected:
98 
99  virtual void modelSetVisualized(int set, bool b);
100 
101  virtual void handleElementAttributeChanged(
102  DtTacticalGraphicElement& graphic, const DtElementAttribute* attr);
103 
104  virtual void handleChildElementAttributeChanged(
105  DtTacticalGraphicElement& graphic, DtUniqueID childId,
106  const DtElementAttribute* attr );
107 
109  void onEnvironmentalDiscovered(
111 
113  void onEnvironmentalToBeDestroyed(
115 
116  virtual void slot_elementAttributeChangeRequested( DtUniqueID id, DtUniqueID parentId,
117  DtBoost::shared_ptr<const DtElementAttribute> atr );
118 
120  void tacticalGraphicsVertexSelected( const DtUniqueID& vertexElementID,
121  const DtUniqueID& parentElementID );
122 
124  void tacticalGraphicsVertexDeselected( const DtUniqueID& vertexElementID,
125  const DtUniqueID& parentElementID );
126 
127  void onItemVisibilityChanged( const DtUniqueID& elementID, bool flag );
128 
130  virtual void slot_completeDiscovery();
131 
132  virtual void createVisualizer(DtVrlinkTacticalGraphicStateListener&);
133 
134  protected:
135 
136  typedef boost::unordered_map<DtUniqueID, DtTacticalGraphicElement*>
138 
139  typedef boost::unordered_map<std::string, DtTacticalGraphicElement*>
141 
142  typedef boost::unordered_map<DtUniqueID, DtVrlinkEnvironmentalStateListenerInterface*>
144 
151 
152  };
153 
154  }
155 }

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)