![]() |
MAK RTIspy API Documentation for HLA Evolved
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2010 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: fedAmbWrap1516e.h,v $ $Revision: 1.0 $ $State: Exp $ 00007 *******************************************************************************/ 00008 #ifndef DtFedAmbWrapper_H_ 00009 #define DtFedAmbWrapper_H_ 00010 00011 #ifdef DtIFSPEC1516E 00012 00013 #include "rtiMsConfig.h" 00014 #include <RTI/Enums.h> 00015 #include <RTI/Typedefs.h> 00016 #include <RTI/NullFederateAmbassador.h> 00017 00018 using namespace rti1516e; 00019 00020 class DtFedAmbWrapper; 00021 00022 typedef DtFedAmbWrapper* (*DtFedAmbWrapperCreator) 00023 (rti1516e::FederateAmbassador* fedAmb); 00024 00025 class DT_DLL_LRC DtFedAmbWrapper : public rti1516e::NullFederateAmbassador 00026 { 00027 public: 00028 DtFedAmbWrapper(rti1516e::FederateAmbassador* fedAmb): 00029 rti1516e::NullFederateAmbassador(), myFedAmb(fedAmb){} 00030 00031 virtual ~DtFedAmbWrapper() 00032 throw() { } 00033 00034 virtual rti1516e::FederateAmbassador* fedAmb(); 00035 virtual void setFedAmb(rti1516e::FederateAmbassador* f); 00036 00037 protected: 00038 rti1516e::FederateAmbassador* myFedAmb; 00039 00040 public: 00041 00042 // 4.4 00043 virtual void connectionLost ( 00044 std::wstring const & faultDescription) 00045 throw ( 00046 FederateInternalError); 00047 00048 // 4.8 00049 virtual void reportFederationExecutions ( 00050 FederationExecutionInformationVector const & 00051 theFederationExecutionInformationList) 00052 throw ( 00053 FederateInternalError); 00054 00055 // 4.12 00056 virtual void synchronizationPointRegistrationSucceeded ( 00057 std::wstring const & label) 00058 throw ( 00059 FederateInternalError); 00060 00061 virtual void synchronizationPointRegistrationFailed ( 00062 std::wstring const & label, 00063 SynchronizationPointFailureReason reason) 00064 throw ( 00065 FederateInternalError); 00066 00067 // 4.13 00068 virtual void announceSynchronizationPoint ( 00069 std::wstring const & label, 00070 VariableLengthData const & theUserSuppliedTag) 00071 throw ( 00072 FederateInternalError); 00073 00074 // 4.15 00075 virtual void federationSynchronized ( 00076 std::wstring const & label, 00077 FederateHandleSet const& failedToSyncSet) 00078 throw ( 00079 FederateInternalError); 00080 00081 // 4.17 00082 virtual void initiateFederateSave ( 00083 std::wstring const & label) 00084 throw ( 00085 FederateInternalError); 00086 00087 virtual void initiateFederateSave ( 00088 std::wstring const & label, 00089 LogicalTime const & theTime) 00090 throw ( 00091 FederateInternalError); 00092 00093 // 4.20 00094 virtual void federationSaved () 00095 throw ( 00096 FederateInternalError); 00097 00098 virtual void federationNotSaved ( 00099 SaveFailureReason theSaveFailureReason) 00100 throw ( 00101 FederateInternalError); 00102 00103 00104 // 4.23 00105 virtual void federationSaveStatusResponse ( 00106 FederateHandleSaveStatusPairVector const & 00107 theFederateStatusVector) 00108 throw ( 00109 FederateInternalError); 00110 00111 // 4.25 00112 virtual void requestFederationRestoreSucceeded ( 00113 std::wstring const & label) 00114 throw ( 00115 FederateInternalError); 00116 00117 virtual void requestFederationRestoreFailed ( 00118 std::wstring const & label) 00119 throw ( 00120 FederateInternalError); 00121 00122 // 4.26 00123 virtual void federationRestoreBegun () 00124 throw ( 00125 FederateInternalError); 00126 00127 // 4.27 00128 virtual void initiateFederateRestore ( 00129 std::wstring const & label, 00130 std::wstring const & federateName, 00131 FederateHandle handle) 00132 throw ( 00133 FederateInternalError); 00134 00135 // 4.29 00136 virtual void federationRestored () 00137 throw ( 00138 FederateInternalError); 00139 00140 virtual void federationNotRestored ( 00141 RestoreFailureReason theRestoreFailureReason) 00142 throw ( 00143 FederateInternalError); 00144 00145 // 4.32 00146 virtual void federationRestoreStatusResponse ( 00147 FederateRestoreStatusVector const & 00148 theFederateRestoreStatusVector) 00149 throw ( 00150 FederateInternalError); 00151 00153 // Declaration Management Services // 00155 00156 // 5.10 00157 virtual void startRegistrationForObjectClass ( 00158 ObjectClassHandle theClass) 00159 throw ( 00160 FederateInternalError); 00161 00162 // 5.11 00163 virtual void stopRegistrationForObjectClass ( 00164 ObjectClassHandle theClass) 00165 throw ( 00166 FederateInternalError); 00167 00168 // 5.12 00169 virtual void turnInteractionsOn ( 00170 InteractionClassHandle theHandle) 00171 throw ( 00172 FederateInternalError); 00173 00174 // 5.13 00175 virtual void turnInteractionsOff ( 00176 InteractionClassHandle theHandle) 00177 throw ( 00178 FederateInternalError); 00179 00181 // Object Management Services // 00183 00184 // 6.3 00185 virtual void objectInstanceNameReservationSucceeded ( 00186 std::wstring const & theObjectInstanceName) 00187 throw ( 00188 FederateInternalError); 00189 00190 virtual void objectInstanceNameReservationFailed ( 00191 std::wstring const & theObjectInstanceName) 00192 throw ( 00193 FederateInternalError); 00194 00195 // 6.6 00196 virtual void multipleObjectInstanceNameReservationSucceeded ( 00197 std::set<std::wstring> const & theObjectInstanceNames) 00198 throw ( 00199 FederateInternalError); 00200 00201 virtual void multipleObjectInstanceNameReservationFailed ( 00202 std::set<std::wstring> const & theObjectInstanceNames) 00203 throw ( 00204 FederateInternalError); 00205 00206 // 6.9 00207 virtual void discoverObjectInstance ( 00208 ObjectInstanceHandle theObject, 00209 ObjectClassHandle theObjectClass, 00210 std::wstring const & theObjectInstanceName) 00211 throw ( 00212 FederateInternalError); 00213 00214 virtual void discoverObjectInstance ( 00215 ObjectInstanceHandle theObject, 00216 ObjectClassHandle theObjectClass, 00217 std::wstring const & theObjectInstanceName, 00218 FederateHandle producingFederate) 00219 throw ( 00220 FederateInternalError); 00221 00222 // 6.11 00223 virtual void reflectAttributeValues ( 00224 ObjectInstanceHandle theObject, 00225 AttributeHandleValueMap const & theAttributeValues, 00226 VariableLengthData const & theUserSuppliedTag, 00227 OrderType sentOrder, 00228 TransportationType theType, 00229 SupplementalReflectInfo theReflectInfo) 00230 throw ( 00231 FederateInternalError); 00232 00233 virtual void reflectAttributeValues ( 00234 ObjectInstanceHandle theObject, 00235 AttributeHandleValueMap const & theAttributeValues, 00236 VariableLengthData const & theUserSuppliedTag, 00237 OrderType sentOrder, 00238 TransportationType theType, 00239 LogicalTime const & theTime, 00240 OrderType receivedOrder, 00241 SupplementalReflectInfo theReflectInfo) 00242 throw ( 00243 FederateInternalError); 00244 00245 virtual void reflectAttributeValues ( 00246 ObjectInstanceHandle theObject, 00247 AttributeHandleValueMap const & theAttributeValues, 00248 VariableLengthData const & theUserSuppliedTag, 00249 OrderType sentOrder, 00250 TransportationType theType, 00251 LogicalTime const & theTime, 00252 OrderType receivedOrder, 00253 MessageRetractionHandle theHandle, 00254 SupplementalReflectInfo theReflectInfo) 00255 throw ( 00256 FederateInternalError); 00257 00258 // 6.13 00259 virtual void receiveInteraction ( 00260 InteractionClassHandle theInteraction, 00261 ParameterHandleValueMap const & theParameterValues, 00262 VariableLengthData const & theUserSuppliedTag, 00263 OrderType sentOrder, 00264 TransportationType theType, 00265 SupplementalReceiveInfo theReceiveInfo) 00266 throw ( 00267 FederateInternalError); 00268 00269 virtual void receiveInteraction ( 00270 InteractionClassHandle theInteraction, 00271 ParameterHandleValueMap const & theParameterValues, 00272 VariableLengthData const & theUserSuppliedTag, 00273 OrderType sentOrder, 00274 TransportationType theType, 00275 LogicalTime const & theTime, 00276 OrderType receivedOrder, 00277 SupplementalReceiveInfo theReceiveInfo) 00278 throw ( 00279 FederateInternalError); 00280 00281 virtual void receiveInteraction ( 00282 InteractionClassHandle theInteraction, 00283 ParameterHandleValueMap const & theParameterValues, 00284 VariableLengthData const & theUserSuppliedTag, 00285 OrderType sentOrder, 00286 TransportationType theType, 00287 LogicalTime const & theTime, 00288 OrderType receivedOrder, 00289 MessageRetractionHandle theHandle, 00290 SupplementalReceiveInfo theReceiveInfo) 00291 throw ( 00292 FederateInternalError); 00293 00294 // 6.15 00295 virtual void removeObjectInstance ( 00296 ObjectInstanceHandle theObject, 00297 VariableLengthData const & theUserSuppliedTag, 00298 OrderType sentOrder, 00299 SupplementalRemoveInfo theRemoveInfo) 00300 throw ( 00301 FederateInternalError); 00302 00303 virtual void removeObjectInstance ( 00304 ObjectInstanceHandle theObject, 00305 VariableLengthData const & theUserSuppliedTag, 00306 OrderType sentOrder, 00307 LogicalTime const & theTime, 00308 OrderType receivedOrder, 00309 SupplementalRemoveInfo theRemoveInfo) 00310 throw ( 00311 FederateInternalError); 00312 00313 virtual void removeObjectInstance ( 00314 ObjectInstanceHandle theObject, 00315 VariableLengthData const & theUserSuppliedTag, 00316 OrderType sentOrder, 00317 LogicalTime const & theTime, 00318 OrderType receivedOrder, 00319 MessageRetractionHandle theHandle, 00320 SupplementalRemoveInfo theRemoveInfo) 00321 throw ( 00322 FederateInternalError); 00323 00324 // 6.17 00325 virtual void attributesInScope ( 00326 ObjectInstanceHandle theObject, 00327 AttributeHandleSet const & theAttributes) 00328 throw ( 00329 FederateInternalError); 00330 00331 // 6.18 00332 virtual void attributesOutOfScope ( 00333 ObjectInstanceHandle theObject, 00334 AttributeHandleSet const & theAttributes) 00335 throw ( 00336 FederateInternalError); 00337 00338 // 6.20 00339 virtual void provideAttributeValueUpdate ( 00340 ObjectInstanceHandle theObject, 00341 AttributeHandleSet const & theAttributes, 00342 VariableLengthData const & theUserSuppliedTag) 00343 throw ( 00344 FederateInternalError); 00345 00346 // 6.21 00347 virtual void turnUpdatesOnForObjectInstance ( 00348 ObjectInstanceHandle theObject, 00349 AttributeHandleSet const & theAttributes) 00350 throw ( 00351 FederateInternalError); 00352 00353 virtual void turnUpdatesOnForObjectInstance ( 00354 ObjectInstanceHandle theObject, 00355 AttributeHandleSet const & theAttributes, 00356 std::wstring const & updateRateDesignator) 00357 throw ( 00358 FederateInternalError); 00359 00360 // 6.22 00361 virtual void turnUpdatesOffForObjectInstance ( 00362 ObjectInstanceHandle theObject, 00363 AttributeHandleSet const & theAttributes) 00364 throw ( 00365 FederateInternalError); 00366 00367 // 6.24 00368 virtual void confirmAttributeTransportationTypeChange ( 00369 ObjectInstanceHandle theObject, 00370 AttributeHandleSet theAttributes, 00371 TransportationType theTransportation) 00372 throw ( 00373 FederateInternalError); 00374 00375 // 6.26 00376 virtual void reportAttributeTransportationType ( 00377 ObjectInstanceHandle theObject, 00378 AttributeHandle theAttribute, 00379 TransportationType theTransportation) 00380 throw ( 00381 FederateInternalError); 00382 00383 // 6.28 00384 virtual void confirmInteractionTransportationTypeChange ( 00385 InteractionClassHandle theInteraction, 00386 TransportationType theTransportation) 00387 throw ( 00388 FederateInternalError); 00389 00390 // 6.30 00391 virtual void reportInteractionTransportationType ( 00392 FederateHandle federateHandle, 00393 InteractionClassHandle theInteraction, 00394 TransportationType theTransportation) 00395 throw ( 00396 FederateInternalError); 00397 00398 00400 // Ownership Management Services // 00402 00403 // 7.4 00404 virtual void requestAttributeOwnershipAssumption ( 00405 ObjectInstanceHandle theObject, 00406 AttributeHandleSet const & offeredAttributes, 00407 VariableLengthData const & theUserSuppliedTag) 00408 throw ( 00409 FederateInternalError); 00410 00411 // 7.5 00412 virtual void requestDivestitureConfirmation ( 00413 ObjectInstanceHandle theObject, 00414 AttributeHandleSet const & releasedAttributes) 00415 throw ( 00416 FederateInternalError); 00417 00418 // 7.7 00419 virtual void attributeOwnershipAcquisitionNotification ( 00420 ObjectInstanceHandle theObject, 00421 AttributeHandleSet const & securedAttributes, 00422 VariableLengthData const & theUserSuppliedTag) 00423 throw ( 00424 FederateInternalError); 00425 00426 // 7.10 00427 virtual void attributeOwnershipUnavailable ( 00428 ObjectInstanceHandle theObject, 00429 AttributeHandleSet const & theAttributes) 00430 throw ( 00431 FederateInternalError); 00432 00433 // 7.11 00434 virtual void requestAttributeOwnershipRelease ( 00435 ObjectInstanceHandle theObject, 00436 AttributeHandleSet const & candidateAttributes, 00437 VariableLengthData const & theUserSuppliedTag) 00438 throw ( 00439 FederateInternalError); 00440 00441 // 7.16 00442 virtual void confirmAttributeOwnershipAcquisitionCancellation ( 00443 ObjectInstanceHandle theObject, 00444 AttributeHandleSet const & theAttributes) 00445 throw ( 00446 FederateInternalError); 00447 00448 // 7.18 00449 virtual void informAttributeOwnership ( 00450 ObjectInstanceHandle theObject, 00451 AttributeHandle theAttribute, 00452 FederateHandle theOwner) 00453 throw ( 00454 FederateInternalError); 00455 00456 virtual void attributeIsNotOwned ( 00457 ObjectInstanceHandle theObject, 00458 AttributeHandle theAttribute) 00459 throw ( 00460 FederateInternalError); 00461 00462 virtual void attributeIsOwnedByRTI ( 00463 ObjectInstanceHandle theObject, 00464 AttributeHandle theAttribute) 00465 throw ( 00466 FederateInternalError); 00467 00469 // Time Management Services // 00471 00472 // 8.3 00473 virtual void timeRegulationEnabled ( 00474 LogicalTime const & theFederateTime) 00475 throw ( 00476 FederateInternalError); 00477 00478 // 8.6 00479 virtual void timeConstrainedEnabled ( 00480 LogicalTime const & theFederateTime) 00481 throw ( 00482 FederateInternalError); 00483 00484 // 8.13 00485 virtual void timeAdvanceGrant ( 00486 LogicalTime const & theTime) 00487 throw ( 00488 FederateInternalError); 00489 00490 // 8.22 00491 virtual void requestRetraction ( 00492 MessageRetractionHandle theHandle) 00493 throw ( 00494 FederateInternalError); 00495 }; 00496 00497 inline rti1516e::FederateAmbassador* DtFedAmbWrapper::fedAmb() 00498 { 00499 return myFedAmb; 00500 } 00501 00502 inline void DtFedAmbWrapper::setFedAmb(rti1516e::FederateAmbassador* f) 00503 { 00504 myFedAmb = f; 00505 } 00506 00507 // 4.4 00508 inline void DtFedAmbWrapper::connectionLost ( 00509 std::wstring const & faultDescription) 00510 throw ( 00511 FederateInternalError) 00512 { 00513 if( myFedAmb ) 00514 { 00515 myFedAmb->connectionLost(faultDescription); 00516 } 00517 } 00518 00519 // 4.8 00520 inline void DtFedAmbWrapper::reportFederationExecutions ( 00521 FederationExecutionInformationVector const & 00522 theFederationExecutionInformationList) 00523 throw ( 00524 FederateInternalError) 00525 { 00526 if( myFedAmb ) 00527 { 00528 myFedAmb->reportFederationExecutions(theFederationExecutionInformationList); 00529 } 00530 } 00531 00532 // 4.12 00533 inline void DtFedAmbWrapper::synchronizationPointRegistrationSucceeded ( 00534 std::wstring const & label) 00535 throw ( 00536 FederateInternalError) 00537 { 00538 if( myFedAmb ) 00539 { 00540 myFedAmb->synchronizationPointRegistrationSucceeded( label ); 00541 } 00542 } 00543 00544 inline void DtFedAmbWrapper::synchronizationPointRegistrationFailed ( 00545 std::wstring const & label, 00546 SynchronizationPointFailureReason reason) 00547 throw ( 00548 FederateInternalError) 00549 { 00550 if( myFedAmb ) 00551 { 00552 myFedAmb->synchronizationPointRegistrationFailed(label,reason); 00553 } 00554 } 00555 00556 // 4.13 00557 inline void DtFedAmbWrapper::announceSynchronizationPoint ( 00558 std::wstring const & label, 00559 VariableLengthData const & theUserSuppliedTag) 00560 throw ( 00561 FederateInternalError) 00562 { 00563 if( myFedAmb ) 00564 { 00565 myFedAmb->announceSynchronizationPoint(label,theUserSuppliedTag); 00566 } 00567 } 00568 00569 // 4.15 00570 inline void DtFedAmbWrapper::federationSynchronized ( 00571 std::wstring const & label, 00572 FederateHandleSet const& failedToSyncSet) 00573 throw ( 00574 FederateInternalError) 00575 { 00576 if( myFedAmb ) 00577 { 00578 myFedAmb->federationSynchronized(label,failedToSyncSet); 00579 } 00580 } 00581 00582 // 4.17 00583 inline void DtFedAmbWrapper::initiateFederateSave ( 00584 std::wstring const & label) 00585 throw ( 00586 FederateInternalError) 00587 { 00588 if( myFedAmb ) 00589 { 00590 myFedAmb->initiateFederateSave(label); 00591 } 00592 } 00593 00594 inline void DtFedAmbWrapper::initiateFederateSave ( 00595 std::wstring const & label, 00596 LogicalTime const & theTime) 00597 throw ( 00598 FederateInternalError) 00599 { 00600 if( myFedAmb ) 00601 { 00602 myFedAmb->initiateFederateSave(label,theTime); 00603 } 00604 } 00605 00606 // 4.20 00607 inline void DtFedAmbWrapper::federationSaved () 00608 throw ( 00609 FederateInternalError) 00610 { 00611 if( myFedAmb ) 00612 { 00613 myFedAmb->federationSaved(); 00614 } 00615 } 00616 00617 inline void DtFedAmbWrapper::federationNotSaved ( 00618 SaveFailureReason theSaveFailureReason) 00619 throw ( 00620 FederateInternalError) 00621 { 00622 if( myFedAmb ) 00623 { 00624 myFedAmb->federationNotSaved(theSaveFailureReason); 00625 } 00626 } 00627 00628 00629 // 4.23 00630 inline void DtFedAmbWrapper::federationSaveStatusResponse ( 00631 FederateHandleSaveStatusPairVector const & 00632 theFederateStatusVector) 00633 throw ( 00634 FederateInternalError) 00635 { 00636 if( myFedAmb ) 00637 { 00638 myFedAmb->federationSaveStatusResponse(theFederateStatusVector); 00639 } 00640 } 00641 00642 // 4.25 00643 inline void DtFedAmbWrapper::requestFederationRestoreSucceeded ( 00644 std::wstring const & label) 00645 throw ( 00646 FederateInternalError) 00647 { 00648 if( myFedAmb ) 00649 { 00650 myFedAmb->requestFederationRestoreSucceeded(label); 00651 } 00652 } 00653 00654 inline void DtFedAmbWrapper::requestFederationRestoreFailed ( 00655 std::wstring const & label) 00656 throw ( 00657 FederateInternalError) 00658 { 00659 if( myFedAmb ) 00660 { 00661 myFedAmb->requestFederationRestoreFailed(label); 00662 } 00663 } 00664 00665 // 4.26 00666 inline void DtFedAmbWrapper::federationRestoreBegun () 00667 throw ( 00668 FederateInternalError) 00669 { 00670 if( myFedAmb ) 00671 { 00672 myFedAmb->federationRestoreBegun(); 00673 } 00674 } 00675 00676 // 4.27 00677 inline void DtFedAmbWrapper::initiateFederateRestore ( 00678 std::wstring const & label, 00679 std::wstring const & federateName, 00680 FederateHandle handle) 00681 throw ( 00682 FederateInternalError) 00683 { 00684 if( myFedAmb ) 00685 { 00686 myFedAmb->initiateFederateRestore(label,federateName,handle); 00687 } 00688 } 00689 00690 // 4.29 00691 inline void DtFedAmbWrapper::federationRestored () 00692 throw ( 00693 FederateInternalError) 00694 { 00695 if( myFedAmb ) 00696 { 00697 myFedAmb->federationRestored(); 00698 } 00699 } 00700 00701 inline void DtFedAmbWrapper::federationNotRestored ( 00702 RestoreFailureReason theRestoreFailureReason) 00703 throw ( 00704 FederateInternalError) 00705 { 00706 if( myFedAmb ) 00707 { 00708 myFedAmb->federationNotRestored(theRestoreFailureReason); 00709 } 00710 } 00711 00712 // 4.32 00713 inline void DtFedAmbWrapper::federationRestoreStatusResponse ( 00714 FederateRestoreStatusVector const & 00715 theFederateRestoreStatusVector) 00716 throw ( 00717 FederateInternalError) 00718 { 00719 if( myFedAmb ) 00720 { 00721 myFedAmb->federationRestoreStatusResponse( theFederateRestoreStatusVector ); 00722 } 00723 } 00724 00726 // Declaration Management Services // 00728 00729 // 5.10 00730 inline void DtFedAmbWrapper::startRegistrationForObjectClass ( 00731 ObjectClassHandle theClass) 00732 throw ( 00733 FederateInternalError) 00734 { 00735 if( myFedAmb ) 00736 { 00737 myFedAmb->startRegistrationForObjectClass(theClass); 00738 } 00739 } 00740 00741 // 5.11 00742 inline void DtFedAmbWrapper::stopRegistrationForObjectClass ( 00743 ObjectClassHandle theClass) 00744 throw ( 00745 FederateInternalError) 00746 { 00747 if( myFedAmb ) 00748 { 00749 myFedAmb->stopRegistrationForObjectClass(theClass); 00750 } 00751 } 00752 00753 // 5.12 00754 inline void DtFedAmbWrapper::turnInteractionsOn ( 00755 InteractionClassHandle theHandle) 00756 throw ( 00757 FederateInternalError) 00758 { 00759 if( myFedAmb ) 00760 { 00761 myFedAmb->turnInteractionsOn(theHandle); 00762 } 00763 } 00764 00765 // 5.13 00766 inline void DtFedAmbWrapper::turnInteractionsOff ( 00767 InteractionClassHandle theHandle) 00768 throw ( 00769 FederateInternalError) 00770 { 00771 if( myFedAmb ) 00772 { 00773 myFedAmb->turnInteractionsOff(theHandle); 00774 } 00775 } 00776 00778 // Object Management Services // 00780 00781 // 6.3 00782 inline void DtFedAmbWrapper::objectInstanceNameReservationSucceeded ( 00783 std::wstring const & theObjectInstanceName) 00784 throw ( 00785 FederateInternalError) 00786 { 00787 if( myFedAmb ) 00788 { 00789 myFedAmb->objectInstanceNameReservationSucceeded(theObjectInstanceName); 00790 } 00791 } 00792 00793 inline void DtFedAmbWrapper::objectInstanceNameReservationFailed ( 00794 std::wstring const & theObjectInstanceName) 00795 throw ( 00796 FederateInternalError) 00797 { 00798 if( myFedAmb ) 00799 { 00800 myFedAmb->objectInstanceNameReservationFailed(theObjectInstanceName); 00801 } 00802 } 00803 00804 // 6.6 00805 inline void DtFedAmbWrapper::multipleObjectInstanceNameReservationSucceeded ( 00806 std::set<std::wstring> const & theObjectInstanceNames) 00807 throw ( 00808 FederateInternalError) 00809 { 00810 if( myFedAmb ) 00811 { 00812 myFedAmb->multipleObjectInstanceNameReservationSucceeded( theObjectInstanceNames ); 00813 } 00814 } 00815 00816 inline void DtFedAmbWrapper::multipleObjectInstanceNameReservationFailed ( 00817 std::set<std::wstring> const & theObjectInstanceNames) 00818 throw ( 00819 FederateInternalError) 00820 { 00821 if( myFedAmb ) 00822 { 00823 myFedAmb->multipleObjectInstanceNameReservationFailed(theObjectInstanceNames); 00824 } 00825 } 00826 00827 // 6.9 00828 inline void DtFedAmbWrapper::discoverObjectInstance ( 00829 ObjectInstanceHandle theObject, 00830 ObjectClassHandle theObjectClass, 00831 std::wstring const & theObjectInstanceName) 00832 throw ( 00833 FederateInternalError) 00834 { 00835 if( myFedAmb ) 00836 { 00837 myFedAmb->discoverObjectInstance(theObject,theObjectClass,theObjectInstanceName); 00838 } 00839 } 00840 00841 inline void DtFedAmbWrapper::discoverObjectInstance ( 00842 ObjectInstanceHandle theObject, 00843 ObjectClassHandle theObjectClass, 00844 std::wstring const & theObjectInstanceName, 00845 FederateHandle producingFederate) 00846 throw ( 00847 FederateInternalError) 00848 { 00849 if( myFedAmb ) 00850 { 00851 myFedAmb->discoverObjectInstance(theObject,theObjectClass,theObjectInstanceName,producingFederate); 00852 } 00853 } 00854 00855 // 6.11 00856 inline void DtFedAmbWrapper::reflectAttributeValues ( 00857 ObjectInstanceHandle theObject, 00858 AttributeHandleValueMap const & theAttributeValues, 00859 VariableLengthData const & theUserSuppliedTag, 00860 OrderType sentOrder, 00861 TransportationType theType, 00862 SupplementalReflectInfo theReflectInfo) 00863 throw ( 00864 FederateInternalError) 00865 { 00866 if( myFedAmb ) 00867 { 00868 myFedAmb->reflectAttributeValues(theObject, 00869 theAttributeValues, 00870 theUserSuppliedTag, 00871 sentOrder, 00872 theType, 00873 theReflectInfo); 00874 } 00875 } 00876 00877 inline void DtFedAmbWrapper::reflectAttributeValues ( 00878 ObjectInstanceHandle theObject, 00879 AttributeHandleValueMap const & theAttributeValues, 00880 VariableLengthData const & theUserSuppliedTag, 00881 OrderType sentOrder, 00882 TransportationType theType, 00883 LogicalTime const & theTime, 00884 OrderType receivedOrder, 00885 SupplementalReflectInfo theReflectInfo) 00886 throw ( 00887 FederateInternalError) 00888 { 00889 if( myFedAmb ) 00890 { 00891 myFedAmb->reflectAttributeValues(theObject, 00892 theAttributeValues, 00893 theUserSuppliedTag, 00894 sentOrder, 00895 theType, 00896 theTime, 00897 receivedOrder, 00898 theReflectInfo); 00899 } 00900 } 00901 00902 inline void DtFedAmbWrapper::reflectAttributeValues ( 00903 ObjectInstanceHandle theObject, 00904 AttributeHandleValueMap const & theAttributeValues, 00905 VariableLengthData const & theUserSuppliedTag, 00906 OrderType sentOrder, 00907 TransportationType theType, 00908 LogicalTime const & theTime, 00909 OrderType receivedOrder, 00910 MessageRetractionHandle theHandle, 00911 SupplementalReflectInfo theReflectInfo) 00912 throw ( 00913 FederateInternalError) 00914 { 00915 if( myFedAmb ) 00916 { 00917 myFedAmb->reflectAttributeValues(theObject, 00918 theAttributeValues, 00919 theUserSuppliedTag, 00920 sentOrder, 00921 theType, 00922 theTime, 00923 receivedOrder, 00924 theHandle, 00925 theReflectInfo); 00926 } 00927 } 00928 00929 // 6.13 00930 inline void DtFedAmbWrapper::receiveInteraction ( 00931 InteractionClassHandle theInteraction, 00932 ParameterHandleValueMap const & theParameterValues, 00933 VariableLengthData const & theUserSuppliedTag, 00934 OrderType sentOrder, 00935 TransportationType theType, 00936 SupplementalReceiveInfo theReceiveInfo) 00937 throw ( 00938 FederateInternalError) 00939 { 00940 if( myFedAmb ) 00941 { 00942 myFedAmb->receiveInteraction(theInteraction, 00943 theParameterValues, 00944 theUserSuppliedTag, 00945 sentOrder, 00946 theType, 00947 theReceiveInfo); 00948 } 00949 } 00950 00951 inline void DtFedAmbWrapper::receiveInteraction ( 00952 InteractionClassHandle theInteraction, 00953 ParameterHandleValueMap const & theParameterValues, 00954 VariableLengthData const & theUserSuppliedTag, 00955 OrderType sentOrder, 00956 TransportationType theType, 00957 LogicalTime const & theTime, 00958 OrderType receivedOrder, 00959 SupplementalReceiveInfo theReceiveInfo) 00960 throw ( 00961 FederateInternalError) 00962 { 00963 if( myFedAmb ) 00964 { 00965 myFedAmb->receiveInteraction(theInteraction, 00966 theParameterValues, 00967 theUserSuppliedTag, 00968 sentOrder, 00969 theType, 00970 theTime, 00971 receivedOrder, 00972 theReceiveInfo); 00973 } 00974 } 00975 00976 inline void DtFedAmbWrapper::receiveInteraction ( 00977 InteractionClassHandle theInteraction, 00978 ParameterHandleValueMap const & theParameterValues, 00979 VariableLengthData const & theUserSuppliedTag, 00980 OrderType sentOrder, 00981 TransportationType theType, 00982 LogicalTime const & theTime, 00983 OrderType receivedOrder, 00984 MessageRetractionHandle theHandle, 00985 SupplementalReceiveInfo theReceiveInfo) 00986 throw ( 00987 FederateInternalError) 00988 { 00989 if( myFedAmb ) 00990 { 00991 myFedAmb->receiveInteraction(theInteraction, 00992 theParameterValues, 00993 theUserSuppliedTag, 00994 sentOrder, 00995 theType, 00996 theTime, 00997 receivedOrder, 00998 theHandle, 00999 theReceiveInfo); 01000 } 01001 } 01002 01003 // 6.15 01004 inline void DtFedAmbWrapper::removeObjectInstance ( 01005 ObjectInstanceHandle theObject, 01006 VariableLengthData const & theUserSuppliedTag, 01007 OrderType sentOrder, 01008 SupplementalRemoveInfo theRemoveInfo) 01009 throw ( 01010 FederateInternalError) 01011 { 01012 if( myFedAmb ) 01013 { 01014 myFedAmb->removeObjectInstance(theObject, 01015 theUserSuppliedTag, 01016 sentOrder, 01017 theRemoveInfo); 01018 } 01019 } 01020 01021 inline void DtFedAmbWrapper::removeObjectInstance ( 01022 ObjectInstanceHandle theObject, 01023 VariableLengthData const & theUserSuppliedTag, 01024 OrderType sentOrder, 01025 LogicalTime const & theTime, 01026 OrderType receivedOrder, 01027 SupplementalRemoveInfo theRemoveInfo) 01028 throw ( 01029 FederateInternalError) 01030 { 01031 if( myFedAmb ) 01032 { 01033 myFedAmb->removeObjectInstance(theObject, 01034 theUserSuppliedTag, 01035 sentOrder, 01036 theTime, 01037 receivedOrder, 01038 theRemoveInfo); 01039 } 01040 } 01041 01042 inline void DtFedAmbWrapper::removeObjectInstance ( 01043 ObjectInstanceHandle theObject, 01044 VariableLengthData const & theUserSuppliedTag, 01045 OrderType sentOrder, 01046 LogicalTime const & theTime, 01047 OrderType receivedOrder, 01048 MessageRetractionHandle theHandle, 01049 SupplementalRemoveInfo theRemoveInfo) 01050 throw ( 01051 FederateInternalError) 01052 { 01053 if( myFedAmb ) 01054 { 01055 myFedAmb->removeObjectInstance(theObject, 01056 theUserSuppliedTag, 01057 sentOrder, 01058 theTime, 01059 receivedOrder, 01060 theHandle, 01061 theRemoveInfo); 01062 } 01063 } 01064 01065 // 6.17 01066 inline void DtFedAmbWrapper::attributesInScope ( 01067 ObjectInstanceHandle theObject, 01068 AttributeHandleSet const & theAttributes) 01069 throw ( 01070 FederateInternalError) 01071 { 01072 if( myFedAmb ) 01073 { 01074 myFedAmb->attributesInScope(theObject, 01075 theAttributes); 01076 } 01077 } 01078 01079 // 6.18 01080 inline void DtFedAmbWrapper::attributesOutOfScope ( 01081 ObjectInstanceHandle theObject, 01082 AttributeHandleSet const & theAttributes) 01083 throw ( 01084 FederateInternalError) 01085 { 01086 if( myFedAmb ) 01087 { 01088 myFedAmb->attributesOutOfScope(theObject, 01089 theAttributes); 01090 } 01091 } 01092 01093 // 6.20 01094 inline void DtFedAmbWrapper::provideAttributeValueUpdate ( 01095 ObjectInstanceHandle theObject, 01096 AttributeHandleSet const & theAttributes, 01097 VariableLengthData const & theUserSuppliedTag) 01098 throw ( 01099 FederateInternalError) 01100 { 01101 if( myFedAmb ) 01102 { 01103 myFedAmb->provideAttributeValueUpdate(theObject, 01104 theAttributes, 01105 theUserSuppliedTag); 01106 } 01107 } 01108 01109 // 6.21 01110 inline void DtFedAmbWrapper::turnUpdatesOnForObjectInstance ( 01111 ObjectInstanceHandle theObject, 01112 AttributeHandleSet const & theAttributes) 01113 throw ( 01114 FederateInternalError) 01115 { 01116 if( myFedAmb ) 01117 { 01118 myFedAmb->turnUpdatesOnForObjectInstance(theObject, 01119 theAttributes); 01120 } 01121 } 01122 01123 inline void DtFedAmbWrapper::turnUpdatesOnForObjectInstance ( 01124 ObjectInstanceHandle theObject, 01125 AttributeHandleSet const & theAttributes, 01126 std::wstring const & updateRateDesignator) 01127 throw ( 01128 FederateInternalError) 01129 { 01130 if( myFedAmb ) 01131 { 01132 myFedAmb->turnUpdatesOnForObjectInstance(theObject, 01133 theAttributes, 01134 updateRateDesignator); 01135 } 01136 } 01137 01138 // 6.22 01139 inline void DtFedAmbWrapper::turnUpdatesOffForObjectInstance ( 01140 ObjectInstanceHandle theObject, 01141 AttributeHandleSet const & theAttributes) 01142 throw ( 01143 FederateInternalError) 01144 { 01145 if( myFedAmb ) 01146 { 01147 myFedAmb->turnUpdatesOffForObjectInstance(theObject, 01148 theAttributes); 01149 } 01150 } 01151 01152 // 6.24 01153 inline void DtFedAmbWrapper::confirmAttributeTransportationTypeChange ( 01154 ObjectInstanceHandle theObject, 01155 AttributeHandleSet theAttributes, 01156 TransportationType theTransportation) 01157 throw ( 01158 FederateInternalError) 01159 { 01160 if( myFedAmb ) 01161 { 01162 myFedAmb->confirmAttributeTransportationTypeChange(theObject, 01163 theAttributes, 01164 theTransportation); 01165 } 01166 } 01167 01168 // 6.26 01169 inline void DtFedAmbWrapper::reportAttributeTransportationType ( 01170 ObjectInstanceHandle theObject, 01171 AttributeHandle theAttribute, 01172 TransportationType theTransportation) 01173 throw ( 01174 FederateInternalError) 01175 { 01176 if( myFedAmb ) 01177 { 01178 myFedAmb->reportAttributeTransportationType(theObject, 01179 theAttribute, 01180 theTransportation); 01181 } 01182 } 01183 01184 // 6.28 01185 inline void DtFedAmbWrapper::confirmInteractionTransportationTypeChange ( 01186 InteractionClassHandle theInteraction, 01187 TransportationType theTransportation) 01188 throw ( 01189 FederateInternalError) 01190 { 01191 if( myFedAmb ) 01192 { 01193 myFedAmb->confirmInteractionTransportationTypeChange(theInteraction, 01194 theTransportation); 01195 } 01196 } 01197 01198 // 6.30 01199 inline void DtFedAmbWrapper::reportInteractionTransportationType ( 01200 FederateHandle federateHandle, 01201 InteractionClassHandle theInteraction, 01202 TransportationType theTransportation) 01203 throw ( 01204 FederateInternalError) 01205 { 01206 if( myFedAmb ) 01207 { 01208 myFedAmb->reportInteractionTransportationType(federateHandle, 01209 theInteraction, 01210 theTransportation); 01211 } 01212 } 01213 01214 01216 // Ownership Management Services // 01218 01219 // 7.4 01220 inline void DtFedAmbWrapper::requestAttributeOwnershipAssumption ( 01221 ObjectInstanceHandle theObject, 01222 AttributeHandleSet const & offeredAttributes, 01223 VariableLengthData const & theUserSuppliedTag) 01224 throw ( 01225 FederateInternalError) 01226 { 01227 if( myFedAmb ) 01228 { 01229 myFedAmb->requestAttributeOwnershipAssumption(theObject, 01230 offeredAttributes, 01231 theUserSuppliedTag); 01232 } 01233 } 01234 01235 // 7.5 01236 inline void DtFedAmbWrapper::requestDivestitureConfirmation ( 01237 ObjectInstanceHandle theObject, 01238 AttributeHandleSet const & releasedAttributes) 01239 throw ( 01240 FederateInternalError) 01241 { 01242 if( myFedAmb ) 01243 { 01244 myFedAmb->requestDivestitureConfirmation(theObject, 01245 releasedAttributes); 01246 } 01247 } 01248 01249 // 7.7 01250 inline void DtFedAmbWrapper::attributeOwnershipAcquisitionNotification ( 01251 ObjectInstanceHandle theObject, 01252 AttributeHandleSet const & securedAttributes, 01253 VariableLengthData const & theUserSuppliedTag) 01254 throw ( 01255 FederateInternalError) 01256 { 01257 if( myFedAmb ) 01258 { 01259 myFedAmb->attributeOwnershipAcquisitionNotification(theObject, 01260 securedAttributes, 01261 theUserSuppliedTag); 01262 } 01263 } 01264 01265 // 7.10 01266 inline void DtFedAmbWrapper::attributeOwnershipUnavailable ( 01267 ObjectInstanceHandle theObject, 01268 AttributeHandleSet const & theAttributes) 01269 throw ( 01270 FederateInternalError) 01271 { 01272 if( myFedAmb ) 01273 { 01274 myFedAmb->attributeOwnershipUnavailable(theObject, 01275 theAttributes); 01276 } 01277 } 01278 01279 // 7.11 01280 inline void DtFedAmbWrapper::requestAttributeOwnershipRelease ( 01281 ObjectInstanceHandle theObject, 01282 AttributeHandleSet const & candidateAttributes, 01283 VariableLengthData const & theUserSuppliedTag) 01284 throw ( 01285 FederateInternalError) 01286 { 01287 if( myFedAmb ) 01288 { 01289 myFedAmb->requestAttributeOwnershipRelease(theObject, 01290 candidateAttributes, 01291 theUserSuppliedTag); 01292 } 01293 } 01294 01295 // 7.16 01296 inline void DtFedAmbWrapper::confirmAttributeOwnershipAcquisitionCancellation ( 01297 ObjectInstanceHandle theObject, 01298 AttributeHandleSet const & theAttributes) 01299 throw ( 01300 FederateInternalError) 01301 { 01302 if( myFedAmb ) 01303 { 01304 myFedAmb->confirmAttributeOwnershipAcquisitionCancellation(theObject, 01305 theAttributes); 01306 } 01307 } 01308 01309 // 7.18 01310 inline void DtFedAmbWrapper::informAttributeOwnership ( 01311 ObjectInstanceHandle theObject, 01312 AttributeHandle theAttribute, 01313 FederateHandle theOwner) 01314 throw ( 01315 FederateInternalError) 01316 { 01317 if( myFedAmb ) 01318 { 01319 myFedAmb->informAttributeOwnership(theObject, 01320 theAttribute, 01321 theOwner); 01322 } 01323 } 01324 01325 inline void DtFedAmbWrapper::attributeIsNotOwned ( 01326 ObjectInstanceHandle theObject, 01327 AttributeHandle theAttribute) 01328 throw ( 01329 FederateInternalError) 01330 { 01331 if( myFedAmb ) 01332 { 01333 myFedAmb->attributeIsNotOwned(theObject, 01334 theAttribute); 01335 } 01336 } 01337 01338 inline void DtFedAmbWrapper::attributeIsOwnedByRTI ( 01339 ObjectInstanceHandle theObject, 01340 AttributeHandle theAttribute) 01341 throw ( 01342 FederateInternalError) 01343 { 01344 if( myFedAmb ) 01345 { 01346 myFedAmb->attributeIsOwnedByRTI(theObject, 01347 theAttribute); 01348 } 01349 } 01350 01352 // Time Management Services // 01354 01355 // 8.3 01356 inline void DtFedAmbWrapper::timeRegulationEnabled ( 01357 LogicalTime const & theFederateTime) 01358 throw ( 01359 FederateInternalError) 01360 { 01361 if( myFedAmb ) 01362 { 01363 myFedAmb->timeRegulationEnabled(theFederateTime); 01364 } 01365 } 01366 01367 // 8.6 01368 inline void DtFedAmbWrapper::timeConstrainedEnabled ( 01369 LogicalTime const & theFederateTime) 01370 throw ( 01371 FederateInternalError) 01372 { 01373 if( myFedAmb ) 01374 { 01375 myFedAmb->timeConstrainedEnabled(theFederateTime); 01376 } 01377 } 01378 01379 // 8.13 01380 inline void DtFedAmbWrapper::timeAdvanceGrant ( 01381 LogicalTime const & theTime) 01382 throw ( 01383 FederateInternalError) 01384 { 01385 if( myFedAmb ) 01386 { 01387 myFedAmb->timeAdvanceGrant(theTime); 01388 } 01389 } 01390 01391 // 8.22 01392 inline void DtFedAmbWrapper::requestRetraction ( 01393 MessageRetractionHandle theHandle) 01394 throw ( 01395 FederateInternalError) 01396 { 01397 if( myFedAmb ) 01398 { 01399 myFedAmb->requestRetraction( theHandle ); 01400 } 01401 } 01402 01403 01404 #endif // DtIFSPEC1516E 01405 #endif // DtFedAmbWrapper_H_