VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfVrvExtensions.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 
14 
16 
17 
19 
22 #include <vl/diGuyObjectStateRepository.h>
34 
40 //#include <vrvVrl/DtVrlink2DAggregateMilStdIconVisualizer.inl>
42 
43 
47 
48 #include <vrvCore/DtEntityState.h>
53 
54 #include <vrfutil/rwUUID.h>
55 
56 #include <vlpi/entityType.h>
57 #include <matrix/vlVector.h>
58 
59 #if DtHLA
61 #else
63 #endif
64 #include "vrfutil/rwColor.h"
66 
68 
69 namespace makVrv
70 {
71  class DtVrlinkElement;
72  class DtEmbarkationUpdaterAgent;
73 
74  namespace DT_PROTOCOL_NAMESPACE
75  {
76  class DtEntitySimDataProcessor;
77  class DtVrlinkAggregateElement;
78  class DtVrlinkTacticalGraphicStateListener;
80  }
81 }
82 
83 namespace makVrf
84 {
85  namespace VRF_PROTOCOL_NAMESPACE
86  {
88  {
89  public:
90  static DtAggregateStateInterceptorCreator& instance(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection& sim);
91 
94 
96 
98  };
99 
102  {
103  public:
104 
106  makVrv::DtStateListener& listener, int modelSet);
107 
110 
111  protected:
112 
113  virtual void modelDefinitionCreated(const std::string&);
114 
116  virtual void forceSet(int);
117  };
118 
121 
124  {
125  public:
127 
130 
132  {
133  return myBlockAnimationChange;
134  }
135 
136  bool gestureChangeBlocked() const
137  {
138  return myBlockGestureChange;
139  }
140 
141  virtual void setBlockAnimationChange(bool b, double speed = 0.);
142  virtual void setBlockGestureChange(bool b);
143  virtual void setFrozen(bool);
144 
145  virtual void reflectedEntityPostUpdate();
146 
147  bool blockAnimationChange(bool b, double speed = 0.)
148  {
149  bool old = myBlockAnimationChange;
150 
151  setBlockAnimationChange(b, speed);
152 
153  return old;
154  }
155 
156  virtual void setCharacterAction( const std::string& action, bool paused, float speed, bool usePositioning,
157  const DtVector&, int autoChooseTransitionBehavior, float transitionSpeed );
158  virtual void executeCharacterAction(const std::string&);
159  virtual void setAppearanceBits( unsigned int mask, unsigned int newValue, bool force = false );
161  virtual void executeSetColor(DtRwColor color);
162  virtual void executeGesture(const std::string& gestureName, int reps, float overallDuration, float channel_A_weight);
163 
164  boost::signals2::signal<void(DtRwColor)> signal_setIconColor;
165 
166  protected:
168  double myTime;
169  unsigned int myNewAppearance;
170  unsigned int myNewAppearanceMask;
173  std::string myGesture;
174  };
175 
177  {
178  public:
180 
182  virtual ~DtVrfEntityKinStateListener();
183 
184  virtual void setNetVelocity(const DtVector32&, double pduTime);
185  virtual void setUseTemporaryVelocity(bool b, double speed);
186 
187  protected:
188  DtVector32 myCurrentVelocity;
192  };
193 
195  {
196  public:
198  : makVrv::DT_PROTOCOL_NAMESPACE::DtEntityKinStateListenerCreator(connection)
199  {
200  }
201 
203  //functionality.
206  {
207  return new DtVrfEntityKinStateListener(stateListener, myConnection);
208  }
209  };
210 
213  {
214  public:
216  : DtVrlinkTacticalGraphicStateListener(connection, id),
218 
221 
222  protected:
223  virtual void postUpdate(DtReflectedControlObject* cObj);
224  };
225 
227  {
228  public:
229 
233 
236 
237  #ifdef DtHLA
238  //functionality.
240  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener* create(DtHlaObject* object);
241  #endif
242 
243  #ifdef DtDIS
244  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener* create(const DtEntityIdentifier& id,
247  const DtEntityType& type);
248  #endif
249 
252  };
253 
254 
257  {
258  public:
260 
263 
265  virtual void updateSubordinates();
266 
268  virtual void executeSetColor(DtRwColor color);
269  boost::signals2::signal<void(DtRwColor)> signal_setIconColor;
270 
271  protected:
272  virtual void slot_subordinateAdded(const DtUUID&, const DtUUID&);
273  virtual void slot_subordinateRemoved(const DtUUID&, const DtUUID&);
274  virtual const DtUUID& uuid();
275 
276  protected:
277  std::set<std::string> myOrbatOnlySubordinates;
281  };
282 
284  {
285  public:
286 
290 
293 
294  #ifdef DtHLA
295  //functionality.
297  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener* create(DtHlaObject* object);
298  #endif
299 
300  #ifdef DtDIS
301  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener* create(const DtEntityIdentifier& id,
304  const DtEntityType& type);
305  #endif
306 
309  };
310 
313  {
314  public:
315 
318 
320 
321  #if DtHLA
323  #endif
324 
325  protected:
327  };
328 
332  {
333  public:
334 
337  makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection& c) : DtVrlinkTacticalGraphicStateListenerCreator(c) {};
338 
341 
342  #ifdef DtHLA
343  //functionality.
346  {
347  return new DtVrfVrlinkTacticalGraphicStateListener(mySim, mySim.sceneInterface().createNewUniqueId());
348  }
349  #endif
350 
351  #if DtDIS
355  const DtEntityIdentifier& id, const DtEntityType& type)
356  {
357  return new DtVrfVrlinkTacticalGraphicStateListener(mySim, mySim.sceneInterface().createNewUniqueId());
358  }
359  #endif
360  };
361 
370  {
371  public:
373 
374  #if DtHLA
376  const DtDDMRegionSet& regionsToUse);
377  #endif
378 
380 #if DtHLA
381  virtual DtReflectedEntity* newReflectedObject(DtHlaObject* obj) const;
385 
389  virtual void removeAndDelete(DtReflectedObject* entity, char* msg = NULL);
390  virtual void resolveOrphans();
391 #endif
392 
393  #if DtDIS
394 
395  //Hacked class which allows setting the esr of an newly created reflected
396  //Entity
398  {
399  public:
400  DtVrfVrvReflectedEntity(DtExerciseConn* conn,
401  const DtEntityIdentifier& id,
402  const DtEntityType& type,
404  : DtReflectedExtEntity(conn,id,type)
405  {
406  delete myEntityStateRep;
407  myEntityStateRep = esr;
408  myEntityStateRep->setClock(conn->clock());
409  myEntityStateRep->setGlobalId(id);
410  myEntityStateRep->setDisObjectManager( conn->disObjectManager() );
411  }
412 
413  };
414 
419  virtual DtReflectedEntity* newReflectedEntity(
420  const DtEntityIdentifier& id,
421  const DtEntityType& type) const;
422 
425  virtual void removeAndDelete(DtReflectedObject* obj, char* msg = NULL);
426  #endif
427 
428  //Whenever an entity is added.
429  virtual void objectAdded(DtReflectedObject* ent);
430 
431  protected:
432 
433  typedef std::map<DtReflectedExtEntity*,makVrv::DtEntityStateListener*>
435 
436 
439  };
440 
446  {
447  public:
450  makVrv::DtStateListener& listener, int modelSet);
451 
454 
456  virtual void createModelAgents();
457 
458  protected:
459  virtual bool hasPhysicalFootprint();
460  };
461 
464 
470  {
471  public:
474  makVrv::DtStateListener& listener, int modelSet);
475 
478 
480  virtual void createModelAgents();
481 
482  protected:
483  virtual bool hasPhysicalFootprint();
484  };
485 
488 
490  {
491  public:
493 
496 
498 
500  };
501  }
502 
504  {
505  public:
507  : makVrv::DT_PROTOCOL_NAMESPACE::DtCloudLayerStateListener(sim, id)
508  , myLightningPresent(false)
509  , myLightningPresentDirty(false)
510  {
511  }
512 
514  {
515  }
516 
518  virtual void setLightningPresent(bool present);
519 
521  virtual bool lightningPresent() const;
522 
525  virtual void setLightningPresentDirty(bool dirty);
526 
528  virtual bool lightningPresentDirty() const;
529 
530  virtual void update(const DtControlObjectRepository& cosr);
531 
532  virtual bool visualize() const { return true; }
533 
534  protected:
537  };
538 
540  {
541  public:
543  : makVrv::DT_PROTOCOL_NAMESPACE::DtCloudLayerStateListenerCreator(sim)
544  {
545  }
546 
547 #ifdef DtHLA
548  //functionality.
551  {
552  return new DtVrfCloudLayerStateListener(mySim, mySim.sceneInterface().createNewUniqueId());
553  }
554 #endif
555 
556 #ifdef DtDIS
557  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface* create(const DtEntityIdentifier& id,
560  const DtEntityType& type)
561  {
562  return new DtVrfCloudLayerStateListener(mySim, mySim.sceneInterface().createNewUniqueId());
563  }
564 #endif
565  };
566 
571  {
572  public:
575  int modelSet);
576 
579 
581  virtual void setColor(const DtRwColor& color);
582 
584  virtual void setForceColor(float r, float g, float b, float a);
585  virtual void updateSymbol();
586 
587  protected:
588  DtEntityType myEntityType;
590 
591  };
592 
595 
600  {
601  public:
604  int modelSet);
605 
608 
609  protected:
610  virtual void implementVisibility( bool visible );
611  };
612 
615 
620  {
621  public:
624  int modelSet);
625 
628 
630  virtual void setColor(const DtRwColor& color);
631 
633  virtual void setForceColor(float r, float g, float b, float a);
634  virtual void updateSymbol();
635 
636  protected:
637  DtEntityType myEntityType;
639 
640  };
641 
644 
645 }
DtVrvAggregateReflectedListCreator is the creator class for the DtReflectedExtAggregateList.
Definition: DtAggregateExistenceListener.h:32
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
virtual makVrv::DT_PROTOCOL_NAMESPACE::DtEntityKinStateListener * create(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener &stateListener) const
Default create implementation, override to provide additional.
Definition: vrfVrvExtensions.h:204
Contains the DtReflectedExtEntityList class declaration.
Contains makVrv:DtEntityKinStateVisualizer class.
Creator class for the DtEntityKinStateListener.
Definition: DtEntityKinStateListener.h:157
Contains the DtReflectedExtEntity class declaration.
Definition: vrfVrvExtensions.h:539
Definition: tacticalGraphicListenerExtensions.h:19
makVrv::DtStateVisualizerCreatorTemplate< DtVrfVrlink3DAggregateExtentVisualizer > DtVrfVrlink3DAggregateExtentVisualizerCreator
Definition: vrfVrvExtensions.h:463
Definition: reflectedExtEntity.h:31
#define VRF_PROTOCOL_EXPORT
Definition: vrfProtocol.h:24
Contains makVrv::DtVrlink2DAggregateMilStdIconVisualizer class.
Contains makVrv::DtReflectedEntityStateInterceptor class.
DtEntityType myEntityType
Definition: vrfVrvExtensions.h:637
DtVrfCloudLayerStateListenerCreator(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection &sim)
Definition: vrfVrvExtensions.h:542
makVrv::DtStateVisualizerCreatorTemplate< DtVrfVrlink2DAggregateExtentVisualizer > DtVrfVrlink2DAggregateExtentVisualizerCreator
Definition: vrfVrvExtensions.h:487
This class extends DtReflectedExtEntityList, which is defined in the VrfVrlinkExt solution/codebase...
Definition: vrfVrvExtensions.h:369
DtVector32 myTemporaryVelocity
Definition: vrfVrvExtensions.h:191
Contains makVrv::DtVrlink2DAggregateExtentVisualizer class.
A Creator class for creating Entity State Interceptors.
Definition: DtAggregateStateInterceptorCreator.h:23
Contains the makVrv::DtVrfTacticalGraphicImageSymbolVisualizer class declaration. ...
bool usingForceColor
Definition: vrfVrvExtensions.h:638
ReflectedEntityListenerMap myReflectedEntityListenerMap
Definition: vrfVrvExtensions.h:438
Definition: DtStateVisualizer.h:322
Protocol specific military symbol icon visualizer.
Definition: DtVrlink2DAggregateMilStdIconVisualizer.h:32
Creator class for the DtCloudLayerStateListener.
Definition: DtCloudLayerStateListener.h:200
makVrv::DtStateVisualizerCreatorTemplate< DtVrfVrlinkEntityOffsetDIGuyStateVisualizer > DtVrfVrlinkEntityOffsetDIGuyStateVisualizerCreator
Definition: vrfVrvExtensions.h:614
virtual bool visualize() const
Override and return true to visualize the 2D cloud box; false by default.
Definition: vrfVrvExtensions.h:532
Contains the DtSensorFieldOfViewPublisher class declaration.
UpdateStruct32 myCopyVelocityValue
Definition: vrfVrvExtensions.h:189
makVrv::DtStateVisualizerCreatorTemplate< DtVrfVrlink2DEntityStateVisualizer > DtVrfVrlink2DEntityStateVisualizerCreator
Definition: vrfVrvExtensions.h:594
Contains the makVrv::DtCloudLayerStateListener class declaration.
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:34
DtControlObjectRepository class extends the DtControlObjectBaseRepository to be able to handle extend...
Definition: controlObjectRepository.h:27
Reader-Writer color specified by red, green, blue components.
Definition: rwColor.h:19
DtVrfVrlink2DEntityStateVisualizer used for changing icon color &amp; transparency in entities...
Definition: vrfVrvExtensions.h:569
bool myLightningPresentDirty
Definition: vrfVrvExtensions.h:536
Definition: entityStateListenerExtensions.h:75
#define VRF_PROTOCOL_NAMESPACE
Definition: vrfDis.h:18
DtVrfVrlink3DAggregateExtentVisualizer will never a bounding volume if an aggregate has a physical fo...
Definition: vrfVrvExtensions.h:444
Contains makVrv::DtEntityMilStdIconVisualizer class.
DtVrlink2DAggregateExtentVisualizer will specialze the Dt2DAggregateExtentVisualizer to allow coloriz...
Definition: DtVrlink2DAggregateExtentVisualizer.h:24
DtVrfVrlink3DAggregateExtentVisualizer will never a bounding volume if an aggregate has a physical fo...
Definition: vrfVrvExtensions.h:468
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Contains makVrv::DtEntityState class.
bool myUseTemporaryVelocity
Definition: vrfVrvExtensions.h:190
makVrv::DtStateVisualizerCreatorTemplate< DtVrfVrlink2DAggregateStateVisualizer > DtVrfVrlink2DAggregateStateVisualizerCreator
Definition: vrfVrvExtensions.h:643
Definition: vrfVrvExtensions.h:503
DtVrlink3DAggregateExtentVisualizer will specialze the Dt3DAggregateExtentVisualizer to allow coloriz...
Definition: DtVrlink3DAggregateExtentVisualizer.h:24
DtVrfVrvReflectedEntity(DtExerciseConn *conn, const DtEntityIdentifier &id, const DtEntityType &type, DtEntityStateRepository *esr)
Definition: vrfVrvExtensions.h:400
Contains makVrv::DtVrlink3DAggregateExtentVisualizer class.
std::map< DtReflectedExtEntity *, makVrv::DtEntityStateListener * > ReflectedEntityListenerMap
Definition: vrfVrvExtensions.h:434
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
A visualizer for displaying an image as defined in a scenario event as a special case.
Definition: vrfTacticalGraphicImageSymbolVisualizer.h:22
The CloudLayer state listener is a factory-created DtVrlinkTacticalGraphicStateListener.
Definition: DtCloudLayerStateListener.h:42
DtVector32 myCurrentVelocity
Definition: vrfVrvExtensions.h:188
#define DT_PROTOCOL_NAMESPACE
Make VR-Vantage VRLink code export with library #ifdef DL_DLL_IGCONVRLINK #undef DL_DLL_IGCONVRLINK #...
Definition: export.h:32
DtAggregateExistenceListener class listens for the creation of aggregates and creates.
Definition: DtAggregateExistenceListener.h:54
bool usingForceColor
Definition: vrfVrvExtensions.h:589
Base class to provide boost signal/slot management.
bool myLightningPresent
Definition: vrfVrvExtensions.h:535
Entity Kin State listener.
Definition: DtEntityKinStateListener.h:29
The HLA 13 reflected entity list used by the driver to listen to reflected entities.
Definition: DtEntityExistenceListener.h:69
DtVrfVrlink2DAggregateStateVisualizer used for changing icon color &amp; transparency in aggregate units...
Definition: vrfVrvExtensions.h:618
DtEntityType myEntityType
Definition: vrfVrvExtensions.h:588
class DtReflectedExtAggregateList:
Definition: reflectedExtAggregateList.h:27
Contains makVrv::DtEntityKinStateListener class.
makVrv::DT_PROTOCOL_NAMESPACE::DtEntityExistenceListener & myListener
Definition: vrfVrvExtensions.h:437
DtVrfCloudLayerStateListener(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection &sim, makVrv::DtUniqueID id)
Definition: vrfVrvExtensions.h:506
Creator class for the AggregateStateListener.
Definition: DtVrlinkAggregateStateListener.h:272
virtual ~DtVrfCloudLayerStateListener()
Definition: vrfVrvExtensions.h:513
DtVrfEntityKinStateListenerCreator(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection &connection)
Definition: vrfVrvExtensions.h:197
Contains the DtSharedEntityDisplaySettings class declaration.
The DtStateListener is an abstract class.
Definition: DtStateListener.h:21
Contains makVrv::DtAgentManagerInterface class.
A Creator class for creating Entity State Interceptors.
Definition: DtEntityStateInterceptorCreator.h:28
Contains makVrv::DtEntityExistenceListener class.
Definition: reflectedControlObject.h:26
virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEnvironmentalStateListenerInterface * create(DtHlaObject *object)
Default create implementation, override to provide additional.
Definition: vrfVrvExtensions.h:550
makVrv::DtStateVisualizerCreatorTemplate< DtVrfVrlinkTacticalGraphicImageSymbolVisualizer > DtVrfVrlinkTacticalGraphicImageSymbolVisualizerCreator
Definition: vrfVrvExtensions.h:120
class DtReflectedExtAggregateList:
Definition: reflectedExtEntityList.h:27

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)