8 #ifndef DtFedAmbWrapper_H_
9 #define DtFedAmbWrapper_H_
14 #include <RTI/Enums.h>
15 #include <RTI/Typedefs.h>
16 #include <RTI/NullFederateAmbassador.h>
18 using namespace rti1516e;
43 virtual void connectionLost (
44 std::wstring
const & faultDescription)
46 FederateInternalError);
49 virtual void reportFederationExecutions (
50 FederationExecutionInformationVector
const &
51 theFederationExecutionInformationList)
53 FederateInternalError);
57 std::wstring
const & label)
59 FederateInternalError);
62 std::wstring
const & label,
63 SynchronizationPointFailureReason reason)
65 FederateInternalError);
69 std::wstring
const & label,
70 VariableLengthData
const & theUserSuppliedTag)
72 FederateInternalError);
76 std::wstring
const & label,
79 FederateInternalError);
83 std::wstring
const & label)
85 FederateInternalError);
88 std::wstring
const & label,
89 LogicalTime
const & theTime)
91 FederateInternalError);
96 FederateInternalError);
99 SaveFailureReason theSaveFailureReason)
101 FederateInternalError);
105 virtual
void federationSaveStatusResponse (
106 FederateHandleSaveStatusPairVector const &
107 theFederateStatusVector)
109 FederateInternalError);
113 std::wstring const & label)
115 FederateInternalError);
118 std::wstring const & label)
120 FederateInternalError);
125 FederateInternalError);
129 std::wstring const & label,
130 std::wstring const & federateName,
133 FederateInternalError);
138 FederateInternalError);
141 RestoreFailureReason theRestoreFailureReason)
143 FederateInternalError);
146 virtual
void federationRestoreStatusResponse (
147 FederateRestoreStatusVector const &
148 theFederateRestoreStatusVector)
150 FederateInternalError);
160 FederateInternalError);
166 FederateInternalError);
172 FederateInternalError);
178 FederateInternalError);
185 virtual
void objectInstanceNameReservationSucceeded (
186 std::wstring const & theObjectInstanceName)
188 FederateInternalError);
190 virtual
void objectInstanceNameReservationFailed (
191 std::wstring const & theObjectInstanceName)
193 FederateInternalError);
196 virtual
void multipleObjectInstanceNameReservationSucceeded (
197 std::set<std::wstring> const & theObjectInstanceNames)
199 FederateInternalError);
201 virtual
void multipleObjectInstanceNameReservationFailed (
202 std::set<std::wstring> const & theObjectInstanceNames)
204 FederateInternalError);
208 ObjectInstanceHandle theObject,
210 std::wstring const & theObjectInstanceName)
212 FederateInternalError);
215 ObjectInstanceHandle theObject,
217 std::wstring const & theObjectInstanceName,
220 FederateInternalError);
224 ObjectInstanceHandle theObject,
225 AttributeHandleValueMap const & theAttributeValues,
226 VariableLengthData const & theUserSuppliedTag,
228 TransportationType theType,
229 SupplementalReflectInfo theReflectInfo)
231 FederateInternalError);
234 ObjectInstanceHandle theObject,
235 AttributeHandleValueMap const & theAttributeValues,
236 VariableLengthData const & theUserSuppliedTag,
238 TransportationType theType,
239 LogicalTime const & theTime,
241 SupplementalReflectInfo theReflectInfo)
243 FederateInternalError);
246 ObjectInstanceHandle theObject,
247 AttributeHandleValueMap const & theAttributeValues,
248 VariableLengthData const & theUserSuppliedTag,
250 TransportationType theType,
251 LogicalTime const & theTime,
253 MessageRetractionHandle theHandle,
254 SupplementalReflectInfo theReflectInfo)
256 FederateInternalError);
261 ParameterHandleValueMap const & theParameterValues,
262 VariableLengthData const & theUserSuppliedTag,
264 TransportationType theType,
265 SupplementalReceiveInfo theReceiveInfo)
267 FederateInternalError);
271 ParameterHandleValueMap const & theParameterValues,
272 VariableLengthData const & theUserSuppliedTag,
274 TransportationType theType,
275 LogicalTime const & theTime,
277 SupplementalReceiveInfo theReceiveInfo)
279 FederateInternalError);
283 ParameterHandleValueMap const & theParameterValues,
284 VariableLengthData const & theUserSuppliedTag,
286 TransportationType theType,
287 LogicalTime const & theTime,
289 MessageRetractionHandle theHandle,
290 SupplementalReceiveInfo theReceiveInfo)
292 FederateInternalError);
296 ObjectInstanceHandle theObject,
297 VariableLengthData const & theUserSuppliedTag,
299 SupplementalRemoveInfo theRemoveInfo)
301 FederateInternalError);
304 ObjectInstanceHandle theObject,
305 VariableLengthData const & theUserSuppliedTag,
307 LogicalTime const & theTime,
309 SupplementalRemoveInfo theRemoveInfo)
311 FederateInternalError);
314 ObjectInstanceHandle theObject,
315 VariableLengthData const & theUserSuppliedTag,
317 LogicalTime const & theTime,
319 MessageRetractionHandle theHandle,
320 SupplementalRemoveInfo theRemoveInfo)
322 FederateInternalError);
326 ObjectInstanceHandle theObject,
329 FederateInternalError);
333 ObjectInstanceHandle theObject,
336 FederateInternalError);
340 ObjectInstanceHandle theObject,
342 VariableLengthData const & theUserSuppliedTag)
344 FederateInternalError);
348 ObjectInstanceHandle theObject,
351 FederateInternalError);
354 ObjectInstanceHandle theObject,
356 std::wstring const & updateRateDesignator)
358 FederateInternalError);
362 ObjectInstanceHandle theObject,
365 FederateInternalError);
368 virtual
void confirmAttributeTransportationTypeChange (
369 ObjectInstanceHandle theObject,
371 TransportationType theTransportation)
373 FederateInternalError);
376 virtual
void reportAttributeTransportationType (
377 ObjectInstanceHandle theObject,
379 TransportationType theTransportation)
381 FederateInternalError);
384 virtual
void confirmInteractionTransportationTypeChange (
386 TransportationType theTransportation)
388 FederateInternalError);
391 virtual
void reportInteractionTransportationType (
394 TransportationType theTransportation)
396 FederateInternalError);
405 ObjectInstanceHandle theObject,
407 VariableLengthData const & theUserSuppliedTag)
409 FederateInternalError);
412 virtual
void requestDivestitureConfirmation (
413 ObjectInstanceHandle theObject,
416 FederateInternalError);
420 ObjectInstanceHandle theObject,
422 VariableLengthData const & theUserSuppliedTag)
424 FederateInternalError);
428 ObjectInstanceHandle theObject,
431 FederateInternalError);
435 ObjectInstanceHandle theObject,
437 VariableLengthData const & theUserSuppliedTag)
439 FederateInternalError);
443 ObjectInstanceHandle theObject,
446 FederateInternalError);
450 ObjectInstanceHandle theObject,
454 FederateInternalError);
457 ObjectInstanceHandle theObject,
460 FederateInternalError);
462 virtual
void attributeIsOwnedByRTI (
463 ObjectInstanceHandle theObject,
466 FederateInternalError);
474 LogicalTime const & theFederateTime)
476 FederateInternalError);
480 LogicalTime const & theFederateTime)
482 FederateInternalError);
486 LogicalTime const & theTime)
488 FederateInternalError);
492 MessageRetractionHandle theHandle)
494 FederateInternalError);
508 inline void DtFedAmbWrapper::connectionLost (
509 std::wstring
const & faultDescription)
511 FederateInternalError)
515 myFedAmb->connectionLost(faultDescription);
520 inline void DtFedAmbWrapper::reportFederationExecutions (
521 FederationExecutionInformationVector
const &
522 theFederationExecutionInformationList)
524 FederateInternalError)
528 myFedAmb->reportFederationExecutions(theFederationExecutionInformationList);
534 std::wstring
const & label)
536 FederateInternalError)
540 myFedAmb->synchronizationPointRegistrationSucceeded( label );
545 std::wstring
const & label,
546 SynchronizationPointFailureReason reason)
548 FederateInternalError)
552 myFedAmb->synchronizationPointRegistrationFailed(label,reason);
558 std::wstring
const & label,
559 VariableLengthData
const & theUserSuppliedTag)
561 FederateInternalError)
565 myFedAmb->announceSynchronizationPoint(label,theUserSuppliedTag);
571 std::wstring
const & label,
574 FederateInternalError)
578 myFedAmb->federationSynchronized(label,failedToSyncSet);
584 std::wstring
const & label)
586 FederateInternalError)
590 myFedAmb->initiateFederateSave(label);
595 std::wstring
const & label,
596 LogicalTime
const & theTime)
598 FederateInternalError)
602 myFedAmb->initiateFederateSave(label,theTime);
609 FederateInternalError)
613 myFedAmb->federationSaved();
618 SaveFailureReason theSaveFailureReason)
620 FederateInternalError)
624 myFedAmb->federationNotSaved(theSaveFailureReason);
630 inline void DtFedAmbWrapper::federationSaveStatusResponse (
631 FederateHandleSaveStatusPairVector
const &
632 theFederateStatusVector)
634 FederateInternalError)
638 myFedAmb->federationSaveStatusResponse(theFederateStatusVector);
644 std::wstring
const & label)
646 FederateInternalError)
650 myFedAmb->requestFederationRestoreSucceeded(label);
655 std::wstring
const & label)
657 FederateInternalError)
661 myFedAmb->requestFederationRestoreFailed(label);
668 FederateInternalError)
672 myFedAmb->federationRestoreBegun();
678 std::wstring
const & label,
679 std::wstring
const & federateName,
682 FederateInternalError)
686 myFedAmb->initiateFederateRestore(label,federateName,handle);
693 FederateInternalError)
697 myFedAmb->federationRestored();
702 RestoreFailureReason theRestoreFailureReason)
704 FederateInternalError)
708 myFedAmb->federationNotRestored(theRestoreFailureReason);
713 inline void DtFedAmbWrapper::federationRestoreStatusResponse (
714 FederateRestoreStatusVector
const &
715 theFederateRestoreStatusVector)
717 FederateInternalError)
721 myFedAmb->federationRestoreStatusResponse( theFederateRestoreStatusVector );
733 FederateInternalError)
737 myFedAmb->startRegistrationForObjectClass(theClass);
745 FederateInternalError)
749 myFedAmb->stopRegistrationForObjectClass(theClass);
757 FederateInternalError)
761 myFedAmb->turnInteractionsOn(theHandle);
769 FederateInternalError)
773 myFedAmb->turnInteractionsOff(theHandle);
782 inline void DtFedAmbWrapper::objectInstanceNameReservationSucceeded (
783 std::wstring
const & theObjectInstanceName)
785 FederateInternalError)
789 myFedAmb->objectInstanceNameReservationSucceeded(theObjectInstanceName);
793 inline void DtFedAmbWrapper::objectInstanceNameReservationFailed (
794 std::wstring
const & theObjectInstanceName)
796 FederateInternalError)
800 myFedAmb->objectInstanceNameReservationFailed(theObjectInstanceName);
805 inline void DtFedAmbWrapper::multipleObjectInstanceNameReservationSucceeded (
806 std::set<std::wstring>
const & theObjectInstanceNames)
808 FederateInternalError)
812 myFedAmb->multipleObjectInstanceNameReservationSucceeded( theObjectInstanceNames );
816 inline void DtFedAmbWrapper::multipleObjectInstanceNameReservationFailed (
817 std::set<std::wstring>
const & theObjectInstanceNames)
819 FederateInternalError)
823 myFedAmb->multipleObjectInstanceNameReservationFailed(theObjectInstanceNames);
829 ObjectInstanceHandle theObject,
831 std::wstring
const & theObjectInstanceName)
833 FederateInternalError)
837 myFedAmb->discoverObjectInstance(theObject,theObjectClass,theObjectInstanceName);
842 ObjectInstanceHandle theObject,
844 std::wstring
const & theObjectInstanceName,
847 FederateInternalError)
851 myFedAmb->discoverObjectInstance(theObject,theObjectClass,theObjectInstanceName,producingFederate);
857 ObjectInstanceHandle theObject,
858 AttributeHandleValueMap
const & theAttributeValues,
859 VariableLengthData
const & theUserSuppliedTag,
861 TransportationType theType,
862 SupplementalReflectInfo theReflectInfo)
864 FederateInternalError)
868 myFedAmb->reflectAttributeValues(theObject,
878 ObjectInstanceHandle theObject,
879 AttributeHandleValueMap
const & theAttributeValues,
880 VariableLengthData
const & theUserSuppliedTag,
882 TransportationType theType,
883 LogicalTime
const & theTime,
885 SupplementalReflectInfo theReflectInfo)
887 FederateInternalError)
891 myFedAmb->reflectAttributeValues(theObject,
903 ObjectInstanceHandle theObject,
904 AttributeHandleValueMap
const & theAttributeValues,
905 VariableLengthData
const & theUserSuppliedTag,
907 TransportationType theType,
908 LogicalTime
const & theTime,
910 MessageRetractionHandle theHandle,
911 SupplementalReflectInfo theReflectInfo)
913 FederateInternalError)
917 myFedAmb->reflectAttributeValues(theObject,
932 ParameterHandleValueMap
const & theParameterValues,
933 VariableLengthData
const & theUserSuppliedTag,
935 TransportationType theType,
936 SupplementalReceiveInfo theReceiveInfo)
938 FederateInternalError)
942 myFedAmb->receiveInteraction(theInteraction,
953 ParameterHandleValueMap
const & theParameterValues,
954 VariableLengthData
const & theUserSuppliedTag,
956 TransportationType theType,
957 LogicalTime
const & theTime,
959 SupplementalReceiveInfo theReceiveInfo)
961 FederateInternalError)
965 myFedAmb->receiveInteraction(theInteraction,
978 ParameterHandleValueMap
const & theParameterValues,
979 VariableLengthData
const & theUserSuppliedTag,
981 TransportationType theType,
982 LogicalTime
const & theTime,
984 MessageRetractionHandle theHandle,
985 SupplementalReceiveInfo theReceiveInfo)
987 FederateInternalError)
991 myFedAmb->receiveInteraction(theInteraction,
1005 ObjectInstanceHandle theObject,
1006 VariableLengthData
const & theUserSuppliedTag,
1008 SupplementalRemoveInfo theRemoveInfo)
1010 FederateInternalError)
1014 myFedAmb->removeObjectInstance(theObject,
1022 ObjectInstanceHandle theObject,
1023 VariableLengthData
const & theUserSuppliedTag,
1025 LogicalTime
const & theTime,
1027 SupplementalRemoveInfo theRemoveInfo)
1029 FederateInternalError)
1033 myFedAmb->removeObjectInstance(theObject,
1043 ObjectInstanceHandle theObject,
1044 VariableLengthData
const & theUserSuppliedTag,
1046 LogicalTime
const & theTime,
1048 MessageRetractionHandle theHandle,
1049 SupplementalRemoveInfo theRemoveInfo)
1051 FederateInternalError)
1055 myFedAmb->removeObjectInstance(theObject,
1067 ObjectInstanceHandle theObject,
1070 FederateInternalError)
1074 myFedAmb->attributesInScope(theObject,
1081 ObjectInstanceHandle theObject,
1084 FederateInternalError)
1088 myFedAmb->attributesOutOfScope(theObject,
1095 ObjectInstanceHandle theObject,
1097 VariableLengthData
const & theUserSuppliedTag)
1099 FederateInternalError)
1103 myFedAmb->provideAttributeValueUpdate(theObject,
1105 theUserSuppliedTag);
1111 ObjectInstanceHandle theObject,
1114 FederateInternalError)
1118 myFedAmb->turnUpdatesOnForObjectInstance(theObject,
1124 ObjectInstanceHandle theObject,
1126 std::wstring
const & updateRateDesignator)
1128 FederateInternalError)
1132 myFedAmb->turnUpdatesOnForObjectInstance(theObject,
1134 updateRateDesignator);
1140 ObjectInstanceHandle theObject,
1143 FederateInternalError)
1147 myFedAmb->turnUpdatesOffForObjectInstance(theObject,
1153 inline void DtFedAmbWrapper::confirmAttributeTransportationTypeChange (
1154 ObjectInstanceHandle theObject,
1156 TransportationType theTransportation)
1158 FederateInternalError)
1162 myFedAmb->confirmAttributeTransportationTypeChange(theObject,
1169 inline void DtFedAmbWrapper::reportAttributeTransportationType (
1170 ObjectInstanceHandle theObject,
1172 TransportationType theTransportation)
1174 FederateInternalError)
1178 myFedAmb->reportAttributeTransportationType(theObject,
1185 inline void DtFedAmbWrapper::confirmInteractionTransportationTypeChange (
1187 TransportationType theTransportation)
1189 FederateInternalError)
1193 myFedAmb->confirmInteractionTransportationTypeChange(theInteraction,
1199 inline void DtFedAmbWrapper::reportInteractionTransportationType (
1202 TransportationType theTransportation)
1204 FederateInternalError)
1208 myFedAmb->reportInteractionTransportationType(federateHandle,
1221 ObjectInstanceHandle theObject,
1223 VariableLengthData
const & theUserSuppliedTag)
1225 FederateInternalError)
1229 myFedAmb->requestAttributeOwnershipAssumption(theObject,
1231 theUserSuppliedTag);
1236 inline void DtFedAmbWrapper::requestDivestitureConfirmation (
1237 ObjectInstanceHandle theObject,
1240 FederateInternalError)
1244 myFedAmb->requestDivestitureConfirmation(theObject,
1245 releasedAttributes);
1251 ObjectInstanceHandle theObject,
1253 VariableLengthData
const & theUserSuppliedTag)
1255 FederateInternalError)
1259 myFedAmb->attributeOwnershipAcquisitionNotification(theObject,
1261 theUserSuppliedTag);
1267 ObjectInstanceHandle theObject,
1270 FederateInternalError)
1274 myFedAmb->attributeOwnershipUnavailable(theObject,
1281 ObjectInstanceHandle theObject,
1283 VariableLengthData
const & theUserSuppliedTag)
1285 FederateInternalError)
1289 myFedAmb->requestAttributeOwnershipRelease(theObject,
1290 candidateAttributes,
1291 theUserSuppliedTag);
1297 ObjectInstanceHandle theObject,
1300 FederateInternalError)
1304 myFedAmb->confirmAttributeOwnershipAcquisitionCancellation(theObject,
1311 ObjectInstanceHandle theObject,
1315 FederateInternalError)
1319 myFedAmb->informAttributeOwnership(theObject,
1326 ObjectInstanceHandle theObject,
1329 FederateInternalError)
1333 myFedAmb->attributeIsNotOwned(theObject,
1338 inline void DtFedAmbWrapper::attributeIsOwnedByRTI (
1339 ObjectInstanceHandle theObject,
1342 FederateInternalError)
1346 myFedAmb->attributeIsOwnedByRTI(theObject,
1357 LogicalTime
const & theFederateTime)
1359 FederateInternalError)
1363 myFedAmb->timeRegulationEnabled(theFederateTime);
1369 LogicalTime
const & theFederateTime)
1371 FederateInternalError)
1375 myFedAmb->timeConstrainedEnabled(theFederateTime);
1381 LogicalTime
const & theTime)
1383 FederateInternalError)
1387 myFedAmb->timeAdvanceGrant(theTime);
1393 MessageRetractionHandle theHandle)
1395 FederateInternalError)
1399 myFedAmb->requestRetraction( theHandle );
1404 #endif // DtIFSPEC1516E
1405 #endif // DtFedAmbWrapper_H_