VR-Forces 4.1 Class Documentation
DtEntityElementProcessor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: DtEntityElementProcessor.h,v $ $Revision: 1.17 $ $State: Exp $
7 ******************************************************************************/
8 
12 
13 #pragma once
14 
15 #include <vrvVrl/vrvVrl.h>
19 #include <boost/unordered_map.hpp>
20 #include <vl/globalObjDes.h>
21 
22 namespace makVrv
23 {
24  class DtEntityVisualizerSet;
25  class DtAggregateEchelonManager;
26  class DtEntityFilter;
27 
28  namespace DT_PROTOCOL_NAMESPACE
29  {
30  class DtEntityElement;
31  class DtEntityExistenceListener;
32  class DtVrlinkConnection;
34 
41  {
42  public:
45 
48  static void registerInstance(DtVrlinkConnection& conn,
49  DtEntityElementProcessor* instance);
50 
52  static DtEntityElementProcessor* findInstance(DtVrlinkConnection& conn);
53 
55  virtual ~DtEntityElementProcessor();
56 
58  void toggleLabelPinnedState(const DtSelectionManager::IdSet& ids);
59 
61  void changeEntitySelection(const DtSelectionManager::IdSet& selected,
62  const DtSelectionManager::IdSet& deselected);
63 
65  DtEntityVisualizerSet* findVisualizer(int modelSet, const DtGlobalObjectDesignator& id);
66 
69  std::vector<DtEntityVisualizerSet*> findVisualizers( const DtGlobalObjectDesignator& id);
70 
73  DtEntityVisualizerSet* findVisualizerSet(
74  const DtGlobalObjectDesignator& id, unsigned int modelSet);
75 
77  DtVrlinkEntityStateListener* findListener( const DtElementID& elementId );
78 
80  DtEntityElement* findElement( const DtElementID& elementId );
81 
83  DtEntityElement* findElement( const DtGlobalObjectDesignator& id );
84 
86  DtEntityVisualizerSet* findVisualizer( const DtUniqueID& id);
87 
90  void setVisualizerCreationProcessingTime(double);
91  double visualizerCreationProcessingTime() const;
92 
95  visualTypeVisualizerCreationMap() const;
96 
97  public:
98  boost::signal<void (DtVrlinkEntityStateListener&, DtEntityElement*)> signal_elementCreated;
99  boost::signal<void (DtVrlinkEntityStateListener&, DtEntityElement*)> signal_elementAboutToBeDestroyed;
100 
101  protected:
102 
105  virtual void modelSetVisualized(int modelSet, bool enabled);
106 
108  virtual void handleElementAttributeChanged(
109  DtEntityElement& entity, const DtElementAttribute* attr);
110 
112  virtual void onEntityDiscovered(DtVrlinkEntityStateListener& listener);
113 
115  virtual void onEntityToBeDestroyed(DtVrlinkEntityStateListener& listener);
116 
118  virtual bool onFilterEntity(const std::string& entityId);
119 
121  virtual void elementAttributeChangeRequested( DtUniqueID id,
122  DtUniqueID parentID, DtBoost::shared_ptr<const DtElementAttribute> atr );
123 
125  virtual void slot_completeDiscovery();
126 
127  virtual void slot_addEntityFilter(DtEntityFilter* filter);
128 
131  virtual void slot_visualizerCreationEnabled( int modelSet, int visualType );
132 
135  virtual void slot_visualizerCreationDisabled( int modelSet, int visualType );
136 
139  virtual void createElement(DtVrlinkEntityStateListener&);
140 
141  protected:
142 
143  typedef boost::unordered_map<DtUniqueID, DtEntityElement*>
145  typedef boost::unordered_map<std::string, DtEntityElement*>
147  typedef boost::unordered_map<DtUniqueID, DtVrlinkEntityStateListener*>
149  typedef std::vector<DtEntityFilter*> EntityFilterList;
150 
160  };
161  }
162 }

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)