15 #if !DtHLA_1516_EVOLVED
19 #include <vlutil/vlMachineTypes.h>
20 #include <vl/vrlRtiAmbassador1516.h>
24 namespace MAKTrafficClientServerExConn
26 class DtServerExerciseConnection;
27 class DtClientExerciseConnection;
28 class DtServerRtiAmbassador;
30 class DT_DLL_CSEC DtClientRtiAmbassador :
public DtVrlRtiAmbassador
37 DtClientRtiAmbassador(
38 const std::vector<std::wstring>& createArguments = std::vector<std::wstring>())
40 BadInitializationParameter,
43 virtual ~DtClientRtiAmbassador();
47 DtClientRtiAmbassador(const DtClientRtiAmbassador &other);
50 DtClientRtiAmbassador& operator=(const DtClientRtiAmbassador &other);
55 virtual
void setClientExerciseConnection(DtClientExerciseConnection* exConn);
58 virtual DtClientExerciseConnection* clientExerciseConnection();
61 virtual DtServerExerciseConnection* serverExerciseConnection();
64 virtual RTI::RTIambassador* rtiAmb();
67 virtual DtServerRtiAmbassador* serverRtiAmb();
70 virtual const DtServerRtiAmbassador* serverRtiAmb() const;
73 virtual
void getRtiAmbCreationArgs(std::vector<std::wstring>& args) const;
77 virtual
void setSelfReflect(
bool enableSelfReflect);
80 virtual
bool selfReflectEnabled() const;
83 virtual
void rejoin();
86 virtual
void readyToResign();
93 virtual
void createFederationExecution
94 (std::wstring const & federationExecutionName,
95 std::wstring const & fullPathNameToTheFDDfile,
96 std::wstring const & logicalTimeImplementationName = L"")
98 FederationExecutionAlreadyExists,
104 virtual
void destroyFederationExecution
105 (std::wstring const & federationExecutionName)
107 FederatesCurrentlyJoined,
108 FederationExecutionDoesNotExist,
112 virtual FederateHandle joinFederationExecution
113 (std::wstring const & federateType,
114 std::wstring const & federationExecutionName,
115 FederateAmbassador & federateAmbassador)
117 FederateAlreadyExecutionMember,
118 FederationExecutionDoesNotExist,
124 virtual
void resignFederationExecution
125 (ResignAction resignAction)
127 OwnershipAcquisitionPending,
128 FederateOwnsAttributes,
129 FederateNotExecutionMember,
133 virtual
void registerFederationSynchronizationPoint
134 (std::wstring const & label,
135 RTI::VariableLengthData const & aTag)
137 FederateNotExecutionMember,
142 virtual
void registerFederationSynchronizationPoint
143 (std::wstring const & label,
144 RTI::VariableLengthData const & aTag,
145 FederateHandleSet const & syncSet)
147 FederateNotExecutionMember,
153 virtual
void synchronizationPointAchieved
154 (std::wstring const & label)
156 SynchronizationPointLabelNotAnnounced,
157 FederateNotExecutionMember,
163 virtual
void requestFederationSave
164 (std::wstring const & label)
166 FederateNotExecutionMember,
171 virtual
void requestFederationSave
172 (std::wstring const & label,
173 LogicalTime const & theTime)
175 LogicalTimeAlreadyPassed,
177 FederateUnableToUseTime,
178 FederateNotExecutionMember,
184 virtual
void federateSaveBegun ()
187 FederateNotExecutionMember,
192 virtual
void federateSaveComplete ()
194 FederateHasNotBegunSave,
195 FederateNotExecutionMember,
199 virtual
void federateSaveNotComplete()
201 FederateHasNotBegunSave,
202 FederateNotExecutionMember,
207 virtual
void queryFederationSaveStatus ()
209 FederateNotExecutionMember,
214 virtual
void requestFederationRestore
215 (std::wstring const & label)
217 FederateNotExecutionMember,
223 virtual
void federateRestoreComplete ()
226 FederateNotExecutionMember,
230 virtual
void federateRestoreNotComplete ()
233 FederateNotExecutionMember,
238 virtual
void queryFederationRestoreStatus ()
240 FederateNotExecutionMember,
249 virtual
void publishObjectClassAttributes
250 (ObjectClassHandle theClass,
251 AttributeHandleSet const & attributeList)
253 ObjectClassNotDefined,
255 FederateNotExecutionMember,
261 virtual
void unpublishObjectClass
262 (ObjectClassHandle theClass)
264 ObjectClassNotDefined,
265 OwnershipAcquisitionPending,
266 FederateNotExecutionMember,
271 virtual
void unpublishObjectClassAttributes
272 (ObjectClassHandle theClass,
273 AttributeHandleSet const & attributeList)
275 ObjectClassNotDefined,
277 OwnershipAcquisitionPending,
278 FederateNotExecutionMember,
284 virtual
void publishInteractionClass
285 (InteractionClassHandle theInteraction)
287 InteractionClassNotDefined,
288 FederateNotExecutionMember,
294 virtual
void unpublishInteractionClass
295 (InteractionClassHandle theInteraction)
297 InteractionClassNotDefined,
298 FederateNotExecutionMember,
304 virtual
void subscribeObjectClassAttributes
305 (ObjectClassHandle theClass,
306 AttributeHandleSet const & attributeList,
309 ObjectClassNotDefined,
311 FederateNotExecutionMember,
317 virtual
void unsubscribeObjectClass
318 (ObjectClassHandle theClass)
320 ObjectClassNotDefined,
321 FederateNotExecutionMember,
326 virtual
void unsubscribeObjectClassAttributes
327 (ObjectClassHandle theClass,
328 AttributeHandleSet const & attributeList)
330 ObjectClassNotDefined,
332 FederateNotExecutionMember,
338 virtual
void subscribeInteractionClass
339 (InteractionClassHandle theClass,
342 InteractionClassNotDefined,
343 FederateServiceInvocationsAreBeingReportedViaMOM,
344 FederateNotExecutionMember,
350 virtual
void unsubscribeInteractionClass
351 (InteractionClassHandle theClass)
353 InteractionClassNotDefined,
354 FederateNotExecutionMember,
364 virtual
void reserveObjectInstanceName
365 (std::wstring const & theObjectInstanceName)
368 FederateNotExecutionMember,
374 virtual ObjectInstanceHandle registerObjectInstance
375 (ObjectClassHandle theClass)
377 ObjectClassNotDefined,
378 ObjectClassNotPublished,
379 FederateNotExecutionMember,
384 virtual ObjectInstanceHandle registerObjectInstance
385 (ObjectClassHandle theClass,
386 std::wstring const & theObjectInstanceName)
388 ObjectClassNotDefined,
389 ObjectClassNotPublished,
390 ObjectInstanceNameNotReserved,
391 ObjectInstanceNameInUse,
392 FederateNotExecutionMember,
398 virtual
void updateAttributeValues
399 (ObjectInstanceHandle theObject,
400 AttributeHandleValueMap const & theAttributeValues,
401 RTI::VariableLengthData const & aTag)
403 ObjectInstanceNotKnown,
406 FederateNotExecutionMember,
411 virtual MessageRetractionHandle updateAttributeValues
412 (ObjectInstanceHandle theObject,
413 AttributeHandleValueMap const & theAttributeValues,
414 RTI::VariableLengthData const & aTag,
415 LogicalTime const & theTime)
417 ObjectInstanceNotKnown,
421 FederateNotExecutionMember,
427 virtual
void sendInteraction
428 (InteractionClassHandle theInteraction,
429 ParameterHandleValueMap const & theParameterValues,
430 RTI::VariableLengthData const & aTag)
432 InteractionClassNotPublished,
433 InteractionClassNotDefined,
434 InteractionParameterNotDefined,
435 FederateNotExecutionMember,
440 virtual MessageRetractionHandle sendInteraction
441 (InteractionClassHandle theInteraction,
442 ParameterHandleValueMap const & theParameterValues,
443 RTI::VariableLengthData const & aTag,
444 LogicalTime const & theTime)
446 InteractionClassNotPublished,
447 InteractionClassNotDefined,
448 InteractionParameterNotDefined,
450 FederateNotExecutionMember,
456 virtual
void deleteObjectInstance
457 (ObjectInstanceHandle theObject,
458 RTI::VariableLengthData const & aTag)
460 DeletePrivilegeNotHeld,
461 ObjectInstanceNotKnown,
462 FederateNotExecutionMember,
467 virtual MessageRetractionHandle deleteObjectInstance
468 (ObjectInstanceHandle theObject,
469 RTI::VariableLengthData const & aTag,
470 LogicalTime const & theTime)
472 DeletePrivilegeNotHeld,
473 ObjectInstanceNotKnown,
475 FederateNotExecutionMember,
481 virtual
void localDeleteObjectInstance
482 (ObjectInstanceHandle theObject)
484 ObjectInstanceNotKnown,
485 FederateOwnsAttributes,
486 OwnershipAcquisitionPending,
487 FederateNotExecutionMember,
493 virtual
void changeAttributeTransportationType
494 (ObjectInstanceHandle theObject,
495 AttributeHandleSet const & theAttributes,
496 TransportationType theType)
498 ObjectInstanceNotKnown,
501 FederateNotExecutionMember,
507 virtual
void changeInteractionTransportationType
508 (InteractionClassHandle theClass,
509 TransportationType theType)
511 InteractionClassNotDefined,
512 InteractionClassNotPublished,
513 FederateNotExecutionMember,
519 virtual
void requestAttributeValueUpdate
520 (ObjectInstanceHandle theObject,
521 AttributeHandleSet const & theAttributes,
522 RTI::VariableLengthData const & aTag)
524 ObjectInstanceNotKnown,
526 FederateNotExecutionMember,
531 virtual
void requestAttributeValueUpdate
532 (ObjectClassHandle theClass,
533 AttributeHandleSet const & theAttributes,
534 RTI::VariableLengthData const & aTag)
536 ObjectClassNotDefined,
538 FederateNotExecutionMember,
547 virtual
void unconditionalAttributeOwnershipDivestiture
548 (ObjectInstanceHandle theObject,
549 AttributeHandleSet const & theAttributes)
551 ObjectInstanceNotKnown,
554 FederateNotExecutionMember,
560 virtual
void negotiatedAttributeOwnershipDivestiture
561 (ObjectInstanceHandle theObject,
562 AttributeHandleSet const & theAttributes,
563 RTI::VariableLengthData const & aTag)
565 ObjectInstanceNotKnown,
568 AttributeAlreadyBeingDivested,
569 FederateNotExecutionMember,
575 virtual
void confirmDivestiture
576 (ObjectInstanceHandle theObject,
577 AttributeHandleSet const & confirmedAttributes,
578 RTI::VariableLengthData const & aTag)
580 ObjectInstanceNotKnown,
583 AttributeDivestitureWasNotRequested,
584 NoAcquisitionPending,
585 FederateNotExecutionMember,
591 virtual
void attributeOwnershipAcquisition
592 (ObjectInstanceHandle theObject,
593 AttributeHandleSet const & desiredAttributes,
594 RTI::VariableLengthData const & aTag)
596 ObjectInstanceNotKnown,
597 ObjectClassNotPublished,
599 AttributeNotPublished,
600 FederateOwnsAttributes,
601 FederateNotExecutionMember,
607 virtual
void attributeOwnershipAcquisitionIfAvailable
608 (ObjectInstanceHandle theObject,
609 AttributeHandleSet const & desiredAttributes)
611 ObjectInstanceNotKnown,
612 ObjectClassNotPublished,
614 AttributeNotPublished,
615 FederateOwnsAttributes,
616 AttributeAlreadyBeingAcquired,
617 FederateNotExecutionMember,
623 virtual
void attributeOwnershipDivestitureIfWanted(
624 ObjectInstanceHandle theObject,
625 AttributeHandleSet const & theAttributes,
626 AttributeHandleSet & theDivestedAttributes)
628 ObjectInstanceNotKnown,
631 FederateNotExecutionMember,
637 virtual
void cancelNegotiatedAttributeOwnershipDivestiture
638 (ObjectInstanceHandle theObject,
639 AttributeHandleSet const & theAttributes)
641 ObjectInstanceNotKnown,
644 AttributeDivestitureWasNotRequested,
645 FederateNotExecutionMember,
651 virtual
void cancelAttributeOwnershipAcquisition
652 (ObjectInstanceHandle theObject,
653 AttributeHandleSet const & theAttributes)
655 ObjectInstanceNotKnown,
657 AttributeAlreadyOwned,
658 AttributeAcquisitionWasNotRequested,
659 FederateNotExecutionMember,
665 virtual
void queryAttributeOwnership
666 (ObjectInstanceHandle theObject,
667 AttributeHandle theAttribute)
669 ObjectInstanceNotKnown,
671 FederateNotExecutionMember,
677 virtual
bool isAttributeOwnedByFederate
678 (ObjectInstanceHandle theObject,
679 AttributeHandle theAttribute)
681 ObjectInstanceNotKnown,
683 FederateNotExecutionMember,
693 virtual
void enableTimeRegulation
694 (LogicalTimeInterval const & theLookahead)
696 TimeRegulationAlreadyEnabled,
698 InTimeAdvancingState,
699 RequestForTimeRegulationPending,
700 FederateNotExecutionMember,
706 virtual
void disableTimeRegulation ()
708 TimeRegulationIsNotEnabled,
709 FederateNotExecutionMember,
715 virtual
void enableTimeConstrained ()
717 TimeConstrainedAlreadyEnabled,
718 InTimeAdvancingState,
719 RequestForTimeConstrainedPending,
720 FederateNotExecutionMember,
726 virtual
void disableTimeConstrained ()
728 TimeConstrainedIsNotEnabled,
729 FederateNotExecutionMember,
735 virtual
void timeAdvanceRequest
736 (LogicalTime const & theTime)
739 LogicalTimeAlreadyPassed,
740 InTimeAdvancingState,
741 RequestForTimeRegulationPending,
742 RequestForTimeConstrainedPending,
743 FederateNotExecutionMember,
749 virtual
void timeAdvanceRequestAvailable
750 (LogicalTime const & theTime)
753 LogicalTimeAlreadyPassed,
754 InTimeAdvancingState,
755 RequestForTimeRegulationPending,
756 RequestForTimeConstrainedPending,
757 FederateNotExecutionMember,
763 virtual
void nextMessageRequest
764 (LogicalTime const & theTime)
767 LogicalTimeAlreadyPassed,
768 InTimeAdvancingState,
769 RequestForTimeRegulationPending,
770 RequestForTimeConstrainedPending,
771 FederateNotExecutionMember,
777 virtual
void nextMessageRequestAvailable
778 (LogicalTime const & theTime)
781 LogicalTimeAlreadyPassed,
782 InTimeAdvancingState,
783 RequestForTimeRegulationPending,
784 RequestForTimeConstrainedPending,
785 FederateNotExecutionMember,
791 virtual
void flushQueueRequest
792 (LogicalTime const & theTime)
795 LogicalTimeAlreadyPassed,
796 InTimeAdvancingState,
797 RequestForTimeRegulationPending,
798 RequestForTimeConstrainedPending,
799 FederateNotExecutionMember,
805 virtual
void enableAsynchronousDelivery ()
807 AsynchronousDeliveryAlreadyEnabled,
808 FederateNotExecutionMember,
814 virtual
void disableAsynchronousDelivery ()
816 AsynchronousDeliveryAlreadyDisabled,
817 FederateNotExecutionMember,
823 virtual
bool queryGALT (LogicalTime & theTime)
825 FederateNotExecutionMember,
831 virtual
void queryLogicalTime (LogicalTime & theTime)
833 FederateNotExecutionMember,
839 virtual
bool queryLITS (LogicalTime & theTime)
841 FederateNotExecutionMember,
847 virtual
void modifyLookahead
848 (LogicalTimeInterval const & theLookahead)
850 TimeRegulationIsNotEnabled,
852 InTimeAdvancingState,
853 FederateNotExecutionMember,
859 virtual
void queryLookahead (LogicalTimeInterval & interval)
861 TimeRegulationIsNotEnabled,
862 FederateNotExecutionMember,
869 (MessageRetractionHandle theHandle)
871 InvalidRetractionHandle,
872 TimeRegulationIsNotEnabled,
873 MessageCanNoLongerBeRetracted,
874 FederateNotExecutionMember,
880 virtual
void changeAttributeOrderType
881 (ObjectInstanceHandle theObject,
882 AttributeHandleSet const & theAttributes,
885 ObjectInstanceNotKnown,
888 FederateNotExecutionMember,
894 virtual
void changeInteractionOrderType
895 (InteractionClassHandle theClass,
898 InteractionClassNotDefined,
899 InteractionClassNotPublished,
900 FederateNotExecutionMember,
910 virtual RegionHandle createRegion
911 (DimensionHandleSet const & theDimensions)
913 InvalidDimensionHandle,
914 FederateNotExecutionMember,
920 virtual
void commitRegionModifications
921 (RegionHandleSet const & theRegionHandleSet)
924 RegionNotCreatedByThisFederate,
925 FederateNotExecutionMember,
931 virtual
void deleteRegion
932 (RegionHandle theRegion)
935 RegionNotCreatedByThisFederate,
936 RegionInUseForUpdateOrSubscription,
937 FederateNotExecutionMember,
943 virtual ObjectInstanceHandle registerObjectInstanceWithRegions
944 (ObjectClassHandle theClass,
945 AttributeHandleSetRegionHandleSetPairVector const &
946 theAttributeHandleSetRegionHandleSetPairVector)
948 ObjectClassNotDefined,
949 ObjectClassNotPublished,
951 AttributeNotPublished,
953 RegionNotCreatedByThisFederate,
954 InvalidRegionContext,
955 FederateNotExecutionMember,
960 virtual ObjectInstanceHandle registerObjectInstanceWithRegions
961 (ObjectClassHandle theClass,
962 AttributeHandleSetRegionHandleSetPairVector const &
963 theAttributeHandleSetRegionHandleSetPairVector,
964 std::wstring const & theObjectInstanceName)
966 ObjectClassNotDefined,
967 ObjectClassNotPublished,
969 AttributeNotPublished,
971 RegionNotCreatedByThisFederate,
972 InvalidRegionContext,
973 ObjectInstanceNameNotReserved,
974 ObjectInstanceNameInUse,
975 FederateNotExecutionMember,
981 virtual
void associateRegionsForUpdates
982 (ObjectInstanceHandle theObject,
983 AttributeHandleSetRegionHandleSetPairVector const &
984 theAttributeHandleSetRegionHandleSetPairVector)
986 ObjectInstanceNotKnown,
989 RegionNotCreatedByThisFederate,
990 InvalidRegionContext,
991 FederateNotExecutionMember,
997 virtual
void unassociateRegionsForUpdates
998 (ObjectInstanceHandle theObject,
999 AttributeHandleSetRegionHandleSetPairVector const &
1000 theAttributeHandleSetRegionHandleSetPairVector)
1002 ObjectInstanceNotKnown,
1003 AttributeNotDefined,
1005 RegionNotCreatedByThisFederate,
1006 FederateNotExecutionMember,
1012 virtual
void subscribeObjectClassAttributesWithRegions
1013 (ObjectClassHandle theClass,
1014 AttributeHandleSetRegionHandleSetPairVector const &
1015 theAttributeHandleSetRegionHandleSetPairVector,
1018 ObjectClassNotDefined,
1019 AttributeNotDefined,
1021 RegionNotCreatedByThisFederate,
1022 InvalidRegionContext,
1023 FederateNotExecutionMember,
1029 virtual
void unsubscribeObjectClassAttributesWithRegions
1030 (ObjectClassHandle theClass,
1031 AttributeHandleSetRegionHandleSetPairVector const &
1032 theAttributeHandleSetRegionHandleSetPairVector)
1034 ObjectClassNotDefined,
1035 AttributeNotDefined,
1037 RegionNotCreatedByThisFederate,
1038 FederateNotExecutionMember,
1044 virtual
void subscribeInteractionClassWithRegions
1045 (InteractionClassHandle theClass,
1046 RegionHandleSet const & theRegionHandleSet,
1049 InteractionClassNotDefined,
1051 RegionNotCreatedByThisFederate,
1052 InvalidRegionContext,
1053 FederateServiceInvocationsAreBeingReportedViaMOM,
1054 FederateNotExecutionMember,
1060 virtual
void unsubscribeInteractionClassWithRegions
1061 (InteractionClassHandle theClass,
1062 RegionHandleSet const & theRegionHandleSet)
1064 InteractionClassNotDefined,
1066 RegionNotCreatedByThisFederate,
1067 FederateNotExecutionMember,
1073 virtual
void sendInteractionWithRegions
1074 (InteractionClassHandle theInteraction,
1075 ParameterHandleValueMap const & theParameterValues,
1076 RegionHandleSet const & theRegionHandleSet,
1077 RTI::VariableLengthData const & aTag)
1079 InteractionClassNotDefined,
1080 InteractionClassNotPublished,
1081 InteractionParameterNotDefined,
1083 RegionNotCreatedByThisFederate,
1084 InvalidRegionContext,
1085 FederateNotExecutionMember,
1090 virtual MessageRetractionHandle sendInteractionWithRegions
1091 (InteractionClassHandle theInteraction,
1092 ParameterHandleValueMap const & theParameterValues,
1093 RegionHandleSet const & theRegionHandleSet,
1094 RTI::VariableLengthData const & aTag,
1095 LogicalTime const & theTime)
1097 InteractionClassNotDefined,
1098 InteractionClassNotPublished,
1099 InteractionParameterNotDefined,
1101 RegionNotCreatedByThisFederate,
1102 InvalidRegionContext,
1104 FederateNotExecutionMember,
1110 virtual
void requestAttributeValueUpdateWithRegions
1111 (ObjectClassHandle theClass,
1112 AttributeHandleSetRegionHandleSetPairVector const & theSet,
1113 RTI::VariableLengthData const & aTag)
1115 ObjectClassNotDefined,
1116 AttributeNotDefined,
1118 RegionNotCreatedByThisFederate,
1119 InvalidRegionContext,
1120 FederateNotExecutionMember,
1130 virtual ObjectClassHandle getObjectClassHandle
1131 (std::wstring const & theName)
1134 FederateNotExecutionMember,
1138 virtual std::wstring getObjectClassName
1139 (ObjectClassHandle theClass)
1141 InvalidObjectClassHandle,
1142 FederateNotExecutionMember,
1146 virtual AttributeHandle getAttributeHandle
1147 (ObjectClassHandle theClass,
1148 std::wstring const & theAttributeName)
1150 InvalidObjectClassHandle,
1152 FederateNotExecutionMember,
1156 virtual std::wstring getAttributeName
1157 (ObjectClassHandle theClass,
1158 AttributeHandle theHandle)
1160 InvalidObjectClassHandle,
1161 InvalidAttributeHandle,
1162 AttributeNotDefined,
1163 FederateNotExecutionMember,
1167 virtual InteractionClassHandle getInteractionClassHandle
1168 (std::wstring const & theName)
1171 FederateNotExecutionMember,
1175 virtual std::wstring getInteractionClassName
1176 (InteractionClassHandle theHandle)
1178 InvalidInteractionClassHandle,
1179 FederateNotExecutionMember,
1183 virtual ParameterHandle getParameterHandle
1184 (InteractionClassHandle whichClass,
1185 std::wstring const & theName)
1187 InvalidInteractionClassHandle,
1189 FederateNotExecutionMember,
1193 virtual std::wstring getParameterName
1194 (InteractionClassHandle whichClass,
1195 ParameterHandle theHandle)
1197 InvalidInteractionClassHandle,
1198 InvalidParameterHandle,
1199 InteractionParameterNotDefined,
1200 FederateNotExecutionMember,
1204 virtual ObjectInstanceHandle getObjectInstanceHandle
1205 (std::wstring const & theName)
1207 ObjectInstanceNotKnown,
1208 FederateNotExecutionMember,
1212 virtual std::wstring getObjectInstanceName
1213 (ObjectInstanceHandle theHandle)
1215 ObjectInstanceNotKnown,
1216 FederateNotExecutionMember,
1220 virtual DimensionHandle getDimensionHandle
1221 (std::wstring const & theName)
1224 FederateNotExecutionMember,
1228 virtual std::wstring getDimensionName
1229 (DimensionHandle theHandle)
1231 InvalidDimensionHandle,
1232 FederateNotExecutionMember,
1236 virtual
unsigned long getDimensionUpperBound
1237 (DimensionHandle theHandle)
1239 InvalidDimensionHandle,
1240 FederateNotExecutionMember,
1244 virtual DimensionHandleSet getAvailableDimensionsForClassAttribute
1245 (ObjectClassHandle theClass,
1246 AttributeHandle theHandle)
1248 InvalidObjectClassHandle,
1249 InvalidAttributeHandle,
1250 AttributeNotDefined,
1251 FederateNotExecutionMember,
1255 virtual ObjectClassHandle getKnownObjectClassHandle
1256 (ObjectInstanceHandle theObject)
1258 ObjectInstanceNotKnown,
1259 FederateNotExecutionMember,
1263 virtual DimensionHandleSet getAvailableDimensionsForInteractionClass
1264 (InteractionClassHandle theClass)
1266 InvalidInteractionClassHandle,
1267 FederateNotExecutionMember,
1271 virtual TransportationType getTransportationType
1272 (std::wstring const & transportationName)
1274 InvalidTransportationName,
1275 FederateNotExecutionMember,
1279 virtual std::wstring getTransportationName
1280 (TransportationType transportationType)
1282 InvalidTransportationType,
1283 FederateNotExecutionMember,
1287 virtual OrderType getOrderType
1288 (std::wstring const & orderName)
1291 FederateNotExecutionMember,
1295 virtual std::wstring getOrderName
1296 (OrderType orderType)
1299 FederateNotExecutionMember,
1303 virtual
void enableObjectClassRelevanceAdvisorySwitch ()
1305 ObjectClassRelevanceAdvisorySwitchIsOn,
1306 FederateNotExecutionMember,
1312 virtual
void disableObjectClassRelevanceAdvisorySwitch ()
1314 ObjectClassRelevanceAdvisorySwitchIsOff,
1315 FederateNotExecutionMember,
1321 virtual
void enableAttributeRelevanceAdvisorySwitch ()
1323 AttributeRelevanceAdvisorySwitchIsOn,
1324 FederateNotExecutionMember,
1330 virtual
void disableAttributeRelevanceAdvisorySwitch ()
1332 AttributeRelevanceAdvisorySwitchIsOff,
1333 FederateNotExecutionMember,
1339 virtual
void enableAttributeScopeAdvisorySwitch ()
1341 AttributeScopeAdvisorySwitchIsOn,
1342 FederateNotExecutionMember,
1348 virtual
void disableAttributeScopeAdvisorySwitch ()
1350 AttributeScopeAdvisorySwitchIsOff,
1351 FederateNotExecutionMember,
1357 virtual
void enableInteractionRelevanceAdvisorySwitch ()
1359 InteractionRelevanceAdvisorySwitchIsOn,
1360 FederateNotExecutionMember,
1366 virtual
void disableInteractionRelevanceAdvisorySwitch ()
1368 InteractionRelevanceAdvisorySwitchIsOff,
1369 FederateNotExecutionMember,
1375 virtual DimensionHandleSet getDimensionHandleSet
1376 (RegionHandle theRegionHandle)
1379 FederateNotExecutionMember,
1385 virtual RangeBounds getRangeBounds
1386 (RegionHandle theRegionHandle,
1387 DimensionHandle theDimensionHandle)
1390 RegionDoesNotContainSpecifiedDimension,
1391 FederateNotExecutionMember,
1397 virtual
void setRangeBounds
1398 (RegionHandle theRegionHandle,
1399 DimensionHandle theDimensionHandle,
1400 RangeBounds const & theRangeBounds)
1403 RegionNotCreatedByThisFederate,
1404 RegionDoesNotContainSpecifiedDimension,
1406 FederateNotExecutionMember,
1412 virtual
unsigned long normalizeFederateHandle
1413 (FederateHandle theFederateHandle)
1415 FederateNotExecutionMember,
1419 virtual
unsigned long normalizeServiceGroup
1420 (ServiceGroupIndicator theServiceGroup)
1422 FederateNotExecutionMember,
1423 InvalidServiceGroup,
1427 virtual
bool evokeCallback(
double approximateMinimumTimeInSeconds)
1429 FederateNotExecutionMember,
1433 virtual
bool evokeMultipleCallbacks(
double approximateMinimumTimeInSeconds,
1434 double approximateMaximumTimeInSeconds)
1436 FederateNotExecutionMember,
1440 virtual
void enableCallbacks ()
1442 FederateNotExecutionMember,
1448 virtual
void disableCallbacks ()
1450 FederateNotExecutionMember,
1455 virtual FederateHandle decodeFederateHandle(
1456 VariableLengthData const & encodedValue) const;
1458 virtual ObjectClassHandle decodeObjectClassHandle(
1459 VariableLengthData const & encodedValue) const;
1461 virtual InteractionClassHandle decodeInteractionClassHandle(
1462 VariableLengthData const & encodedValue) const;
1464 virtual ObjectInstanceHandle decodeObjectInstanceHandle(
1465 VariableLengthData const & encodedValue) const;
1467 virtual AttributeHandle decodeAttributeHandle(
1468 VariableLengthData const & encodedValue) const;
1470 virtual ParameterHandle decodeParameterHandle(
1471 VariableLengthData const & encodedValue) const;
1473 virtual DimensionHandle decodeDimensionHandle(
1474 VariableLengthData const & encodedValue) const;
1476 virtual MessageRetractionHandle decodeMessageRetractionHandle(
1477 VariableLengthData const & encodedValue) const;
1479 virtual RegionHandle decodeRegionHandle(
1480 VariableLengthData const & encodedValue) const;
1485 static DtVrlRtiAmbassador* create(const std::vector<std::wstring>& args);
1490 DtServerExerciseConnection* myServerExerciseConnection;
1493 DtClientExerciseConnection* myClientExerciseConnection;
1496 DtServerRtiAmbassador* myServerRtiAmbassador;
1499 RTI::FederateAmbassador* myFedAmb;
1502 bool mySelfReflectEnabled;
1505 bool myReadyToResign;
1511 class
DT_DLL_CSEC DtPassiveClientRtiAmbassador : public DtClientRtiAmbassador
1516 DtPassiveClientRtiAmbassador(
const std::vector<std::wstring>& args) : DtClientRtiAmbassador(args)
1520 virtual ~DtPassiveClientRtiAmbassador()
1526 DtPassiveClientRtiAmbassador(
const DtPassiveClientRtiAmbassador& orig);
1529 DtPassiveClientRtiAmbassador& operator=(
const DtPassiveClientRtiAmbassador& orig);
1534 virtual void subscribeObjectClassAttributes
1535 (ObjectClassHandle theClass,
1536 AttributeHandleSet
const & attributeList,
1539 ObjectClassNotDefined,
1540 AttributeNotDefined,
1541 FederateNotExecutionMember,
1548 virtual void unsubscribeObjectClass
1549 (ObjectClassHandle theClass)
1551 ObjectClassNotDefined,
1552 FederateNotExecutionMember,
1559 virtual void unsubscribeObjectClassAttributes
1560 (ObjectClassHandle theClass,
1561 AttributeHandleSet
const & attributeList)
1563 ObjectClassNotDefined,
1564 AttributeNotDefined,
1565 FederateNotExecutionMember,
1573 virtual void subscribeInteractionClass
1574 (InteractionClassHandle theClass,
1577 InteractionClassNotDefined,
1578 FederateServiceInvocationsAreBeingReportedViaMOM,
1579 FederateNotExecutionMember,
1586 virtual void unsubscribeInteractionClass
1587 (InteractionClassHandle theClass)
1589 InteractionClassNotDefined,
1590 FederateNotExecutionMember,
1597 virtual void subscribeObjectClassAttributesWithRegions
1598 (ObjectClassHandle theClass,
1599 AttributeHandleSetRegionHandleSetPairVector
const &
1600 theAttributeHandleSetRegionHandleSetPairVector,
1603 ObjectClassNotDefined,
1604 AttributeNotDefined,
1606 RegionNotCreatedByThisFederate,
1607 InvalidRegionContext,
1608 FederateNotExecutionMember,
1615 virtual void unsubscribeObjectClassAttributesWithRegions
1616 (ObjectClassHandle theClass,
1617 AttributeHandleSetRegionHandleSetPairVector
const &
1618 theAttributeHandleSetRegionHandleSetPairVector)
1620 ObjectClassNotDefined,
1621 AttributeNotDefined,
1623 RegionNotCreatedByThisFederate,
1624 FederateNotExecutionMember,
1631 virtual void subscribeInteractionClassWithRegions
1632 (InteractionClassHandle theClass,
1633 RegionHandleSet
const & theRegionHandleSet,
1636 InteractionClassNotDefined,
1638 RegionNotCreatedByThisFederate,
1639 InvalidRegionContext,
1640 FederateServiceInvocationsAreBeingReportedViaMOM,
1641 FederateNotExecutionMember,
1648 virtual void unsubscribeInteractionClassWithRegions
1649 (InteractionClassHandle theClass,
1650 RegionHandleSet
const & theRegionHandleSet)
1652 InteractionClassNotDefined,
1654 RegionNotCreatedByThisFederate,
1655 FederateNotExecutionMember,
1662 virtual void localDeleteObjectInstance
1663 (ObjectInstanceHandle theObject)
1665 ObjectInstanceNotKnown,
1666 FederateOwnsAttributes,
1667 OwnershipAcquisitionPending,
1668 FederateNotExecutionMember,
1677 static DtVrlRtiAmbassador* create(
const std::vector<std::wstring>& args);
#define DT_DLL_CSEC
Definition: clientServerExConnDllDefines.h:17