VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfStateViewCollectionManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vlutil/vlExceptions.h>
14 
15 #include <vrfGuiCore/vrfGuiCore.h>
19 #include <vrfGuiCore/orbatState.h>
21 #include <vrfutil/rwUUID.h>
24 
25 
26 #include <vrvCore/DtElementEntry.h>
28 #include <vrvCore/DtEntityState.h>
31 
32 #include <set>
33 #include <boost/function.hpp>
34 
35 namespace makVrv
36 {
37  class DtDe;
38 }
39 
40 namespace makVrf
41 {
42  class DtVrfSelectionFilter;
43  class DtVrfGuiOrbatManager;
44 
45  class DtAggregateStateViewCollection;
46  class DtPropulsionNoiseStateDataViewCollection;
47  class DtIffStateDataViewCollection;
48  class DtEmitterSystemStateViewCollection;
49  class DtWeatherStateViewCollection;
50  class DtCloudLayerStateViewCollection;
51  class DtEnvironmentStateViewCollection;
52  class DtActiveSonarStateViewCollection;
53  class DtLaserDesignatorStateViewCollection;
55 
56 
57  typedef boost::function<int (const DtEntityType&)> DtMaxMarkingTextLengthFunction;
58 
61  {
62  public:
64  DtStateViewMarkingTextProvider(const DtStateViewMarkingTextProvider& orig) : myStateView(orig.myStateView) {};
66  virtual DtString markingText() { return myStateView->state().myMarkingText.c_str(); };
67  virtual DtUUIDMarkingTextProvider* clone() const { return new DtStateViewMarkingTextProvider(*this); };
68 
69  operator DtString () { return markingText(); };
70 
71  protected:
73  };
74 
77  : public makVrv::DtStateViewCollection<makVrv::DtVrlinkSimulatedEntityState>
78  {
79  public:
81  : makVrv::DtStateViewCollection<makVrv::DtVrlinkSimulatedEntityState>(
82  de, makVrv::DtSimEntryUpdater::NoUpdates)
83  {
84  }
85  };
86 
91  : public makVrv::DtStateViewCollection<makVrv::DtVrlinkSimulatedBaseState>
92  {
93  public:
95  makVrv::DtStateViewCollection<makVrv::DtVrlinkSimulatedBaseState>(de, makVrv::DtSimEntryUpdater::NoUpdates)
96  {
97  }
98 
100  {
102  }
103  };
104 
141  {
142  public:
143  typedef boost::signals2::signal<void (const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*)> StateViewAddedOrRemovedSignal;
144 
145  public:
146 
149 
151  static DtVrfStateViewCollectionManager& instance(makVrv::DtDe& de);
153 
165 
166 
169  virtual DtBoost::shared_ptr<DtObjectDataInterface> lookupObjectData(const makVrv::DtUniqueID& id);
170 
173  virtual DtBoost::shared_ptr<DtObjectDataInterface> lookupSpotReportData(const makVrv::DtUniqueID& id);
174 
177  virtual DtBoost::shared_ptr<DtObjectDataInterface> lookupVrfTDLData(const makVrv::DtUniqueID& id);
178 
181  virtual DtBoost::shared_ptr<DtObjectDataInterface> lookupSpotReportData(const std::string& name);
182 
185  virtual DtBoost::shared_ptr<DtObjectDataInterface> lookupVrfTDLData(const std::string& uniqueIdentifier);
186 
189  virtual DtBoost::shared_ptr<DtObjectDataInterface> lookupOrbatData(const makVrv::DtUniqueID& id);
190 
193  virtual DtBoost::shared_ptr<DtObjectDataInterface> lookupOrbatData(const std::string& name);
194 
197  virtual DtBoost::shared_ptr<DtObjectDataInterface> lookupObjectData(const DtUUID&);
198 
202  virtual DtVector locationOf(makVrv::DtUniqueID id);
203 
205  virtual DtVector centerOfMass(const std::set<DtUUID>& uuids,
206  bool ignoreEmbarked = true);
207 
211  template<typename T_ObjectDataInterfaceType>
212  DtBoost::shared_ptr<T_ObjectDataInterfaceType> lookupAndCastObjectData(const makVrv::DtUniqueID& id)
213  {
214  return DtObjectDataInterface::cast<T_ObjectDataInterfaceType>(lookupObjectData(id));
215  }
216 
220  template<typename T_ObjectDataInterfaceType>
221  DtBoost::shared_ptr<T_ObjectDataInterfaceType> lookupAndCastSpotReportData(const makVrv::DtUniqueID& id)
222  {
223  return DtObjectDataInterface::cast<T_ObjectDataInterfaceType>(lookupSpotReportData(id));
224  }
225 
229  template<typename T_ObjectDataInterfaceType>
230  DtBoost::shared_ptr<T_ObjectDataInterfaceType> lookupAndCastVrfTDLData(const makVrv::DtUniqueID& id)
231  {
232  return DtObjectDataInterface::cast<T_ObjectDataInterfaceType>(lookupVrfTDLData(id));
233  }
234 
238  template<typename T_ObjectDataInterfaceType>
239  DtBoost::shared_ptr<T_ObjectDataInterfaceType> lookupAndCastOrvatData(const makVrv::DtUniqueID& id)
240  {
241  return DtObjectDataInterface::cast<T_ObjectDataInterfaceType>(lookupOrbatData(id));
242  }
243 
247  template<typename T_ObjectDataInterfaceType>
248  DtBoost::shared_ptr<T_ObjectDataInterfaceType> lookupAndCastObjectData(const DtUUID& uuid)
249  {
250  return DtObjectDataInterface::cast<T_ObjectDataInterfaceType>(lookupObjectData(uuid));
251  }
252 
256  template<typename T_ObjectDataInterfaceType>
257  DtBoost::shared_ptr<T_ObjectDataInterfaceType> lookupAndCastSpotReportData(const std::string& name)
258  {
259  return DtObjectDataInterface::cast<T_ObjectDataInterfaceType>(lookupSpotReportData(name));
260  }
261 
265  template<typename T_ObjectDataInterfaceType>
266  DtBoost::shared_ptr<T_ObjectDataInterfaceType> lookupAndCastVrfTDLData(const std::string& id)
267  {
268  return DtObjectDataInterface::cast<T_ObjectDataInterfaceType>(lookupVrfTDLData(id));
269  }
270 
274  template<typename T_ObjectDataInterfaceType>
275  DtBoost::shared_ptr<T_ObjectDataInterfaceType> lookupAndCastOrbatData(const std::string& name)
276  {
277  return DtObjectDataInterface::cast<T_ObjectDataInterfaceType>(lookupOrbatData(name));
278  }
279 
282  virtual DtBoost::shared_ptr<DtObjectDataInterface> lookupObjectData(makVrv::DtStateView<makVrv::DtSimState>* stateView);
284 
286  virtual DtEntityType entityTypeFromID(makVrv::DtUniqueID id);
287 
290  virtual makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>* addMappingBasedOnMarkingTextAndUUID(const std::string& markingText, const DtUUID& uuid);
291 
294  virtual makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>* findStateView(const DtUUID&, bool fullSearchIfMissing = false);
295 
297  virtual makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>* findStealthStateView(const std::string& address,
298  const std::string& markingText);
299 
302  virtual makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>* findStateViewByMarkingText(const std::string& markingText);
303 
305  virtual makVrv::DtStateView<DtSpotReportState>* findSpotReportStateView(const std::string& markingText);
306 
308  virtual makVrv::DtStateView<DtVrfTDLMessageDataState>* findVrfTDLDataStateView(const std::string& id);
309 
311  virtual makVrv::DtStateView<DtOrbatState>* findOrbatStateView(const std::string& markingText);
312 
316 
320  {
321  if (!mySpotReportStateViewCollection->hasStateView(id))
322  {
323  return 0;
324  }
325 
326  return const_cast<makVrv::DtStateView<DtSpotReportState>*>
327  (mySpotReportStateViewCollection->findStateView(id));
328  }
329 
333  {
334  if (!myVrfTDLDataStateViewCollection->hasStateView(id))
335  {
336  return 0;
337  }
338 
340  (myVrfTDLDataStateViewCollection->findStateView(id));
341  }
342 
346  {
347  if (!myExternalDataStateViewCollection->hasStateView(id))
348  {
349  return 0;
350  }
351 
352  return const_cast<makVrv::DtStateView<DtExternalDataState>*>
353  (myExternalDataStateViewCollection->findStateView(id));
354  }
355 
359  {
360  if (!myOrbatStateViewCollection->hasStateView(id))
361  {
362  return 0;
363  }
364 
365  return const_cast<makVrv::DtStateView<DtOrbatState>*>
366  (myOrbatStateViewCollection->findStateView(id));
367  }
368 
370  virtual void clearUUIDInformation();
371 
376  {
377  return mySimulatedEntityStateView;
378  }
379 
381  {
382  return mySimulatedBaseStateViewCollection;
383  }
384 
386  {
387  return myObjectDataStateViewCollection;
388  }
389 
391  {
392  return myEnvironmentStateViewCollection;
393  }
394 
396  {
397  return myExtendedStateDataViewCollection;
398  }
399 
401  {
402  return myWeatherStateViewCollection;
403  }
404 
406  {
407  return myCloudLayerStateViewCollection;
408  }
409 
411  {
412  return myIffStateDataViewCollection;
413  }
414 
416  {
417  return myPropulsionNoiseStateDataViewCollection;
418  }
419 
421  {
422  return myEmitterSystemStateViewCollection;
423  }
424 
426  {
427  return myActiveSonarStateViewCollection;
428  }
429 
431  {
432  return myLaserDesignatorStateViewCollection;
433  }
434 
436  {
437  return mySpotReportStateViewCollection;
438  }
439 
441  {
442  return myExternalDataStateViewCollection;
443  }
444 
446  {
447  return myVrfTDLDataStateViewCollection;
448  }
449 
451  {
452  return myOrbatStateViewCollection;
453  }
454 
456  {
457  return myAggregateStateViewCollection;
458  }
459 
461  {
462  return mySensorFieldOfViewStateViewCollection;
463  }
465 
468  makVrv::DtUniqueID parentId(const makVrv::DtUniqueID&) const;
469 
470  makVrv::DtUniqueID displayIdFromSimId(const makVrv::DtUniqueID& id, int modelSet = -1) const;
471  makVrv::DtElementData::SceneObjectIdList displayIdsFromSimId(const makVrv::DtUniqueID& id, int modelSet = -1) const;
472 
474  makVrv::DtUniqueID simIdFromDisplayId(const makVrv::DtUniqueID& id) const;
475 
477  const std::map<makVrv::DtUniqueID, const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*>&
479  {
480  return myStealthStates;
481  }
482 
484  virtual std::string entityName(const makVrv::DtUniqueID simId) const;
485 
487  virtual DtUUID objectUUID(makVrv::DtUniqueID simId) const;
488 
490  virtual std::string overlayName(const makVrv::DtUniqueID simId) const;
491 
493  virtual makVrv::DtElementEntry::ElementType elementType(const makVrv::DtElementID&) const;
494 
496  virtual makVrv::DtSimEntryUpdater::UpdateRate updateRateFor(const makVrv::DtBaseStateView* state) const;
497 
498  typedef std::vector<makVrv::DtSimEntryUpdater::UpdateRate> UpdateRates;
499  virtual makVrv::DtSimEntryUpdater::UpdateRate minimumRate(const UpdateRates&) const;
500  virtual makVrv::DtSimEntryUpdater::UpdateRate maximumRate(const UpdateRates&) const;
501 
505  virtual void setUpdateRate(makVrv::DtSimEntry*, makVrv::DtSimEntryUpdater::UpdateRate,
506  makVrv::DtBaseStateView* state);
507 
509  virtual void forceUpdateForRelevantInformation(makVrv::DtUniqueID id);
510 
513  virtual StateViewAddedOrRemovedSignal& signalWhenObjectAdded(const DtVrfSelectionFilter&);
514  virtual void processObjectAddedCallbacks(const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*);
515  virtual void removeAddedSignalReference(const DtVrfSelectionFilter&);
516  virtual void waiting();
517 
518  virtual StateViewAddedOrRemovedSignal& signalWhenObjectRemoved(const DtVrfSelectionFilter&);
519  virtual void removeRemovalSignalReference(const DtVrfSelectionFilter&);
520 
521  virtual void processObjectRemovedCallbacks(const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*);
522 
523  virtual void slot_simStateAdded(makVrv::DtSimObjectEntry& e);
524  virtual void slot_simStateToBeRemoved(makVrv::DtSimObjectEntry& e, makVrv::DtSimState&);
525 
526  virtual std::string lookupNameById(makVrv::DtUniqueID id);
527  virtual makVrv::DtUniqueID lookupIdByUUID(const DtUUID&);
528 
530  virtual void uniqueEntityTypes(makVrv::DtUniqueID, std::vector<DtEntityType>& entityTypes);
531 
533  virtual bool getSupportsWeightVariations(makVrv::DtUniqueID id);
534 
538  virtual const std::set<makVrv::DtUniqueID>& dIGuyIds();
539 
542  virtual void signalWhenAllObjectsDiscovered(const std::map<short, int>&);
543 
546 
547  virtual DtUUID uuidFromState(const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*) const;
548  virtual DtUUID uuidFromState(const makVrv::DtVrlinkSimulatedBaseState*) const;
549  virtual makVrv::DtUniqueID idFromState(const makVrv::DtVrlinkSimulatedBaseState*);
550 
552  boost::signals2::signal <void (const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*)> signal_stateAdded;
553  boost::signals2::signal <void (const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*)> signal_stateRemoved;
554 
556  boost::signals2::signal<void (makVrv::DtUniqueID, const DtUUID& oldUUID, const DtUUID& newUUID)> signal_uuidChanged;
557 
560  boost::signals2::signal <void ()> signal_allObjectsDiscovered;
561 
563  boost::signals2::signal <void (const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*, const std::string& newName)> signal_nameChanged;
564 
565  const std::set<makVrv::DtUniqueID>& tacticalGraphicElements() const;
566 
570  virtual int maxMarkingTextLengthFor(const DtEntityType&) const;
571  virtual void setMaxMarkingTextLengthFunction(DtMaxMarkingTextLengthFunction);
572  virtual DtMaxMarkingTextLengthFunction maxMarkingTextLengthFunction() const;
573 
574  virtual int defaultMaxMarkingTextLengthFunction(const DtEntityType&);
575 
576  protected:
577  virtual void uniqueEntityTypes(makVrv::DtUniqueID, std::vector<DtEntityType>& entityTypes, std::set<std::string>& typesChecked);
578  virtual void slot_onAttributesChanged( const makVrv::DtElementAttributeManager::EntryAttributesList& signalList );
579 
580  DtVrfGuiOrbatManager* vrfGuiOrbatManager() const;
581 
583  virtual bool shouldProcessState(const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*) const;
584 
586  virtual void slot_attributesChanged(const makVrv::DtElementAttributeManager::EntryAttributesList& l);
587 
588  protected:
607 
609 
610  std::map<short, int> myWaitingForDiscovery;
611 
612  typedef boost::unordered_map<makVrv::DtBaseStateView*, UpdateRates> UpdateRateMap;
613 
615 
618  {
624  };
625 
626  typedef std::vector<StateViewAddedOrRemovedStruct> StateViewAddedOrRemovedCallbacks;
628 
630  std::map<makVrv::DtElementID, bool> myWaiting;
631 
632  typedef boost::unordered_map<DtUUID, makVrv::DtUniqueID> UUIDToIdMap;
633  typedef boost::unordered_map<makVrv::DtUniqueID, DtUUID> IdToUUIDMap;
634 
637 
639 
640  std::map<makVrv::DtUniqueID, const makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*> myStealthStates;
641  std::string myStealthType;
642 
643  std::set<makVrv::DtUniqueID> myTacticalGraphicElements;
644 
645  std::set<makVrv::DtUniqueID> myDIGuyIds;
646  boost::unordered_set<makVrv::DtUniqueID> myIdsToCheckForDIGuy;
647 
648  boost::unordered_set<DtUUID> myDidNotFindStateViewFor;
649 
651  };
652 
653  template<typename T> T findStateFor(makVrv::DtSimEntry* entry)
654  {
655  makVrv::DtSimEntry::SimStateVector::const_iterator pos = entry->simStates().begin();
656  makVrv::DtSimEntry::SimStateVector::const_iterator endPos = entry->simStates().end();
657  for(; pos != endPos; ++pos)
658  {
659  T tState = dynamic_cast<T>(*pos);
660  if(tState)
661  {
662  return tState;
663  }
664  }
665 
666  return 0;
667  }
668 
670  DT_DLL_VRFGUICORE std::vector<DtUUID> convertMarkingTextVectorToUUIDVector(const std::vector<DtString>& v);
671  DT_DLL_VRFGUICORE std::vector<DtUUID> convertMarkingTextVectorToUUIDVector(const std::vector<std::string>& v);
672 
674  DT_DLL_VRFGUICORE std::vector<std::string> convertUUIDVectorToUUIDStringVector(const std::vector<DtUUID>& v);
675 
677  DT_DLL_VRFGUICORE std::vector<std::string> convertUUIDVectorToMarkingTextVector(const std::vector<DtUUID>& v);
678 }
UUID is a unique ID wrapper class.
Definition: rwUUID.h:226
std::set< makVrv::DtUniqueID > myDIGuyIds
Definition: vrfStateViewCollectionManager.h:645
DtCloudLayerStateViewCollection * myCloudLayerStateViewCollection
Definition: vrfStateViewCollectionManager.h:601
DtBoost::shared_ptr< T_ObjectDataInterfaceType > lookupAndCastObjectData(const DtUUID &uuid)
Definition: vrfStateViewCollectionManager.h:248
makVrv::DtSignalConnectionManager myConnectionManager
Definition: vrfStateViewCollectionManager.h:629
std::vector< DtUniqueID > SceneObjectIdList
Public Type Definitions.
Definition: DtElementData.h:38
DtExternalDataStateViewCollection * externalDataStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:440
StateViewAddedOrRemovedSignal * removed
Definition: vrfStateViewCollectionManager.h:622
DtBoost::shared_ptr< T_ObjectDataInterfaceType > lookupAndCastObjectData(const makVrv::DtUniqueID &id)
Definition: vrfStateViewCollectionManager.h:212
class DtVrfSelectionFilter
Definition: vrfSelectionFilters.h:32
DtIffStateDataViewCollection * myIffStateDataViewCollection
Definition: vrfStateViewCollectionManager.h:599
DtExtendedStateDataViewCollection * myExtendedStateDataViewCollection
Definition: vrfStateViewCollectionManager.h:598
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
StateViewAddedOrRemovedSignal * added
Definition: vrfStateViewCollectionManager.h:620
DT_DLL_VRFGUICORE std::vector< DtUUID > convertMarkingTextVectorToUUIDVector(const std::vector< DtString > &v)
Utility method to convert a vector of names to UUIDs.
std::map< makVrv::DtElementID, bool > myWaiting
Definition: vrfStateViewCollectionManager.h:630
DtExternalDataStateViewCollection * myExternalDataStateViewCollection
Definition: vrfStateViewCollectionManager.h:594
UUIDToIdMap myUUIDToIdMap
Definition: vrfStateViewCollectionManager.h:635
Contains makVrv::DtStateViewCollection class.
DtStateViewMarkingTextProvider(makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > *sv)
Definition: vrfStateViewCollectionManager.h:63
DtVrfSimulatedEntityStateViewCollection(makVrv::DtDe &de)
Definition: vrfStateViewCollectionManager.h:80
const SimStateVector & simStates() const
SimStateVector accessor.
DtCloudLayerStateViewCollection * cloudLayerStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:405
makVrv::DtVrlinkSensorFieldsOfViewStateViewCollection * mySensorFieldOfViewStateViewCollection
Definition: vrfStateViewCollectionManager.h:606
Collection of VRF IFF specific state data. Use this state view to get information for IFF data for an...
Definition: iffStateData.h:103
DT_DLL_VRFGUICORE std::vector< std::string > convertUUIDVectorToMarkingTextVector(const std::vector< DtUUID > &v)
Returns a vector of objectName() from UUID.
UpdateRateMap myUpdateRateMap
Definition: vrfStateViewCollectionManager.h:614
UpdateRate
Definition: DtSimEntryUpdater.h:31
DtVrfObjectDataStateViewCollection * objectDataStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:385
Marking text provider for state view.
Definition: vrfStateViewCollectionManager.h:60
boost::unordered_set< makVrv::DtUniqueID > myIdsToCheckForDIGuy
Definition: vrfStateViewCollectionManager.h:646
makVrv::DtDe & myDe
Definition: vrfStateViewCollectionManager.h:608
State view collection for orbat data.
Definition: orbatState.h:52
Collection of VRF propulsion noise specific state data. Use this state view to get information for pr...
Definition: propulsionNoiseStateData.h:95
DtVrlinkSimulatedBaseStateViewCollection * mySimulatedBaseStateViewCollection
Definition: vrfStateViewCollectionManager.h:590
DtAggregateStateViewCollection * myAggregateStateViewCollection
Definition: vrfStateViewCollectionManager.h:597
A DtBaseStateView is a the base class for all DtStateView&#39;s.
Definition: DtStateView.h:25
State view collection for external data. This is just a collection that can be used by other classes ...
Definition: externalDataState.h:98
std::string myStealthType
Definition: vrfStateViewCollectionManager.h:641
makVrv::DtVrlinkSensorFieldsOfViewStateViewCollection * sensorFieldOfViewStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:460
A DtSimEntry is a container of DtSimState&#39;s and represents the total state of an simulation object...
Definition: DtSimEntry.h:27
The DtVrfGuiOrbatManager is the interface to determine if items are in the orbat hierarchy or not...
Definition: vrfGuiOrbatManager.h:54
Contains the DtUUID class declaration.
State view collection for aggregate data.
Definition: aggregateState.h:88
DtBoost::shared_ptr< T_ObjectDataInterfaceType > lookupAndCastSpotReportData(const std::string &name)
Definition: vrfStateViewCollectionManager.h:257
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
DtVrfSimulatedEntityStateViewCollection * mySimulatedEntityStateView
Definition: vrfStateViewCollectionManager.h:589
StateViewAddedOrRemovedCallbacks myStateViewAddedOrRemovedCallbacks
Definition: vrfStateViewCollectionManager.h:627
DtVrfTDLMessageDataStateViewCollection * myVrfTDLDataStateViewCollection
Definition: vrfStateViewCollectionManager.h:595
makVrv::DtStateView< DtExternalDataState > * findExternalDataStateView(const makVrv::DtUniqueID &id)
Finds an external state view given the objects element id. If you have a scene id, call simIdFromDisplayId to return the element id from a scene id.
Definition: vrfStateViewCollectionManager.h:345
std::map< short, int > myWaitingForDiscovery
Definition: vrfStateViewCollectionManager.h:610
DtVrfSimulatedEntityStateViewCollection * simulatedEntityStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:375
Collection of VRF active sonar specific state data. Use this state view to get information for laser ...
Definition: laserDesignatorState.h:64
DtBoost::shared_ptr< T_ObjectDataInterfaceType > lookupAndCastSpotReportData(const makVrv::DtUniqueID &id)
Definition: vrfStateViewCollectionManager.h:221
DtBoost::shared_ptr< T_ObjectDataInterfaceType > lookupAndCastOrbatData(const std::string &name)
Definition: vrfStateViewCollectionManager.h:275
std::vector< StateViewAddedOrRemovedStruct > StateViewAddedOrRemovedCallbacks
Definition: vrfStateViewCollectionManager.h:626
DtMaxMarkingTextLengthFunction myMaxMarkingTextLengthFunction
Definition: vrfStateViewCollectionManager.h:650
State view collection for entity state data.
Definition: vrfStateViewCollectionManager.h:76
DtSpotReportStateViewCollection * spotReportStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:435
boost::unordered_set< DtUUID > myDidNotFindStateViewFor
Definition: vrfStateViewCollectionManager.h:648
std::map< makVrv::DtUniqueID, const makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > * > myStealthStates
Definition: vrfStateViewCollectionManager.h:640
DtOrbatStateViewCollection * orbatStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:450
T findStateFor(makVrv::DtSimEntry *entry)
Definition: vrfStateViewCollectionManager.h:653
DtOrbatStateViewCollection * myOrbatStateViewCollection
Definition: vrfStateViewCollectionManager.h:596
Collection of VRF active sonar specific state data. Use this state view to get information for active...
Definition: vrlinkActiveSonarState.h:123
virtual ~DtStateViewMarkingTextProvider()
Definition: vrfStateViewCollectionManager.h:65
std::vector< makVrv::DtSimEntryUpdater::UpdateRate > UpdateRates
Definition: vrfStateViewCollectionManager.h:498
Contains makVrv::DtVirtualBaseClass class.
DtSpotReportStateViewCollection * mySpotReportStateViewCollection
Definition: vrfStateViewCollectionManager.h:593
virtual DtUUIDMarkingTextProvider * clone() const
Definition: vrfStateViewCollectionManager.h:67
Definition: vrfStateViewCollectionManager.h:617
Collection of VRF Weather specific state data. Use this state view to get information for Weather dat...
Definition: vrlinkSimulatedCloudLayerState.h:75
DtEnvironmentStateViewCollection * environmentStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:390
A DtSimObjectEntry is an entry for a persistent simulation object like an entity. ...
Definition: DtSimObjectEntry.h:22
State view collection for environmental data.
Definition: vrlinkSimulatedEnvironmentProcess.h:109
boost::unordered_map< DtUUID, makVrv::DtUniqueID > UUIDToIdMap
Definition: vrfStateViewCollectionManager.h:632
Collection of VRF Weather specific state data. Use this state view to get information for Weather dat...
Definition: vrlinkSimulatedWeatherState.h:168
DtLaserDesignatorStateViewCollection * myLaserDesignatorStateViewCollection
Definition: vrfStateViewCollectionManager.h:605
State view collection for extended state data.
Definition: extendedStateData.h:58
State view collection for spot report data.
Definition: spotReportState.h:119
makVrv::DtStateView< DtSpotReportState > * findSpotReportStateView(const makVrv::DtUniqueID &id)
Finds a spot report state view given the objects element id. If you have a scene id, call simIdFromDisplayId to return the element id from a scene id.
Definition: vrfStateViewCollectionManager.h:319
virtual DtString markingText()
Definition: vrfStateViewCollectionManager.h:66
makVrv::DtStateView< DtVrfTDLMessageDataState > * findVrfTDLDataStateView(const makVrv::DtUniqueID &id)
Finds a TDL state view given the objects element id. If you have a scene id, call simIdFromDisplayId ...
Definition: vrfStateViewCollectionManager.h:332
makVrv::DtStateView< DtOrbatState > * findOrbatStateView(const makVrv::DtUniqueID &id)
Finds an orbat state view given the objects element id. If you have a scene id, call simIdFromDisplay...
Definition: vrfStateViewCollectionManager.h:358
DtActiveSonarStateViewCollection * activeSonarStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:425
std::vector< EntryAttributes > EntryAttributesList
Define the type used to signal changes to one or more attributes for one or more elements.
Definition: DtElementAttributeManager.h:43
boost::unordered_map< makVrv::DtBaseStateView *, UpdateRates > UpdateRateMap
Definition: vrfStateViewCollectionManager.h:612
A DtStateViewCollection is a collection of DtStateViews of a specific state.
Definition: DtStateViewCollection.h:27
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Contains makVrv::DtVrlinkSimulatedEntityState class.
State view collection for TDL data.
Definition: vrfTDLMessageDataState.h:114
DtEmitterSystemStateViewCollection * emitterSystemStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:420
boost::signals2::signal< void(makVrv::DtUniqueID, const DtUUID &oldUUID, const DtUUID &newUUID)> signal_uuidChanged
Signal sent when a UUID has changed for the particular element ID.
Definition: vrfStateViewCollectionManager.h:556
This class is the central point for looking up information about a particular object in the VRF GUI...
Definition: vrfStateViewCollectionManager.h:139
DtVrfSelectionFilter * filter
Definition: vrfStateViewCollectionManager.h:619
DtLaserDesignatorStateViewCollection * laserDesignatorStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:430
ElementType
Definition: DtElementEntry.h:26
Collection of VRF Object specific state data. Use this state view to get information such as labels...
Definition: vrfObjectDataState.h:211
DtExtendedStateDataViewCollection * extendedStateDataViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:395
DtVrfGuiOrbatManager * myVrfGuiOrbatManager
Definition: vrfStateViewCollectionManager.h:638
DtBoost::shared_ptr< T_ObjectDataInterfaceType > lookupAndCastVrfTDLData(const std::string &id)
Definition: vrfStateViewCollectionManager.h:266
DtPropulsionNoiseStateDataViewCollection * propulsionNoiseStateDataViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:415
DtIffStateDataViewCollection * iffStateDataViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:410
bool isCompatible(DtSimObjectEntry &entry)
Returns true if the DtSimEntry contains a state of type T.
Definition: DtStateViewCollection.h:196
int myNextToken
Definition: vrfStateViewCollectionManager.h:616
IdToUUIDMap myIdToUUIDMap
Definition: vrfStateViewCollectionManager.h:636
std::set< makVrv::DtUniqueID > myTacticalGraphicElements
Definition: vrfStateViewCollectionManager.h:643
const std::map< makVrv::DtUniqueID, const makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > * > & stealthStates() const
Returns all the current stealth states. myEntityId is the site/app id of the stealth.
Definition: vrfStateViewCollectionManager.h:478
boost::signals2::signal< void()> signal_allObjectsDiscovered
If set up for it, a signal sent when the object counts map has had all the objects of all kind/domain...
Definition: vrfStateViewCollectionManager.h:560
int addedReference
Definition: vrfStateViewCollectionManager.h:621
Base class to provide boost signal/slot management.
DtPropulsionNoiseStateDataViewCollection * myPropulsionNoiseStateDataViewCollection
Definition: vrfStateViewCollectionManager.h:602
DtWeatherStateViewCollection * weatherStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:400
DtVrfTDLMessageDataStateViewCollection * vrfTDLDataStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:445
A DtSimState is the base class for all state objects. Derived instances of DtSimState will be created...
Definition: DtSimState.h:19
boost::unordered_map< makVrv::DtUniqueID, DtUUID > IdToUUIDMap
Definition: vrfStateViewCollectionManager.h:633
Contains the DtElementAttributeManager class declaration.
boost::function< int(const DtEntityType &)> DtMaxMarkingTextLengthFunction
Definition: vrfStateViewCollectionManager.h:54
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
DtEnvironmentStateViewCollection * myEnvironmentStateViewCollection
Definition: vrfStateViewCollectionManager.h:592
boost::signals2::signal< void(const makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > *)> StateViewAddedOrRemovedSignal
Definition: vrfStateViewCollectionManager.h:143
DtActiveSonarStateViewCollection * myActiveSonarStateViewCollection
Definition: vrfStateViewCollectionManager.h:604
DtVrlinkSimulatedBaseStateViewCollection * simulatedBaseStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:380
int removedReference
Definition: vrfStateViewCollectionManager.h:623
DtBoost::shared_ptr< T_ObjectDataInterfaceType > lookupAndCastVrfTDLData(const makVrv::DtUniqueID &id)
Definition: vrfStateViewCollectionManager.h:230
DtWeatherStateViewCollection * myWeatherStateViewCollection
Definition: vrfStateViewCollectionManager.h:600
DtEmitterSystemStateViewCollection * myEmitterSystemStateViewCollection
Definition: vrfStateViewCollectionManager.h:603
DtBoost::shared_ptr< T_ObjectDataInterfaceType > lookupAndCastOrvatData(const makVrv::DtUniqueID &id)
Definition: vrfStateViewCollectionManager.h:239
DT_DLL_VRFGUICORE std::vector< std::string > convertUUIDVectorToUUIDStringVector(const std::vector< DtUUID > &v)
Returns a vector of uuidString.
DtAggregateStateViewCollection * aggregateStateViewCollection()
Return collections that represent what types of state views are contained.
Definition: vrfStateViewCollectionManager.h:455
To allow for faster marking text lookups, the DtUUIDMarkingTextProvider class wraps an object that wi...
Definition: rwUUID.h:39
Contains makVrv::DtElementEntry class.
DtVrfObjectDataStateViewCollection * myObjectDataStateViewCollection
Definition: vrfStateViewCollectionManager.h:591
DtStateViewMarkingTextProvider(const DtStateViewMarkingTextProvider &orig)
Definition: vrfStateViewCollectionManager.h:64
Collection of VRF emitter specific state data. Use this state view to get information for emitter dat...
Definition: vrlinkEmitterSystemState.h:134

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)