MAK RTIspy API Documentation for HLA 1.3
fedAmbWrap1516e.h
Go to the documentation of this file.
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_

Document ID: Generated on Thu Jun 14 14:15:04 EDT 2012 from SVN revision 116116
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)