VR-Forces 4.1.1 Class Documentation
DtVrfSelectionHandler.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrfGuiCore/vrfGuiCore.h>
16 
19 #include <vrvCore/DtUniqueID.h>
20 #include <vrvCore/DtSimState.h>
21 #include <vrvCore/DtEntityState.h>
22 
23 #include <vlpi/entityType.h>
24 #include <boost/signal.hpp>
25 
26 namespace makVrv
27 {
28  class DtDe;
29  class DtBaseStateView;
30  class DtSimEntry;
31  class DtChannel;
32 }
33 
34 class Dt3dBoundingVolume;
35 
36 namespace makVrf
37 {
41  {
42  public:
44  virtual ~DtVrfSelectionHandler();
45 
47  static DtVrfSelectionHandler& instance(makVrv::DtDe& de);
48 
49  public:
51  virtual void currentSelectionChanged(const makVrv::DtSelectionManager::IdSet& selected);
52  boost::signal<void (const makVrv::DtSelectionManager::IdSet& selected)> signal_currentSelectionChanged;
53 
55  virtual std::vector<std::string> getSelectedNames() const;
56  virtual std::vector<std::string> getSelectedNames(const makVrv::DtSelectionManager::IdSet&) const;
57 
59  virtual std::vector<makVrv::DtSimEntry*> getSelectedEntries() const;
60  virtual std::vector<makVrv::DtSimEntry*> getSelectedEntries(const makVrv::DtSelectionManager::IdSet&) const;
61 
63  virtual void selectObjects(const std::vector<std::string>& names);
64 
66  virtual bool allObjectsAreVrfSimulated(const makVrv::DtSelectionManager::IdSet&) const;
67 
69  virtual bool objectIsVrfSimulated(makVrv::DtUniqueID) const;
70 
71  virtual const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>* getVrlinkSimulatedState(makVrv::DtUniqueID id) const;
72 
75  virtual DtEntityType getEntityTypeFromUniqueID(makVrv::DtUniqueID id) const;
76 
81  virtual void selectItemsInScreenBox(makVrv::DtChannel& channel,
82  int minX, int minY, int maxX, int maxY, const makVrv::DtSelectionManager::IdSet& mergeWith = makVrv::DtSelectionManager::IdSet(),
83  bool requestTaskSets = true);
84 
86  virtual bool isWithinScreenBounds(makVrv::DtChannel&, const makVrv::DtUniqueID& id, const makVrv::DtVrlinkSimulatedBaseState*,
87  int minX, int minY, int maxX, int maxY) const;
88  virtual makVrv::DtUniqueID sceneObjectIdFromElementId( makVrv::DtChannel& channel, const makVrv::DtUniqueID& elementID ) const;
89 
91  virtual void setLastDatabaseLocation(const DtVector&);
92 
94  virtual const DtVector& lastDatabaseLocation() const;
95 
97  virtual void setAllowNonVrfItemsToBeManipulated(bool);
98  virtual bool allowNonVrfItemsToBeManipulated() const;
99 
103  virtual void zoomToExtents() const;
104 
106  virtual void zoomToBoundingVolume(const DtVector& geometricCenter, double radius) const;
107 
108  protected:
109 
110  virtual void slot_onCurrentSelectionChanged(
111  const makVrv::DtSelectionManager::IdSet& selected,
112  const makVrv::DtSelectionManager::IdSet& deselected);
113 
114  virtual void slot_onObjectEntryAdded(makVrv::DtSimObjectEntry&);
115 
118  virtual void slot_onSimStateAdded(makVrv::DtSimObjectEntry& entry);
119 
120  virtual void slot_onStateViewUpdated(makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*);
121 
122  virtual void slot_deInitialized(makVrv::DtDe&);
123 
124  public:
125  boost::signal<void (const DtVector&)> signal_lastDatabaseLocationSet;
126 
127  protected:
133  };
134 }

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)