VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEntityElementProcessor.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>
16 #include <boost/unordered_map.hpp>
17 #include <vl/globalObjectDesignator.h>
18 
19 namespace makVrv
20 {
21  class DtEntityVisualizerSet;
22  class DtAggregateEchelonManager;
23  class DtEntityFilter;
24 
25  namespace DT_PROTOCOL_NAMESPACE
26  {
27  class DtEntityElement;
28  class DtEntityExistenceListener;
29  class DtVrlinkConnection;
31 
38  {
39  public:
42 
45  static void registerInstance(DtVrlinkConnection& conn,
46  DtEntityElementProcessor* instance);
47 
49  static DtEntityElementProcessor* findInstance(DtVrlinkConnection& conn);
50 
52  virtual ~DtEntityElementProcessor();
53 
55  void toggleLabelPinnedState(const DtSelectionManager::IdSet& ids);
56 
58  void changeEntitySelection(const DtSelectionManager::IdSet& selected,
59  const DtSelectionManager::IdSet& deselected);
60 
62  DtEntityVisualizerSet* findVisualizer(int modelSet, const DtGlobalObjectDesignator& id);
63 
66  std::vector<DtEntityVisualizerSet*> findVisualizers( const DtGlobalObjectDesignator& id);
67 
70  DtEntityVisualizerSet* findVisualizerSet(
71  const DtGlobalObjectDesignator& id, unsigned int modelSet);
72 
74  DtVrlinkEntityStateListener* findListener( const DtElementID& elementId );
75 
77  DtEntityElement* findElement( const DtElementID& elementId );
78 
80  DtEntityElement* findElement( const DtGlobalObjectDesignator& id );
81 
83  DtEntityVisualizerSet* findVisualizer( const DtUniqueID& id);
84 
87  void setVisualizerCreationProcessingTime(double);
88  double visualizerCreationProcessingTime() const;
89 
92  visualTypeVisualizerCreationMap() const;
93 
94  public:
95  boost::signal<void (DtVrlinkEntityStateListener&, DtEntityElement*)> signal_elementCreated;
96  boost::signal<void (DtVrlinkEntityStateListener&, DtEntityElement*)> signal_elementAboutToBeDestroyed;
97 
98  protected:
99 
102  virtual void modelSetVisualized(int modelSet, bool enabled);
103 
105  virtual void handleElementAttributeChanged(
106  DtEntityElement& entity, const DtElementAttribute* attr);
107 
109  virtual void onEntityDiscovered(DtVrlinkEntityStateListener& listener);
110 
112  virtual void onEntityToBeDestroyed(DtVrlinkEntityStateListener& listener);
113 
115  virtual bool onFilterEntity(const std::string& entityId);
116 
118  virtual void elementAttributeChangeRequested( DtUniqueID id,
119  DtUniqueID parentID, DtBoost::shared_ptr<const DtElementAttribute> atr );
120 
122  virtual void slot_completeDiscovery();
123 
124  virtual void slot_addEntityFilter(DtEntityFilter* filter);
125 
128  virtual void slot_visualizerCreationEnabled( int modelSet, int visualType );
129 
132  virtual void slot_visualizerCreationDisabled( int modelSet, int visualType );
133 
136  virtual void createElement(DtVrlinkEntityStateListener&);
137 
138  protected:
139 
140  typedef boost::unordered_map<DtUniqueID, DtEntityElement*>
142  typedef boost::unordered_map<std::string, DtEntityElement*>
144  typedef boost::unordered_map<DtUniqueID, DtVrlinkEntityStateListener*>
146  typedef std::vector<DtEntityFilter*> EntityFilterList;
147 
157  };
158  }
159 }

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)