VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
exerciseConnHLA.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
8 
9 #ifndef exerciseConnHLA_H_
10 #define exerciseConnHLA_H_
11 
12 #if DtHLA
13 
14 #include "baseExerciseConn.h"
15 #include "callbacks.h"
16 #include "rprFomMapper.h"
17 #include "rtiCompatibility.h"
18 #include "eventId.h"
19 #include "vrlFederateAmbassador.h"
20 #include "vrlRtiAmbassador.h"
22 
23 #include <matrix/geodeticCoord.h>
24 #include <vlutil/vlVersion.h>
25 #include "userTagModifiers.h"
26 
27 
28 class DtInteraction;
29 class DtInteractionFactory;
30 class DtHlaObjectFactory;
31 class DtInteractionManager;
32 class DtHlaObjectManager;
33 class DtStateMsg;
34 class DtVrlFederateAmbassador;
35 class DtFom;
36 class DtFilename;
37 class DtDynamicLibrary;
38 class DtFomMapper;
39 
40 
41 
59 {
60 
61 public:
62 
63  typedef DtVrlFederateAmbassador* (*DtFedAmbCreator)();
64  typedef DtFomMapper* (*DtFomMapperCreator)(void* usr);
65  typedef void (*DtFomMapperDeletor)(DtFomMapper*);
66 
67  typedef void (*DtRtiErrorCb)(const char* label, void* usr);
68 
71  typedef DtVrlRtiAmbassador* (*DtRtiAmbCreator)(const std::vector<std::wstring>&);
72 
73 #if DtHLA_1516
74  typedef DtTime (*DtLogicalTimeToVrlTimeConverter) (const RTI::LogicalTime &theLogicalTime);
75  typedef std::auto_ptr<RTI::LogicalTime>(*DtVrlTimeToLogicalTimeConverter) (const DtTime &time);
76 #else
77  typedef DtTime (*DtFedTimeToVrlTimeConverter) (const RTI::FedTime &theFedTIme);
78  typedef RTI::FedTime* (*DtVrlTimeToFedTimeConverter) (const DtTime &time);
79 #endif
80 
90  enum InitializationStatus {
91  DtINIT_SUCCESS = 0,
92  DtCOULD_NOT_CREATE_RTIAMB = 1,
93  DtCOULD_NOT_CREATE_FEDEX = 2,
94  DtCOULD_NOT_JOIN_FEDEX = 3,
95  DtCOULD_NOT_OPEN_FED = 4,
96  DtCOULD_NOT_PARSE_FED = 5,
97  DtCOULD_NOT_FIND_FOMMAPPER = 6,
98  DtERROR_OPENING_FOMMAPPER_LIB = 7,
99  DtCOULD_NOT_CONNECT_RTIAMB = 8
100 
101  };
102 
103 public:
104 
107  DtExerciseConn(const DtExerciseConnInitializer& init, InitializationStatus* status = 0);
108 
120  DtExerciseConn(const char* execName,
121  const char* federateType,
122  DtFomMapper* mapper = DtRprFomMapper::create(0),
123  const char* fedFileName = 0,
124  InitializationStatus* status = 0
125  );
126 
134  DtExerciseConn(const char* execName,
135  const char* federateType,
136  const char* dsoName,
137  const char* fedFileName = 0,
138  void* fomMapInitData = 0,
139  InitializationStatus* status = 0
140  );
141 
142 #if DtHLA_1516_EVOLVED
143 
144 
149 
160  DtExerciseConn(const char* execName,
161  const char* federateName,
162  const char* federateType,
163  const DtString& fedFile,
164  DtFomMapper* mapper = DtRprFomMapper::create(0),
165  const DtString mimModule = "",
166  const std::vector<DtString>& fomModules = std::vector<DtString>(),
167  InitializationStatus* status = 0 );
168 
169 
174 
181  DtExerciseConn(const char* execName,
182  const char* federateName,
183  const char* federateType,
184  const DtString& fedFile,
185  const char* dsoName,
186  void* fomMapInitData = 0,
187  const DtString mimModule = "",
188  const std::vector<DtString>& fomModules = std::vector<DtString>(),
189  InitializationStatus* status = 0 );
190 #endif
191 
193  virtual ~DtExerciseConn();
194 
195 private:
196 
198  DtExerciseConn(const DtExerciseConn& orig);
199 
202 
203 public:
204 
214  virtual void setReflecting();
215 
217  virtual bool reflecting() const;
218 
225  virtual void setPassiveMode();
226 
228  virtual bool passiveMode() const;
229 
233 
234  virtual void setDefaultOwnershipHandler(DtOwnershipHandler* ownershipHandler);
235  virtual DtOwnershipHandler* defaultOwnershipHandler();
237 
249  virtual void setReflectRemoteUpdatesIntoPubFlag(bool onff);
250 
252  virtual bool reflectRemoteUpdatesIntoPubFlag() const;
253 
258  virtual void setReflectingThroughRti();
259 
261  virtual bool reflectingThroughRti() const;
262 
272  virtual void ignoreAdvisories();
273 
275  virtual bool usingAdvisories() const;
276 
277  virtual void setRemoveObjectOnAttOutOfScope(bool remove);
278 
285  virtual bool enabledGenericAttributes() const;
286 
287 #if DtHLA_1516_EVOLVED
288  void listFederationExecutions();
290 #endif
291 
295  virtual void send(const DtStateMsg& msg);
296 
302  virtual void send(const DtInteraction& msg);
303 
307 #if DtHLA_1516
308  virtual void send(const DtInteraction& msg,
309  const RTI::RegionHandleSet* region);
310 #else
311  virtual void send(const DtInteraction& msg,
312  const RTI::Region* region);
313 #endif
314 
319  virtual void sendStamped(const DtStateMsg& msg);
320 
325  virtual void sendStamped(const DtInteraction& msg);
326 
330  virtual void sendStampedWithRegion(const DtInteraction& msg,
331  DtDDMRegionSP region);
332 
337 #if DtHLA_1516
338  virtual void sendStamped(const DtInteraction& msg,
339  const RTI::RegionHandleSet* region);
340 #else
341  virtual void sendStamped(const DtInteraction& msg,
342  const RTI::Region* region);
343 #endif
344 
347  virtual DtTime currentTimeForStamping();
348 
363  virtual int drainInput(DtTime maxTime = -1, DtTime minTime = 0.0);
364 
366  virtual void setObjectIdForEventId(const DtGlobalObjectDesignator& id);
367 
369  virtual const DtEventID& nextEventId();
370 
373  virtual DtVrlRtiAmbassador* rtiAmb();
374 
377  virtual DtVrlFederateAmbassador* fedAmb();
378 
380  virtual RTI::FederateHandle fedHandle() const;
381 
383  virtual const DtString& fedType() const;
384 
385 #if DtHLA_1516_EVOLVED
386  virtual const DtString& fedName() const;
389 #endif
390 
392  virtual const DtString& execName() const;
393 
395  virtual bool isUsingMakRti() const;
396 
400  virtual DtString rtiName() const;
401 
405  virtual DtString rtiVersion() const;
406 
409  virtual DtString rtiError() const;
410 
412  virtual DtFom* fom();
413 
415  virtual DtInteractionFactory* interactionFactory();
416 
418  virtual DtHlaObjectFactory* objectFactory();
419 
421  virtual DtFomMapper* fomMapper() const;
422 
424  virtual DtHlaObjectManager* hlaObjectManager();
425 
427  virtual void setTimeStampType(DtTimeStampType relOrAbs);
428 
430  virtual DtTimeStampType timeStampType() const;
431 
436  virtual void addInteractionCallback(RTI::InteractionClassHandle h,
437  DtReceiveInteractionCb cb,
438  void* usr,
439  DtDDMRegionSP region = DtDDMRegionSP());
440 
445  virtual void addInteractionCallbackByName(const char* className,
446  DtReceiveInteractionCb cb,
447  void* usr,
448  DtDDMRegionSP region = DtDDMRegionSP());
449 
454  virtual void removeInteractionCallback(RTI::InteractionClassHandle h,
455  DtReceiveInteractionCb cb,
456  void* usr,
457  DtDDMRegionSP region = DtDDMRegionSP());
458 
463  virtual void removeInteractionCallbackByName(const char* className,
464  DtReceiveInteractionCb cb,
465  void* usr, DtDDMRegionSP region = DtDDMRegionSP());
466 
469  virtual void addDiscoverObjectCallback(RTI::ObjectClassHandle h,
470  DtDiscoverObjectCb cb,
471  void* usr);
472 
476  virtual void removeDiscoverObjectCallback(RTI::ObjectClassHandle h,
477  DtDiscoverObjectCb cb,
478  void* usr);
479 
482  virtual void addRemoveObjectCallback(
483 #if DtHLA_1516
484  RTI::ObjectInstanceHandle id,
485 #else
486  RTI::ObjectHandle id,
487 #endif
488  DtRemoveObjectCb cb,
489  void* usr);
490 
494  virtual void removeRemoveObjectCallback(
495 #if DtHLA_1516
496  RTI::ObjectInstanceHandle id,
497 #else
498  RTI::ObjectHandle id,
499 #endif
500  DtRemoveObjectCb cb,
501  void* usr);
502 
506  virtual void setDestroyFedExecFlag(bool flag);
507 
509  virtual bool destroyFedExecFlag();
510 
514  virtual void setReplyingToSynchronizationPoints(bool yesNo);
515 
517  virtual bool replyingToSynchronizationPoints();
518 
521  virtual void replyToSynchronizationPoint(const char* label);
522 
527  virtual void setAutoSubscribeFlag(bool flag);
528 
530  virtual bool autoSubscribeFlag() const;
531 
534  virtual void setSendFedTime(bool flag);
535 
537  virtual bool sendFedTime() const;
538 
546  virtual void setUseGeographicDdm(bool flag);
547 
550  virtual bool useGeographicDdm() const;
551 
552  virtual void setDeleteOnOutOfScope(bool yesNo);
553 
554  virtual bool deleteOnOutOfScope() const;
555 
556 #if DtHLA_1516
557  virtual RTI::LogicalTimeFactory *logicalTimeFactory() const;
559 
560 #endif
561 
564  virtual void registerSynchronizationPoint(const DtString& label);
565 
567  virtual void registerSynchronizationPoint(
568  const DtString& label,
569 #if DtHLA_1516
570  const RTI::VariableLengthData& tag);
571 #else
572  const DtString& tag);
573 #endif
574 
576  virtual void addFederateSaveCb(const DtString& label,
577  DtFederateSaveCb func, void* usr);
578  virtual void addFederateSaveCb(DtFederateSaveCb func, void* usr);
579 
581  virtual void addFederateRestoreCb(const DtString& label,
582  DtFederateSaveCb func, void* usr);
583  virtual void addFederateRestoreCb(DtFederateSaveCb func, void* usr);
584 
586  virtual void removeFederateSaveCb(const DtString& label,
587  DtFederateSaveCb func, void* usr);
588  virtual void removeFederateSaveCb(DtFederateSaveCb func, void* usr);
589 
591  virtual void removeFederateRestoreCb(const DtString& label,
592  DtFederateSaveCb func, void* usr);
593  virtual void removeFederateRestoreCb(DtFederateSaveCb func, void* usr);
594 
597  virtual void addSynchPointRegistrationSucceededCb(const DtString& label,
598  DtSynchPointCb func, void* usr);
599 
601  virtual void addSynchPointRegistrationSucceededCb(DtSynchPointCb func,
602  void* usr);
603 
606  virtual void removeSynchPointRegistrationSucceededCb(const DtString& label,
607  DtSynchPointCb func, void* usr);
608 
610  virtual void removeSynchPointRegistrationSucceededCb(DtSynchPointCb func,
611  void* usr);
612 
614  virtual void addSynchPointRegistrationFailedCb(const DtString& label,
615  DtSynchPointCb func, void* usr);
616 
618  virtual void addSynchPointRegistrationFailedCb(DtSynchPointCb func,
619  void* usr);
620 
622  virtual void removeSynchPointRegistrationFailedCb(const DtString& label,
623  DtSynchPointCb func, void* usr);
624 
626  virtual void removeSynchPointRegistrationFailedCb(DtSynchPointCb func,
627  void* usr);
628 
630  virtual void addFederationSynchedCb(const DtString& label,
631  DtSynchPointCb func, void* usr);
632 
634  virtual void addFederationSynchedCb(DtSynchPointCb func,
635  void* usr);
636 
638  virtual void removeFederationSynchedCb(const DtString& label,
639  DtSynchPointCb func, void* usr);
640 
642  virtual void removeFederationSynchedCb(DtSynchPointCb func,
643  void* usr);
644 
649 
650  virtual void addRtiErrorCb(const DtString& label, DtRtiErrorCb func,
651  void* usr);
652  virtual void removeRtiErrorCb(const DtString& label, DtRtiErrorCb func,
653  void* usr);
654  virtual void addRtiErrorCb(DtRtiErrorCb func, void* usr);
655  virtual void removeRtiErrorCb(DtRtiErrorCb func, void* usr);
657 
658 #if DtHLA_1516_EVOLVED
659  virtual void addConnectionLostCb(DtConnectionLostCb func,
661  void* usr);
663  virtual void removeConnectionLostCb(DtConnectionLostCb func, void *usr);
664 #endif
665 
669  virtual void addAnnounceSynchPointCb(const DtString& label,
670  DtAnnounceSynchPointCb func, void* usr);
671 
675  virtual void addAnnounceSynchPointCb(DtAnnounceSynchPointCb func,
676  void* usr);
677 
679  virtual void removeAnnounceSynchPointCb(const DtString& label,
680  DtAnnounceSynchPointCb func, void* usr);
681 
683  virtual void removeAnnounceSynchPointCb(DtAnnounceSynchPointCb func,
684  void* usr);
685 
688  virtual void setDdmPlayBoxLowerBound(const DtGeodeticCoord& bound);
689 
692  virtual void setDdmPlayBoxUpperBound(const DtGeodeticCoord& bound);
693 
696  virtual const DtGeodeticCoord& ddmPlayBoxLowerBound() const;
697 
700  virtual const DtGeodeticCoord& ddmPlayBoxUpperBound() const;
701 
710  virtual void setObjectTagModifier(const DtString& className,
711  DtObjectTagModifierSP modifier, bool applyToSubClasses = true);
712 
721  virtual void setInteractionTagModifier(const DtString& className,
722  DtInteractionTagModifierSP modifier, bool applyToSubClasses = true);
723 
735 
736  virtual void setGetValueMethod( DtExerciseConnInitializer::DtGetValueMethod getValueMethodChoice );
737  virtual DtExerciseConnInitializer::DtGetValueMethod getValueMethod( ) const;
739 
740 public:
741 
742 #if DtHLA_1516
743  static void setLogicalTimeFactoryFactoryParameter(std::wstring);
747 
749  static std::wstring logicalTimeFactoryFactoryParameter();
750 #endif
751  static void setFedAmbCreator(DtFedAmbCreator creator);
755 
757  static DtFedAmbCreator fedAmbCreator();
758 
762  static void setRtiAmbCreator(DtRtiAmbCreator creator);
763 
765  static DtRtiAmbCreator rtiAmbCreator();
766 
771  static void overrideRidParameters(const std::map<DtString, DtString>& ridParams);
772 
781  static void setFomMapperCreator(DtFomMapperCreator creator,
782  void* usr = 0);
783 
785  static DtFomMapperCreator fomMapperCreator();
786 
794 #if DtHLA_1516
795  static void setLogicalTimeToVrlTimeConverter(DtLogicalTimeToVrlTimeConverter func);
796  static DtLogicalTimeToVrlTimeConverter logicalTimeToVrlTimeConverter();
797 #else
798  static void setFedTimeToVrlTimeConverter(DtFedTimeToVrlTimeConverter func);
799  static DtFedTimeToVrlTimeConverter fedTimeToVrlTimeConverter();
800 #endif
801 
808 #if DtHLA_1516
809  static void setVrlTimeToLogicalTimeConverter(DtVrlTimeToLogicalTimeConverter func);
810  static DtVrlTimeToLogicalTimeConverter vrlTimeToLogicalTimeConverter();
811 #else
812  static void setVrlTimeToFedTimeConverter(DtVrlTimeToFedTimeConverter func);
813  static DtVrlTimeToFedTimeConverter vrlTimeToFedTimeConverter();
814 #endif
815 
822 #if DtHLA_1516
823  static DtTime defaultDtLogicalTimeToVrlTimeConverter( const RTI::LogicalTime &time);
824 #else
825  static DtTime defaultDtFedTimeToVrlTimeConverter( const RTI::FedTime &time);
826 #endif
827 
829 #if DtHLA_1516
830  static std::auto_ptr<RTI::LogicalTime> defaultVrlTimeToLogicalTimeConverter(
831  const DtTime &time);
832 #else
833  static RTI::FedTime* defaultVrlTimeToFedTimeConverter(const DtTime &time);
834 #endif
835 
837  static DtString vrlinkVersion();
838 
839 
843  virtual bool callRtiErrorCallback(DtString &label);
844 protected:
845 
846  // Check if the RTI version supports 64-bit alignment for getValuePointer.
848  bool checkRtiVersionForPointerAlignment();
849 
851  void initializeConnection(InitializationStatus* result);
852 
855  void initializeFomMapper(const char* dsoName, void* fomMapInitData,
856  InitializationStatus* result);
857 
861  void getFuncsFromSharedLib(DtDynamicLibrary& dso,
862  DtFomMapperCreator* creator,
863  DtFomMapperDeletor* deletor);
864 
865 
868  void handleFedFile(const DtString& fedFileName);
869 
874  int initFom(InitializationStatus* result);
875 
879  int createRtiAmb(InitializationStatus* result);
880 
886  int connectRtiAmb(InitializationStatus* result);
887 
892  int createFedEx(InitializationStatus* result);
893 
896  int createFedAmb(InitializationStatus* result);
897 
901  int joinFedEx(InitializationStatus* result);
902 
906  bool fedFileExists(const DtFilename &name) const;
907 
908 #if DtHLA_1516_EVOLVED
909  void setFomModules(const std::vector<DtString>& modules);
912 
914  void resignAndDisconnect();
915 #endif
916 
920 #if DtHLA_1516
921  virtual void rtiSend(DtInteraction& msg, RTI::InteractionClassHandle handle,
922  const RTI::RegionHandleSet* region);
923 #else
924  virtual void rtiSend(DtInteraction& msg, RTI::InteractionClassHandle handle,
925  const RTI::Region* region);
926 #endif
927 
929 #if DtHLA_1516
930  virtual void selfReflectInteraction(DtInteraction& msg, RTI::InteractionClassHandle handle,
931  const RTI::RegionHandleSet* region);
932 #else
933  virtual void selfReflectInteraction(DtInteraction& msg, RTI::InteractionClassHandle handle,
934  const RTI::Region* region);
935 #endif
936 
937 protected:
938 
940  static void replyToSyncPointCallback(void* usr);
941 
942 protected:
943 
944  DtString myExecName;
945 
946  DtString myFedType;
947 #if DtHLA_1516_EVOLVED
948  DtString myFedName;
953 #endif
954 #if DtHLA_1516
955  std::auto_ptr<RTI::LogicalTimeFactory> myLogicalTimeFactory;
956 #endif
957  DtVrlRtiAmbassador* myRtiAmb;
958  RTI::FederateHandle myFedHandle;
959  DtVrlFederateAmbassador* myFedAmb;
960 
961  DtFom* myFom;
962 
963  DtHlaObjectManager* myHlaObjectManager;
964  DtInteractionManager* myInteractionManager;
965  DtOwnershipHandler* myOwnershipHandler;
966 
967  DtFomMapper* myFomMapper;
968  DtDynamicLibrary *myFomMapperDso;
969  DtFomMapperCreator myDsoCreator;
970  DtFomMapperDeletor myDsoDeletor;
971 
972  DtEventID myCurrentEventId;
973  DtTimeStampType myRelOrAbs;
974 
975  bool myDestroyFedExFlag;
976  bool myUseFomMapperDeletor;
977 
978  bool myGenericAttributes;
979  bool myPassiveMode;
980  bool myReflecting;
981  bool myReflectRemoteUpdatesIntoPubFlag;
982  bool myReflectingThroughRti;
983  bool myReplyingToSynchronizationPoints;
984  bool myUsingAdvisories;
985  bool myAutoSubscribeFlag;
986  bool mySendFedTimeFlag;
987  DtExerciseConnInitializer::DtGetValueMethod myGetValueMethod;
988  bool myPauseOnSaveRestore;
989 
990  bool myUseGeographicDdm;
991  bool myDeleteOnOutOfScope;
992 #if DtHLA_1516_EVOLVED
993  bool myIsConnected;
995 #endif
996 
998  DtString myRtiError;
999 
1001  DtString myFedFile;
1002 
1003 #if DtHLA_1516_EVOLVED
1004  std::vector<std::wstring> myFomModules;
1005  std::wstring myMimFomModule;
1006 
1007  std::wstring myLocalSettingsDesignator;
1008 #elif DtHLA_1516
1009  std::vector<std::wstring> myRtiArguments;
1010 #endif
1011 
1012 #if DtHLA_1516
1013  RTI::VariableLengthData myTag;
1014 #else
1015  DtString myTag;
1016 #endif
1017 
1021  DtGeodeticCoord myDdmPlayBoxLowerBound;
1022 
1026  DtGeodeticCoord myDdmPlayBoxUpperBound;
1027 
1028 protected:
1029 
1030  struct DtGeneralRtiErrorCbInfo
1031  {
1032  DtRtiErrorCb cbFunction;
1033  void* userData;
1034  };
1035 
1036  struct DtLabelledRtiErrorCbInfo
1037  {
1038  DtString label;
1039  DtRtiErrorCb cbFunction;
1040  void* userData;
1041  };
1042 
1043  static std::wstring myLogicalTimeFactFactParam;
1044  static DtFedAmbCreator theFedAmbCreator;
1045  static DtRtiAmbCreator theRtiAmbCreator;
1046  static DtFomMapperCreator theFomMapperCreator;
1047  static void* theFomMapInitData;
1048 #if DtHLA_1516
1049  static DtVrlTimeToLogicalTimeConverter theVrlTimeToLogicalTimeConverter;
1050  static DtLogicalTimeToVrlTimeConverter theLogicalTimeToVrlTimeConverter;
1051 #else
1052  static DtVrlTimeToFedTimeConverter theVrlTimeToFedTimeConverter;
1053  static DtFedTimeToVrlTimeConverter theFedTimeToVrlTimeConverter;
1054 #endif
1055 
1056  std::list<DtGeneralRtiErrorCbInfo> myRtiErrorCbList;
1057  std::list<DtLabelledRtiErrorCbInfo> myLabRtiErrorCbList;
1058 
1059 
1060 };
1061 
1062 inline DtVrlRtiAmbassador* DtExerciseConn::rtiAmb()
1063 {
1064  return myRtiAmb;
1065 }
1066 
1067 inline DtVrlFederateAmbassador* DtExerciseConn::fedAmb()
1068 {
1069  return myFedAmb;
1070 }
1071 
1072 inline DtHlaObjectManager* DtExerciseConn::hlaObjectManager()
1073 {
1074  return myHlaObjectManager;
1075 }
1076 
1077 inline DtFom* DtExerciseConn::fom()
1078 {
1079  return myFom;
1080 }
1081 
1082 inline RTI::FederateHandle DtExerciseConn::fedHandle() const
1083 {
1084  return myFedHandle;
1085 }
1086 
1087 #if DtHLA_1516_EVOLVED
1088 inline const DtString& DtExerciseConn::fedName() const
1089 {
1090  return myFedName;
1091 }
1092 #endif
1093 
1094 inline const DtString& DtExerciseConn::fedType() const
1095 {
1096  return myFedType;
1097 }
1098 
1099 inline const DtString& DtExerciseConn::execName() const
1100 {
1101  return myExecName;
1102 }
1103 
1104 
1105 inline void DtExerciseConn::setSendFedTime(bool flag)
1106 {
1107  mySendFedTimeFlag = flag;
1108 }
1109 
1110 inline bool DtExerciseConn::sendFedTime() const
1111 {
1112  return mySendFedTimeFlag;
1113 }
1114 
1115 inline void DtExerciseConn::setUseGeographicDdm(bool flag)
1116 {
1117  myUseGeographicDdm = flag;
1118 }
1119 
1120 inline bool DtExerciseConn::useGeographicDdm() const
1121 {
1122  return myUseGeographicDdm;
1123 }
1124 
1125 inline void DtExerciseConn::setDeleteOnOutOfScope(bool yesNo)
1126 {
1127  myDeleteOnOutOfScope = yesNo;
1128 }
1129 
1130 inline bool DtExerciseConn::deleteOnOutOfScope() const
1131 {
1132  return myDeleteOnOutOfScope;
1133 }
1134 
1135 #endif
1136 #endif
1137 
DtInteraction is an base class for representing DIS PDUs which don&#39;t have state.
Definition: interactionDIS.h:24
Contains the HLA DtExerciseConnInitializer class declaration.
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:61
A protocol independent (HLA13/HLA1516) file for the VR-Link FedAmb.
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Instances of DtExerciseConnInitializer are used to provide the DtExerciseConn with initialization dat...
Definition: exerciseConnInitializerDIS.h:36
DtBaseExerciseConn & operator=(const DtBaseExerciseConn &)
Assignment Operator – Not Implemented.
DtBaseExerciseConn is an abstract base class.
Definition: baseExerciseConn.h:31
This file provides a definition of GeodeticCoords and several helper functions.
Instances of DtGeodeticCoord are used to explicitly represent Geodetic coordinates.
Definition: geodeticCoord.h:29
This file declares macros which specify the VR-Link version.
virtual void sendStamped(const DtStateMsg &msg)=0
Send a state message to the network which has been time stamped with the current time.
Contains the DtRprFomMapper class declaration.
virtual void send(const DtStateMsg &msg)=0
Send a state message to the network.
Represents Events in DIS.
Definition: eventId.h:154
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
Instances of DtFilename are DtStrings which convert filenames to the native format.
Definition: vlFilename.h:20
This is a base class meant to encapsulate user callbacks on ownership management services.
Definition: ownershipHandlerDIS.h:39
DtDynamicLibrary provides an operating independent way to manipulate dynamically loaded libraries...
Definition: vlDynamic.h:23
DtTimeStampType
Definition: vlTimeStampType.h:16
DtReal DtTime
A definition of DtTime.
Definition: vlTime.h:19
Contains the DtEventId class declaration.
Instances of DtString are used to represent strings.
Definition: vlString.h:29
This file provides protocol independence for the DtVrlRtiAmbassador class.
This file provides a declaration of the class DtBaseExerciseConn.
Instances of DtStateMsg are used to represent state data communicated via the network in a DIS (as op...
Definition: stateMsgDIS.h:21
This file is used as a convenience to group RTI related callbacks together.
This file contains declarations of the classes DtObjectTagModifier and DtInteractionTagModifier.

Document ID: Generated on Tue Feb 2 21:02:17 EST 2021 from SVN revision 223668
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)