23 #include <boost/unordered_map.hpp>
24 #include <vl/globalObjectDesignator.h>
26 #include <vlutil/vlSmartPointers.h>
30 class DtAggregateVisualizerSet;
31 class DtElementAttribute;
35 class DtAggregateElement;
36 class DtEntityElement;
37 class DtVrlinkAggregateStateListener;
38 class DtVrlinkAggregateListener;
39 class DtVrlinkConnection;
71 std::vector<DtAggregateVisualizerSet*> findVisualizers(
98 void setVisualizerCreationProcessingTime(
double);
99 double visualizerCreationProcessingTime()
const;
103 visualTypeVisualizerCreationMap()
const;
113 virtual void modelSetVisualized(
int modelSet,
bool enabled);
116 virtual void elementAttributeChangeRequested(
DtUniqueID id,
117 DtUniqueID parentID, DtBoost::shared_ptr<const DtElementAttribute> atr );
120 virtual void handleElementAttributeChanged(
135 virtual void slot_visualizerCreationEnabled(
int modelSet,
int visualType );
139 virtual void slot_visualizerCreationDisabled(
int modelSet,
int visualType );
142 virtual void slot_aggregateDestroyedStateChanged(
DtElementID,
bool);
160 virtual void removeGhosting(
int modelSet,
DtElementID elementID);
163 virtual void setDisplayAggregates(
bool b);
166 virtual void setShowLeafNodes(
bool b);
169 virtual void setGhostEchelonLevelItems(
bool b);
172 virtual void setEchelonLevel(
int i);
175 virtual void setAllowSelectionOfGhostedItems(
bool);
192 virtual void mapGlobalIdsToElementIds(
DtElementID parent,
197 virtual void watchForGlobalIdDiscovery(
DtElementID parent,
const std::string& globalId);
209 virtual void connectToElementProcessor();
210 virtual void disconnectFromElementProcessor();
213 virtual void slot_completeDiscovery();
219 typedef boost::unordered_map<DtUniqueID, DtAggregateElement*>
221 typedef boost::unordered_map<std::string, DtAggregateElement*>
223 typedef boost::unordered_map<DtUniqueID, DtVrlinkAggregateStateListener*>
237 typedef boost::unordered_map<int, DtVisualizerSet*>
GhostPair;
238 typedef boost::unordered_map<DtElementID, GhostPair>
GhostMap;
242 typedef boost::unordered_map<std::string, DtElementID>
WatchList;
ToBeVisualizedMap myToBeVisualized
Definition: DtAggregateElementProcessor.h:233
DtVisualizerCreationSettings * myVisualTypeVisualizerSettings
Definition: DtAggregateElementProcessor.h:244
AggregateElementVisualizerMap myAggregateElementVisualizers
Definition: DtAggregateElementProcessor.h:228
WatchList myWatchList
Definition: DtAggregateElementProcessor.h:243
Virtual base class.
Definition: DtVirtualBaseClass.h:22
boost::signal< void(DtVrlinkAggregateStateListener &, DtAggregateElement *)> signal_elementCreated
Definition: DtAggregateElementProcessor.h:106
boost::unordered_map< DtUniqueID, DtAggregateElement * > AggregateElementVisualizerMap
Definition: DtAggregateElementProcessor.h:220
GlobalIdToAggregateElementVisualizerMap myGlobalIdToElementVisualizerMap
Definition: DtAggregateElementProcessor.h:229
std::vector< DtElementID > ElementIDs
Definition: DtElementIDHierarchy.h:114
DtVrlinkConnection & myConnection
Definition: DtAggregateElementProcessor.h:226
boost::unordered_map< int, DtVisualizerSet * > GhostPair
Definition: DtAggregateElementProcessor.h:237
boost::unordered_map< DtUniqueID, DtVrlinkAggregateStateListener * > ToBeVisualizedMap
Definition: DtAggregateElementProcessor.h:224
Entity state listener.
Definition: DtVrlinkEntityStateListener.h:34
Contains makVrv:DtSelectionManager class.
std::set< const DtElementIDHierarchyNode * > VisibilityProcessingList
Definition: DtElementIDHierarchy.h:115
DtSignalConnectionManager myConnections
Definition: DtAggregateElementProcessor.h:227
boost::unordered_map< std::string, DtElementID > WatchList
Definition: DtAggregateElementProcessor.h:242
boost::unordered_map< int, ModelSetVisualizerCreationMap > VisualTypeVisualizerCreationMap
Map that indicates whether a visualizer should be created, by visual type, for all given model sets...
Definition: DtVisualizerCreationSettings.h:36
double myVisualizerCreationProcessingTime
Definition: DtAggregateElementProcessor.h:234
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:26
The class that will be used to keep track of echelon hierarchy.
Definition: DtAggregateEchelonManager.h:31
DtAggregateEchelonManager & myEchelonHierarchy
Definition: DtAggregateElementProcessor.h:232
#define DL_DLL_IGCONVRLINK
Definition: dllExport.h:26
DisplayState
Used to keep track of state of item as it should appear visually in the hierarchy.
Definition: DtElementIDHierarchy.h:39
A single Aggregate element.
Definition: DtAggregateElement.h:30
A single entity element.
Definition: DtEntityElement.h:30
makArchives::DtAggregateSettingsRecord myAggregateSettings
Definition: DtAggregateElementProcessor.h:230
GhostMap myGhostMap
Definition: DtAggregateElementProcessor.h:240
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
The DtElementIDHierarchyNode class will contain information about an element, its children and its pa...
Definition: DtElementIDHierarchy.h:33
A class which represents the simulation the driver manages.
Definition: DtVrlinkConnection.h:42
The DtAggregateElementProcessor will connect to the DtAggregateExistenceListener and handle the creat...
Definition: DtAggregateElementProcessor.h:47
boost::unordered_map< DtElementID, GhostPair > GhostMap
Definition: DtAggregateElementProcessor.h:238
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
This contains all the DtVisualizers used to visualize an element in a particular model set...
Definition: DtVisualizerSet.h:30
#define DT_PROTOCOL_NAMESPACE
Make VR-Vantage VRLink code export with library #ifdef DL_DLL_IGCONVRLINK #undef DL_DLL_IGCONVRLINK #...
Definition: export.h:32
Aggregate state listener.
Definition: DtVrlinkAggregateStateListener.h:27
Base class to provide boost signal/slot management.
boost::unordered_map< std::string, DtAggregateElement * > GlobalIdToAggregateElementVisualizerMap
Definition: DtAggregateElementProcessor.h:222
This class is a set of aggregate visualizers, all of the visualizers in this set must support the agg...
Definition: DtAggregateVisualizerSet.h:24
Record class for aggregate settings.
Definition: DtAggregateSettingsRecord.h:19
DtElementAttribute is a common base class used for all element attributes, such as those found in a D...
Definition: DtElementAttribute.h:23
Contains DLL export macros.
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32
boost::signal< void(DtVrlinkAggregateStateListener &, DtAggregateElement *)> signal_elementAboutToBeDestroyed
Definition: DtAggregateElementProcessor.h:107
Container class which indicates which visualizers need to be created for each modelSet, based on whether that visualizer visualizes something that is currently enabled and if the visualizer is create-on-demand vs.
Definition: DtVisualizerCreationSettings.h:26
Contains the DtAggregateSettingsRecord class declaration.