VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
guiLocalObjectManager.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2022 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
6 #pragma once
7 
15 #include <vrvCore/DtEntityState.h>
16 #include <vrvCore/DtStateView.h>
17 #include <vrvCore/DtIntersector.h>
21 
22 #include <vlutil/vlSmartPointers.h>
23 #include <boost/shared_ptr.hpp>
24 
25 #include <boost/archive/xml_iarchive.hpp>
26 #include <boost/archive/xml_oarchive.hpp>
27 #include <boost/serialization/access.hpp>
28 #include <boost/serialization/nvp.hpp>
29 #include <boost/serialization/list.hpp>
30 #include <boost/serialization/map.hpp>
31 #include <boost/serialization/vector.hpp>
32 #include <boost/serialization/string.hpp>
33 
34 #include <matrix/vlVector.h>
35 
36 class DtEntityType;
37 
38 namespace makVrv
39 {
40  class DtDe;
41  class DtTacticalGraphicOverlay;
42  struct DtVrlinkSimulatedBaseState;
43  struct DtVrlinkSimulatedEntityState;
44 }
45 
48 namespace makVrf
49 {
50 
51  class DtVrfObjectFacadeInterface;
52  class DtEnvironmentalFacadeCollection;
53  class DtEntityFacadeCollection;
54  struct DtVrlinkSimulatedEnvironmentProcess;
55 
66 
68  {
69  public:
70  enum ClampFlag
71  {
72  Highest = 0,
75  ClosestDown
76  };
77 
79 
80  static DtGuiLocalObjectManager& instance(makVrv::DtDe& de);
81  static void registerInstance(makVrv::DtDe& de, DtGuiLocalObjectManager*);
82 
83  virtual ~DtGuiLocalObjectManager();
84 
86  virtual bool isCreating() const;
87 
89  virtual void tacticalGraphicsVertexSelected(
90  const makVrv::DtUniqueID& selected, const makVrv::DtUniqueID& parentElementID);
91 
93  virtual void tacticalGraphicsVertexDeselected(
94  const makVrv::DtUniqueID& deselected, const makVrv::DtUniqueID& parent);
95 
97  virtual void slot_onCurrentSelectionChanged(
98  const makVrv::DtSelectionManager::IdSet& selected,
99  const makVrv::DtSelectionManager::IdSet& deselected);
100 
102  virtual DtVrfObjectFacadeInterface* facadeForID(makVrv::DtUniqueID);
103 
105  virtual std::vector<makVrv::DtUniqueID> uniqueIdsForTypesThatMatch(const DtEntityType&) const;
106 
111  virtual DtEnvironmentalFacadeCollection* create(const DtVrlinkSimulatedEnvironmentProcess&, int dictionartToUse = -1);
112 
122  virtual DtEnvironmentalFacadeCollection* create(const DtEntityType& t,
123  const std::vector<DtVector>& localPoints,
124  int force,
126  makVrv::DtModelSetId modelSet = makVrv::DtModelSetId::Unspecified, bool keepName = false, int dictionaryToUse = -1);
127 
132  virtual DtEntityFacadeCollection* create(const makVrv::DtVrlinkSimulatedEntityState&, const std::string& overlayParent = "",
133  int dictionaryToUse = -1);
134 
144  virtual DtEntityFacadeCollection* create(const DtEntityCreationData&,
145  makVrv::DtModelSetId modelSet = makVrv::DtModelSetId::Unspecified, bool keepName = false, int dictionaryToUse = -1);
146 
148  virtual DtVrfObjectFacadeInterface* createObject(const DtVrfObjectManipulationHandlerBaseClass::ObjectManipulationData&, const bool showInObjectList = false);
149 
151  virtual const makVrv::DtTacticalGraphicOverlay* createOnLayer(const std::string& layerName = "");
152 
154  virtual void completeStateUpdate(makVrv::DtUniqueID id);
155 
157  virtual void setVisible(makVrv::DtUniqueID id, bool hide);
158 
160  virtual bool isLocal(makVrv::DtUniqueID id) const;
161 
162  virtual void updateState(makVrv::DtUniqueID id);
163 
166  virtual void setEditable(makVrv::DtUniqueID id, bool);
167 
170  virtual bool isEditable(makVrv::DtUniqueID id, const std::string& keywords = "") const;
171 
173  virtual bool isMemberOfLayer(makVrv::DtUniqueID id, const std::string& layername) const;
174 
176  virtual void deleteLocal(makVrv::DtUniqueID id);
177 
179  virtual void deleteAll(std::vector<DtEntityType> except = std::vector<DtEntityType>());
180 
182  virtual void deleteAllFromLayer(const std::string& layername);
183 
189  {
191  : name( 0 )
192  , force( 0 )
193  , overlay( 0 )
194  , userData( 0 )
195  , extendedData( 0 )
196  , extendedLabels( 0 )
197  , newHeading( 0 )
198  , newPitch( 0 )
199  , color( 0 )
200  , appearance( 0 )
201  , label( 0 )
202  , physicalLineHeight( 0 )
203  , physicalLineWidth( 0 )
204  {
205  isGeocentric = false;
206  }
207 
209  : name( &omd.objectName )
210  , force( &omd.force )
211  , overlay( &omd.overlay )
212  , userData( &omd.userData )
213  , extendedData( &omd.extendedData )
214  , extendedLabels( &omd.extendedLabels )
215  , newHeading( &omd.heading )
216  , newPitch( &omd.pitch )
217  , color( 0 )
218  , appearance( 0 )
219  , label( 0 )
220  , physicalLineHeight( 0 )
221  , physicalLineWidth( 0 )
222  {
223  isGeocentric = false;
224  }
225 
226  const std::string* name;
227  std::vector<DtVector> points;
228  const int* force;
229  const std::string* overlay;
230  const std::string* userData;
231  const std::map<std::string, std::string>* extendedData;
232  const std::map<int, DtString>* extendedLabels;
233  const double* newHeading;
234  const double* newPitch;
235  const int* color;
236  const int* appearance;
237  const std::string* label;
238  const float* physicalLineHeight;
239  const float* physicalLineWidth;
241  };
242 
243  virtual void update(makVrv::DtElementID id, const LocalObjectUpdateStructure& updateStructure, bool forceUpdate = true);
244 
246  virtual DtVector getVertexPosition(makVrv::DtElementID parent, makVrv::DtUniqueID vertexId) const;
247 
250  virtual void create(const DtEntityType& t, int force);
251 
253  virtual bool allSelectionIsLocal() const;
254 
256  virtual void setCanCreateLocalObjects(bool);
257 
259  virtual bool canCreateLocalObjects() const;
260 
262  virtual void save(const std::string&);
263 
265  virtual std::string toStringBuffer();
266 
268  virtual bool fromStringBuffer(const std::string&, bool removeAll = true);
269 
271  virtual bool load(const std::string&, bool removeAll = true);
272 
274  virtual int numberOfLocalObjects() const;
275 
278  virtual double groundHeight(const DtVector& lp, makVrv::DtIntersector::IntersectProperties props =
279  makVrv::DtIntersector::SupportNodes, ClampFlag clampFlag = Closest, DtVector* clampedPoint = 0,
280  const std::vector<makVrv::DtUniqueID>& ignore = std::vector<makVrv::DtUniqueID>(), makVrv::DtUniqueID* hitId = 0) const;
281 
285  virtual DtVector clampToGround(const DtVector&, makVrv::DtIntersector::IntersectProperties props =
286  makVrv::DtIntersector::SupportNodes, const std::vector<makVrv::DtUniqueID>& ignore = std::vector<makVrv::DtUniqueID>(),
287  bool useHighestLOD = false, bool ignoreDynamicOcean = false, ClampFlag useHighestPolygon = Closest,
288  makVrv::DtUniqueID* hitId = 0) const;
289 
292  virtual DtGeodeticCoord clampToGround(const DtGeodeticCoord&, makVrv::DtIntersector::IntersectProperties props =
293  makVrv::DtIntersector::SupportNodes, const std::vector<makVrv::DtUniqueID>& ignore = std::vector<makVrv::DtUniqueID>(),
294  bool useHighestLOD = false, bool ignoreDynamicOcean = false, ClampFlag useHighestPolygon = Closest, makVrv::DtUniqueID* hitId = 0) const;
295 
296  virtual std::string generateUniqueName(const std::string& base, bool addNumberToBegin = false) const;
297 
299  virtual void ignoreFromArchive(const DtEntityType&);
300  virtual void removeIgnoreFromArchive(const DtEntityType&);
301 
302  protected:
304  virtual void slot_objectVisibilityChanged( makVrv::DtUniqueID id, bool isShown, int context );
305 
307  virtual void slot_onStateViewUpdated(makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*);
308 
310  virtual void completeStateViewUpdated(makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>*, bool forceIfHidden = false);
311 
315 
316  virtual void slot_stoppedObjectCreation();
317 
319  virtual bool shouldArchive(makVrv::DtVrlinkSimulatedBaseState*) const;
320 
322  virtual void clearingTerrain();
323 
324  public:
329  boost::signals2::signal<void (bool)> signal_creating;
330 
332  boost::signals2::signal<void (DtVrfObjectFacadeInterface*, const DtEntityType&)> signal_preVisualize;
333 
335  boost::signals2::signal<void (DtVrfObjectFacadeInterface*, makVrv::DtVrlinkSimulatedBaseState*)> signal_objectCreated;
336 
338  boost::signals2::signal<void (DtVrfObjectFacadeInterface*)> signal_objectAboutToBeDeleted;
339 
341  boost::signals2::signal<void (bool)> signal_loading;
342 
344  boost::signals2::signal<void (makVrv::DtUniqueID)> signal_objectDeleted;
345 
347  boost::signals2::signal<void ()> signal_terrainClearing;
348  boost::signals2::signal<void ()> signal_terrainCleared;
349 
351 
352  protected:
353  friend class boost::serialization::access;
354 
358  template<class Archive>
359  void serialize(Archive & ar, const unsigned int version)
360  {
361  if (Archive::is_loading::value)
362  {
363  read(*(boost::archive::xml_iarchive*)&ar);
364  }
365  else
366  {
367  write(*(boost::archive::xml_oarchive*)&ar);
368  }
369  }
370 
371  virtual void write(boost::archive::xml_oarchive& out);
372  virtual void read(boost::archive::xml_iarchive& in);
373 
374  protected:
376 
378 
380  typedef std::map<makVrv::DtUniqueID, DtVrfObjectFacadeInterface*> LocalObjects;
383 
384  typedef std::map<makVrv::DtUniqueID, makVrv::DtVrlinkSimulatedBaseState*> LocalStateData;
386 
388 
389  std::vector<DtEntityType> myIgnoreFromArchive;
390 
391  boost::signals2::scoped_connection myCompleteViewUpdatedConnection;
392 
394  {
396  : myProps(makVrv::DtIntersector::IntersectProperties(0))
397  , myUseHighestLOD(false)
398  , myIgnoreDynamicOcean(false)
399  , myUseHighestPolygon(Closest)
400  , myHitId(0)
401  {
402  }
403 
405  bool useHighestLOD, bool ignoreDynamicOcean, ClampFlag useHighestPolygon, const std::vector<makVrv::DtUniqueID>& ignore)
406  : myCheckPoint(lp)
407  , myProps(props)
408  , myUseHighestLOD(useHighestLOD)
409  , myIgnoreDynamicOcean(ignoreDynamicOcean)
410  , myUseHighestPolygon(useHighestPolygon)
411  , myHitId(0)
412  , myIgnored(ignore)
413  {
414  }
415 
417 
419  {
420  myCheckPoint = orig.myCheckPoint;
421  myProps = orig.myProps;
422  myUseHighestLOD = orig.myUseHighestLOD;
423  myIgnoreDynamicOcean = orig.myIgnoreDynamicOcean;
424  myUseHighestPolygon = orig.myUseHighestPolygon;
425  myCheckPoint = orig.myCheckPoint;
426  myHitId = orig.myHitId;
427  myIgnored = orig.myIgnored;
428 
429  return *this;
430  }
431 
432  bool operator==(const LastCheckedGroundInformation& orig) const
433  {
434  return ((myCheckPoint == orig.myCheckPoint) &&
435  (myProps == orig.myProps) &&
436  (myUseHighestLOD == orig.myUseHighestLOD) &&
437  (myIgnoreDynamicOcean == orig.myIgnoreDynamicOcean) &&
438  (myIgnored == orig.myIgnored) &&
439  (myUseHighestPolygon == orig.myUseHighestPolygon));
440  }
441 
449  std::vector<makVrv::DtUniqueID> myIgnored;
450  };
451 
453  };
454 
456  {
457  public:
458 
459  DtSerializableVector() : mySource(0) {};
461  : DtVector( src )
462  , mySource( &src )
463  {
464  }
465 
466  void operator=(const DtVector& rhs)
467  {
468  ((DtVector&)*this) = rhs;
469  }
470 
471  protected:
472 
473  friend class boost::serialization::access;
474 
478  template<class Archive>
479  void serialize(Archive & ar, const unsigned int version)
480  {
481  double x = myRep[0], y = myRep[1], z = myRep[2];
482 
483  ar & BOOST_SERIALIZATION_NVP(x);
484  ar & BOOST_SERIALIZATION_NVP(y);
485  ar & BOOST_SERIALIZATION_NVP(z);
486 
487  if (Archive::is_loading::value)
488  {
489  myRep[0] = x;
490  myRep[1] = y;
491  myRep[2] = z;
492 
493  if (mySource)
494  {
495  *mySource = *this;
496  }
497  }
498  }
499 
500  protected:
502  };
503 
504  class DT_DLL_VRFGUICORE DtSerializableTaitBryan : public DtTaitBryan
505  {
506  public:
507  DtSerializableTaitBryan() : mySource(0) {};
508  DtSerializableTaitBryan(DtTaitBryan& src) :
509  DtTaitBryan(src),
510  mySource(&src)
511  {
512  }
513 
514  protected:
515  friend class boost::serialization::access;
516 
520  template<class Archive>
521  void serialize(Archive & ar, const unsigned int version)
522  {
523  ar & BOOST_SERIALIZATION_NVP(myPsi);
524  ar & BOOST_SERIALIZATION_NVP(myTheta);
525  ar & BOOST_SERIALIZATION_NVP(myPhi);
526 
527  if (Archive::is_loading::value && mySource)
528  {
529  *mySource = *this;
530  }
531  }
532 
533  protected:
534  DtTaitBryan* mySource;
535  };
536 
537  template <typename _Type, typename _SrcType>
539  {
540  public:
542  DtSerializableStdVector(std::vector<_SrcType>& src) :
543  mySource(&src)
544  {
545  myValues.resize(src.size());
546 
547  typename std::vector<_SrcType>::const_iterator srcIter = src.begin();
548  typename std::vector<_Type>::iterator tgtIter = myValues.begin();
549 
550  while (srcIter != src.end())
551  {
552  *tgtIter = *srcIter;
553  ++srcIter;
554  ++tgtIter;
555  }
556  }
557 
558  protected:
560 
564  template<class Archive>
565  void serialize(Archive & ar, const unsigned int version)
566  {
567  ar & BOOST_SERIALIZATION_NVP(myValues);
568 
569  if (Archive::is_loading::value && mySource)
570  {
571  mySource->clear();
572  mySource->resize(myValues.size());
573 
574  typename std::vector<_Type>::const_iterator src = myValues.begin();
575  typename std::vector<_SrcType>::iterator tgt = mySource->begin();
576 
577  while (src != myValues.end())
578  {
579  *tgt = *src;
580  ++src;
581  ++tgt;
582  }
583  }
584  }
585 
586  protected:
587  std::vector<_SrcType>* mySource;
588  std::vector<_Type> myValues;
589  };
590 
591 
592  class DT_DLL_VRFGUICORE DtSerializablePatchIdentifier : public DtPatchIdentifier
593  {
594  public:
595 
596  DtSerializablePatchIdentifier() : mySource( 0 ) {}
597  DtSerializablePatchIdentifier( DtPatchIdentifier& src )
598  : DtPatchIdentifier( src )
599  , mySource( &src )
600  {
601  }
602 
603  protected:
604 
605  friend class boost::serialization::access;
606 
610  template<class Archive>
611  void serialize( Archive& ar, const unsigned int version )
612  {
613  ar & BOOST_SERIALIZATION_NVP( myCountryCode );
614  ar & BOOST_SERIALIZATION_NVP( myServiceCode );
615  ar & BOOST_SERIALIZATION_NVP( myPatchId );
616 
617  if ( Archive::is_loading::value && mySource )
618  {
619  *mySource = *this;
620  }
621  }
622 
623  protected:
624 
625  DtPatchIdentifier* mySource;
626 
627  };
628 
629 
631  {
633 
635  makVrv::DtVrlinkSimulatedEntityState(orig)
636  {
637  }
638 
639  protected:
640  friend class boost::serialization::access;
641 
645  template<class Archive>
646  void serialize( Archive & ar, const unsigned int version )
647  {
648  ar & BOOST_SERIALIZATION_NVP( myGlobalId );
649  ar & BOOST_SERIALIZATION_NVP( myEntityId );
650  ar & BOOST_SERIALIZATION_NVP( myMarkingText );
651  ar & BOOST_SERIALIZATION_NVP( myEntityType );
652  ar & BOOST_SERIALIZATION_NVP( myAttachedToId );
653  ar & BOOST_SERIALIZATION_NVP( myForce );
654 
655  DtSerializableVector loc( myLocation );
656  DtSerializableVector vel( myVelocity );
657  DtSerializableVector relVel( myRelativeVelocity );
658  DtSerializableVector acc( myAcceleration );
659  DtSerializableTaitBryan ori( myOrientation );
660  DtSerializableVector rotVel( myRotationalVelocity );
661 
662  ar & BOOST_SERIALIZATION_NVP( loc );
663  ar & BOOST_SERIALIZATION_NVP( vel );
664  ar & BOOST_SERIALIZATION_NVP( relVel );
665  ar & BOOST_SERIALIZATION_NVP( acc );
666  ar & BOOST_SERIALIZATION_NVP( ori );
667  ar & BOOST_SERIALIZATION_NVP( rotVel );
668 
669  ar & BOOST_SERIALIZATION_NVP( myAppearance );
670  ar & BOOST_SERIALIZATION_NVP( myCapabilities );
671 
672  ar & BOOST_SERIALIZATION_NVP( myDIGuyAppearance );
673  ar & BOOST_SERIALIZATION_NVP( myDIGuyCharacterType );
674 
675  DtSerializablePatchIdentifier primary( myDIGuyPrimaryUnitPatch );
676  DtSerializablePatchIdentifier secondary( myDIGuySecondaryUnitPatch );
677  DtSerializablePatchIdentifier rank( myDIGuyRankPatch );
678 
679  ar & BOOST_SERIALIZATION_NVP( primary );
680  ar & BOOST_SERIALIZATION_NVP( secondary );
681  ar & BOOST_SERIALIZATION_NVP( rank );
682 
683  ar & BOOST_SERIALIZATION_NVP( myDIGuyCharacterName );
684 
685  ar & BOOST_SERIALIZATION_NVP( myGuise );
686  ar & BOOST_SERIALIZATION_NVP( myDRAlgorithm );
687  }
688  };
689 
691  {
693 
696  {
697  }
698 
699  protected:
700  friend class boost::serialization::access;
701 
705  template<class Archive>
706  void serialize(Archive & ar, const unsigned int version)
707  {
708  ar & BOOST_SERIALIZATION_NVP(myGlobalId);
709  ar & BOOST_SERIALIZATION_NVP(myEntityId);
710  ar & BOOST_SERIALIZATION_NVP(myMarkingText);
711  ar & BOOST_SERIALIZATION_NVP(myEntityType);
712  ar & BOOST_SERIALIZATION_NVP(myAttachedToId);
713  ar & BOOST_SERIALIZATION_NVP(myForce);
714 
716 
717  ar & BOOST_SERIALIZATION_NVP(pts);
718 
719  ar & BOOST_SERIALIZATION_NVP(myUserData);
720  ar & BOOST_SERIALIZATION_NVP(myPenStyle);
721  ar & BOOST_SERIALIZATION_NVP(myFillStyle);
722  ar & BOOST_SERIALIZATION_NVP(myLineWidth);
723  ar & BOOST_SERIALIZATION_NVP(myColor);
724  ar & BOOST_SERIALIZATION_NVP(myLabel);
725  ar & BOOST_SERIALIZATION_NVP(myClosedFigure);
726  ar & BOOST_SERIALIZATION_NVP(myProjected);
727  ar & BOOST_SERIALIZATION_NVP(myAttributes);
728  ar & BOOST_SERIALIZATION_NVP(myOverlayParent);
729 
730  if (version >= 2)
731  {
732  ar & BOOST_SERIALIZATION_NVP(myPhysicalLineHeight);
733  ar & BOOST_SERIALIZATION_NVP(myPhysicalLineWidth);
734  }
735 
736  if (version >= 3)
737  {
738  ar & BOOST_SERIALIZATION_NVP(myExtendedData);
739  }
740  }
741  };
742 }
743 
makVrv::DtDe & myDe
Definition: guiLocalObjectManager.h:375
IntersectProperties
The IntersectProperties enum is a flag set that indicates the types of nodes to be considered for int...
Definition: DtIntersector.h:31
boost::signals2::signal< void(DtVrfObjectFacadeInterface *, makVrv::DtVrlinkSimulatedBaseState *)> signal_objectCreated
Sent when a local object is created.
Definition: guiLocalObjectManager.h:335
DtTaitBryan * mySource
Definition: guiLocalObjectManager.h:534
makVrv::DtUniqueID myHitId
Definition: guiLocalObjectManager.h:447
class DtEnvironmentalFacadeCollection
Definition: environmentalFacadeCollection.h:77
const LastCheckedGroundInformation & operator=(const LastCheckedGroundInformation &orig)
Definition: guiLocalObjectManager.h:418
boost::signals2::scoped_connection myCompleteViewUpdatedConnection
Definition: guiLocalObjectManager.h:391
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 3)
void serialize(Archive &ar, const unsigned int version)
When the class Archive corresponds to an output archive, the &amp; operator is defined similar to &lt;&lt;...
Definition: guiLocalObjectManager.h:479
Definition: environmentalCreationData.h:27
const double * newHeading
Definition: guiLocalObjectManager.h:233
boost::signals2::signal< void(bool)> signal_loading
Signal sent when loading the overlay file. True is before read, false after.
Definition: guiLocalObjectManager.h:341
const std::map< int, DtString > * extendedLabels
Definition: guiLocalObjectManager.h:232
boost::signals2::signal< void(makVrv::DtUniqueID)> signal_objectDeleted
Signal sent after the object has been fully removed.
Definition: guiLocalObjectManager.h:344
void operator=(const DtVector &rhs)
Definition: guiLocalObjectManager.h:466
LocalObjectUpdateStructure()
Definition: guiLocalObjectManager.h:190
void serialize(Archive &ar, const unsigned int version)
When the class Archive corresponds to an output archive, the &amp; operator is defined similar to &lt;&lt;...
Definition: guiLocalObjectManager.h:359
Definition: guiLocalObjectManager.h:504
Definition: guiLocalObjectManager.h:73
makVrv::DtIntersector::IntersectProperties myProps
Definition: guiLocalObjectManager.h:443
DtVector myIntersectionPoint
Definition: guiLocalObjectManager.h:448
Contains makVrv:DtSelectionManager class.
Contains makVrv::DtStateView class.
const float * physicalLineHeight
Definition: guiLocalObjectManager.h:238
virtual ~LastCheckedGroundInformation()
Definition: guiLocalObjectManager.h:416
LastCheckedGroundInformation(const DtVector &lp, makVrv::DtIntersector::IntersectProperties props, bool useHighestLOD, bool ignoreDynamicOcean, ClampFlag useHighestPolygon, const std::vector< makVrv::DtUniqueID > &ignore)
Definition: guiLocalObjectManager.h:404
boost::signals2::signal< void()> signal_terrainCleared
Signals for local object manager.
Definition: guiLocalObjectManager.h:348
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
bool myUseHighestLOD
Definition: guiLocalObjectManager.h:444
DtSerializableTaitBryan(DtTaitBryan &src)
Definition: guiLocalObjectManager.h:508
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
bool isGeocentric
Definition: guiLocalObjectManager.h:240
Definition: entityCreationData.h:27
LastCheckedGroundInformation()
Definition: guiLocalObjectManager.h:395
void serialize(Archive &ar, const unsigned int version)
When the class Archive corresponds to an output archive, the &amp; operator is defined similar to &lt;&lt;...
Definition: guiLocalObjectManager.h:521
std::map< makVrv::DtUniqueID, DtVrfObjectFacadeInterface * > LocalObjects
Collection of local Facades.
Definition: guiLocalObjectManager.h:380
Definition: guiLocalObjectManager.h:538
DtSerializablePatchIdentifier(DtPatchIdentifier &src)
Definition: guiLocalObjectManager.h:597
DtSerializableStdVector()
Definition: guiLocalObjectManager.h:541
std::vector< DtVector > points
Definition: guiLocalObjectManager.h:227
ClampFlag
Definition: guiLocalObjectManager.h:70
Contains makVrv::DtVirtualBaseClass class.
boost::signals2::signal< void(DtVrfObjectFacadeInterface *, const DtEntityType &)> signal_preVisualize
Sent when a local object is about to be visualized.
Definition: guiLocalObjectManager.h:332
Contains makVrv:DtIntersector class.
const int * color
Definition: guiLocalObjectManager.h:235
DtSerializableVector(DtVector &src)
Definition: guiLocalObjectManager.h:460
boost::signals2::signal< void(bool)> signal_creating
Signals for local object manager.
Definition: guiLocalObjectManager.h:329
Definition: vrfObjectFacadeInterface.h:54
makVrv::DtSignalConnectionManager myConnections
Definition: guiLocalObjectManager.h:382
friend class boost::serialization::access
Definition: guiLocalObjectManager.h:559
const int * appearance
Definition: guiLocalObjectManager.h:236
Holds information about the overlays managed by the Tactical Graphic Overlay Manager.
Definition: DtTacticalGraphicOverlay.h:25
Definition: DtIntersector.h:35
const int * force
Definition: guiLocalObjectManager.h:228
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
bool myCanCreateLocalObjects
Definition: guiLocalObjectManager.h:387
Contains makVrv::DtVrlinkSimulatedEntityState class.
const std::string * name
Definition: guiLocalObjectManager.h:226
LocalObjectUpdateStructure(const DtVrfObjectManipulationHandlerBaseClass::ObjectManipulationData &omd)
Definition: guiLocalObjectManager.h:208
void serialize(Archive &ar, const unsigned int version)
When the class Archive corresponds to an output archive, the &amp; operator is defined similar to &lt;&lt;...
Definition: guiLocalObjectManager.h:565
std::vector< _SrcType > * mySource
Definition: guiLocalObjectManager.h:587
boost::signals2::signal< void(DtVrfObjectFacadeInterface *)> signal_objectAboutToBeDeleted
Sent when a local object is about to be deleted.
Definition: guiLocalObjectManager.h:338
DtVector * mySource
Definition: guiLocalObjectManager.h:501
DtSerializableVector()
Definition: guiLocalObjectManager.h:459
DtPatchIdentifier * mySource
Definition: guiLocalObjectManager.h:625
bool myIgnoreDynamicOcean
Definition: guiLocalObjectManager.h:445
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
std::vector< _Type > myValues
Definition: guiLocalObjectManager.h:588
boost::signals2::signal< void()> signal_terrainClearing
Signals for when the terrainis clearing/cleared.
Definition: guiLocalObjectManager.h:347
DtSerializableStdVector(std::vector< _SrcType > &src)
Definition: guiLocalObjectManager.h:542
Will create entity facades for each realized model set and manage them all.
Definition: entityFacadeCollection.h:67
bool operator==(const LastCheckedGroundInformation &orig) const
Definition: guiLocalObjectManager.h:432
Definition: vrfObjectManipulationHandlerBaseClass.h:505
DtSerializablePatchIdentifier()
Definition: guiLocalObjectManager.h:596
const float * physicalLineWidth
Definition: guiLocalObjectManager.h:239
DtVector myCheckPoint
Definition: guiLocalObjectManager.h:442
Base class to provide boost signal/slot management.
Definition: guiLocalObjectManager.h:455
The DtGuiLocalObjectManager is the interface to be used when creating objects that are not to be publ...
Definition: guiLocalObjectManager.h:67
Call to update state data of specified object and update it so local object will also be changed...
Definition: guiLocalObjectManager.h:188
const std::string * overlay
Definition: guiLocalObjectManager.h:229
const double * newPitch
Definition: guiLocalObjectManager.h:234
Contains makVrv::DtElementAttributes class.
LocalObjects myObjects
Definition: guiLocalObjectManager.h:381
std::map< makVrv::DtUniqueID, makVrv::DtVrlinkSimulatedBaseState * > LocalStateData
Definition: guiLocalObjectManager.h:384
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:72
Definition: guiLocalObjectManager.h:74
Definition: guiLocalObjectManager.h:592
const std::string * userData
Definition: guiLocalObjectManager.h:230
bool myIsCreating
Definition: guiLocalObjectManager.h:377
ClampFlag myUseHighestPolygon
Definition: guiLocalObjectManager.h:446
DtModelSetId
Definition: DtModelSetEnums.h:19
const std::map< std::string, std::string > * extendedData
Definition: guiLocalObjectManager.h:231
std::vector< DtEntityType > myIgnoreFromArchive
Definition: guiLocalObjectManager.h:389
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32
LastCheckedGroundInformation myLastCheckedGroundInformation
Definition: guiLocalObjectManager.h:452
LocalStateData myData
Definition: guiLocalObjectManager.h:385
void serialize(Archive &ar, const unsigned int version)
When the class Archive corresponds to an output archive, the &amp; operator is defined similar to &lt;&lt;...
Definition: guiLocalObjectManager.h:611
DtSerializableTaitBryan()
Definition: guiLocalObjectManager.h:507
std::vector< makVrv::DtUniqueID > myIgnored
Definition: guiLocalObjectManager.h:449
const std::string * label
Definition: guiLocalObjectManager.h:237

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)