MAK RTIspy API Documentation for HLA 1.3
federateAmbServices13.h
Go to the documentation of this file.
00001 //File federateAmbServices13.h
00002 //Included in RTI13.h
00003 
00004 //                RTI Parameter Passing Memory Conventions
00005 //
00006 // C1  In parameter by value.
00007 // C2  Out parameter by pointer value.
00008 // C3  Function return by value.
00009 // C4  In parameter by const pointer value.  Caller provides memory.
00010 //     Caller may free memory or overwrite it upon completion of
00011 //     the call.  Callee must copy during the call anything it
00012 //     wishes to save beyond completion of the call.  Parameter
00013 //     type must define const accessor methods.
00014 // C5  Out parameter by pointer value.  Caller provides reference to object.
00015 //     Callee constructs an instance on the heap (new) and returns.
00016 //     The caller destroys the instance (delete) at its leisure.
00017 // C6  Function return by pointer value.  Callee constructs an instance on
00018 //     the heap (new) and returns a reference.  The caller destroys the
00019 //     instance (delete) at its leisure.
00020 //
00021 
00023 // Federation Management Services //
00025 
00026 // 4.7
00027 virtual void synchronizationPointRegistrationSucceeded (
00028   const char *label) // supplied C4)
00029 throw (
00030   FederateInternalError) = 0;
00031 
00032 virtual void synchronizationPointRegistrationFailed (
00033   const char *label) // supplied C4)
00034 throw (
00035   FederateInternalError) = 0;
00036 
00037 // 4.8
00038 virtual void announceSynchronizationPoint (
00039   const char *label, // supplied C4
00040   const char *tag)   // supplied C4
00041 throw (
00042   FederateInternalError) = 0;
00043 
00044 // 4.10
00045 virtual void federationSynchronized (
00046   const char *label) // supplied C4)
00047 throw (
00048   FederateInternalError) = 0;
00049 
00050 // 4.12
00051 virtual void initiateFederateSave (
00052   const char *label) // supplied C4
00053 throw (
00054   UnableToPerformSave,
00055   FederateInternalError) = 0;
00056 
00057 // 4.15
00058 virtual void federationSaved ()
00059 throw (
00060   FederateInternalError) = 0;
00061 
00062 virtual void federationNotSaved ()
00063 throw (
00064   FederateInternalError) = 0;
00065 
00066 // 4.17
00067 virtual void requestFederationRestoreSucceeded (
00068   const char *label) // supplied C4
00069 throw (
00070   FederateInternalError) = 0;
00071 
00072 virtual void requestFederationRestoreFailed (
00073   const char *label,  // supplied C4
00074   const char *reason) // supplied C4
00075 throw (
00076   FederateInternalError) = 0;
00077 
00078 // 4.18
00079 virtual void federationRestoreBegun ()
00080 throw (
00081   FederateInternalError) = 0;
00082 
00083 // 4.19
00084 virtual void initiateFederateRestore (
00085   const char *label,   // supplied C4
00086         FederateHandle handle)  // supplied C1
00087 throw (
00088   SpecifiedSaveLabelDoesNotExist,
00089   CouldNotRestore,
00090   FederateInternalError) = 0;
00091 
00092 // 4.21
00093 virtual void federationRestored ()
00094 throw (
00095   FederateInternalError) = 0;
00096 
00097 virtual void federationNotRestored ()
00098 throw (
00099   FederateInternalError) = 0;
00100 
00102 // Declaration Management Services //
00104 
00105 // 5.10
00106 virtual void startRegistrationForObjectClass (
00107         ObjectClassHandle   theClass)      // supplied C1
00108 throw (
00109   ObjectClassNotPublished,
00110   FederateInternalError) = 0;
00111 
00112 // 5.11
00113 virtual void stopRegistrationForObjectClass (
00114         ObjectClassHandle   theClass)      // supplied C1
00115 throw (
00116   ObjectClassNotPublished,
00117   FederateInternalError) = 0;
00118 
00119 // 5.12
00120 virtual void turnInteractionsOn (
00121   InteractionClassHandle theHandle) // supplied C1
00122 throw (
00123   InteractionClassNotPublished,
00124   FederateInternalError) = 0;
00125 
00126 // 5.13
00127 virtual void turnInteractionsOff (
00128   InteractionClassHandle theHandle) // supplied C1
00129 throw (
00130   InteractionClassNotPublished,
00131   FederateInternalError) = 0;
00132 
00134 // Object Management Services //
00136 
00137 // 6.3
00138 virtual void discoverObjectInstance (
00139         ObjectHandle          theObject,      // supplied C1
00140         ObjectClassHandle     theObjectClass, // supplied C1
00141   const char *                theObjectName)  // supplied C4
00142 throw (
00143   CouldNotDiscover,
00144   ObjectClassNotKnown,
00145   FederateInternalError) = 0;
00146 
00147 // 6.5
00148 virtual void reflectAttributeValues (
00149         ObjectHandle                 theObject,     // supplied C1
00150   const AttributeHandleValuePairSet& theAttributes, // supplied C4
00151   const FedTime&                     theTime,       // supplied C1
00152   const char                        *theTag,        // supplied C4
00153         EventRetractionHandle        theHandle)     // supplied C1
00154 throw (
00155   ObjectNotKnown,
00156   AttributeNotKnown,
00157   FederateOwnsAttributes,
00158   InvalidFederationTime,
00159   FederateInternalError) = 0;
00160 
00161 virtual void reflectAttributeValues (
00162         ObjectHandle                 theObject,     // supplied C1
00163   const AttributeHandleValuePairSet& theAttributes, // supplied C4
00164   const char                        *theTag)        // supplied C4
00165 throw (
00166   ObjectNotKnown,
00167   AttributeNotKnown,
00168   FederateOwnsAttributes,
00169   FederateInternalError) = 0;
00170 
00171 // 6.7
00172 virtual void receiveInteraction (
00173         InteractionClassHandle       theInteraction, // supplied C1
00174   const ParameterHandleValuePairSet& theParameters,  // supplied C4
00175   const FedTime&                     theTime,        // supplied C4
00176   const char                        *theTag,         // supplied C4
00177         EventRetractionHandle        theHandle)      // supplied C1
00178 throw (
00179   InteractionClassNotKnown,
00180   InteractionParameterNotKnown,
00181   InvalidFederationTime,
00182   FederateInternalError) = 0;
00183 
00184 virtual void receiveInteraction (
00185         InteractionClassHandle       theInteraction, // supplied C1
00186   const ParameterHandleValuePairSet& theParameters,  // supplied C4
00187   const char                        *theTag)         // supplied C4
00188 throw (
00189   InteractionClassNotKnown,
00190   InteractionParameterNotKnown,
00191   FederateInternalError) = 0;
00192 
00193 // 6.9
00194 virtual void removeObjectInstance (
00195         ObjectHandle          theObject, // supplied C1
00196   const FedTime&              theTime,   // supplied C4
00197   const char                 *theTag,    // supplied C4
00198         EventRetractionHandle theHandle) // supplied C1
00199 throw (
00200   ObjectNotKnown,
00201   InvalidFederationTime,
00202   FederateInternalError) = 0;
00203 
00204 virtual void removeObjectInstance (
00205         ObjectHandle          theObject, // supplied C1
00206   const char                 *theTag)    // supplied C4
00207 throw (
00208   ObjectNotKnown,
00209   FederateInternalError) = 0;
00210 
00211 // 6.13
00212 virtual void attributesInScope (
00213         ObjectHandle        theObject,     // supplied C1
00214   const AttributeHandleSet& theAttributes) // supplied C4
00215 throw (
00216   ObjectNotKnown,
00217   AttributeNotKnown,
00218   FederateInternalError) = 0;
00219 
00220 // 6.14
00221 virtual void attributesOutOfScope (
00222         ObjectHandle        theObject,     // supplied C1
00223   const AttributeHandleSet& theAttributes) // supplied C4
00224 throw (
00225   ObjectNotKnown,
00226   AttributeNotKnown,
00227   FederateInternalError) = 0;
00228 
00229 // 6.16
00230 virtual void provideAttributeValueUpdate (
00231         ObjectHandle        theObject,     // supplied C1
00232   const AttributeHandleSet& theAttributes) // supplied C4
00233 throw (
00234   ObjectNotKnown,
00235   AttributeNotKnown,
00236   AttributeNotOwned,
00237   FederateInternalError) = 0;
00238 
00239 // 6.17
00240 virtual void turnUpdatesOnForObjectInstance (
00241         ObjectHandle        theObject,     // supplied C1
00242   const AttributeHandleSet& theAttributes) // supplied C4
00243 throw (
00244   ObjectNotKnown,
00245   AttributeNotOwned,
00246   FederateInternalError) = 0;
00247 
00248 // 6.18
00249 virtual void turnUpdatesOffForObjectInstance (
00250         ObjectHandle        theObject,      // supplied C1
00251   const AttributeHandleSet& theAttributes) // supplied C4
00252 throw (
00253   ObjectNotKnown,
00254   AttributeNotOwned,
00255   FederateInternalError) = 0;
00256 
00258 // Ownership Management Services //
00260 
00261 // 7.4
00262 virtual void requestAttributeOwnershipAssumption (
00263         ObjectHandle        theObject,         // supplied C1
00264   const AttributeHandleSet& offeredAttributes, // supplied C4
00265   const char               *theTag)            // supplied C4
00266 throw (
00267   ObjectNotKnown,
00268   AttributeNotKnown,
00269   AttributeAlreadyOwned,
00270   AttributeNotPublished,
00271   FederateInternalError) = 0;
00272 
00273 // 7.5
00274 virtual void attributeOwnershipDivestitureNotification (
00275         ObjectHandle        theObject,          // supplied C1
00276   const AttributeHandleSet& releasedAttributes) // supplied C4
00277 throw (
00278   ObjectNotKnown,
00279   AttributeNotKnown,
00280   AttributeNotOwned,
00281   AttributeDivestitureWasNotRequested,
00282   FederateInternalError) = 0;
00283 
00284 // 7.6
00285 virtual void attributeOwnershipAcquisitionNotification (
00286         ObjectHandle        theObject,         // supplied C1
00287   const AttributeHandleSet& securedAttributes) // supplied C4
00288 throw (
00289   ObjectNotKnown,
00290   AttributeNotKnown,
00291   AttributeAcquisitionWasNotRequested,
00292   AttributeAlreadyOwned,
00293   AttributeNotPublished,
00294   FederateInternalError) = 0;
00295 
00296 // 7.9
00297 virtual void attributeOwnershipUnavailable (
00298         ObjectHandle        theObject,         // supplied C1
00299   const AttributeHandleSet& theAttributes) // supplied C4
00300 throw (
00301   ObjectNotKnown,
00302   AttributeNotKnown,
00303   AttributeNotDefined,
00304   AttributeAlreadyOwned,
00305   AttributeAcquisitionWasNotRequested,
00306   FederateInternalError) = 0;
00307 
00308 // 7.10
00309 virtual void requestAttributeOwnershipRelease (
00310         ObjectHandle        theObject,           // supplied C1
00311   const AttributeHandleSet& candidateAttributes, // supplied C4
00312   const char               *theTag)              // supplied C4
00313 throw (
00314   ObjectNotKnown,
00315   AttributeNotKnown,
00316   AttributeNotOwned,
00317   FederateInternalError) = 0;
00318 
00319 // 7.14
00320 virtual void confirmAttributeOwnershipAcquisitionCancellation (
00321         ObjectHandle        theObject,         // supplied C1
00322   const AttributeHandleSet& theAttributes) // supplied C4
00323 throw (
00324   ObjectNotKnown,
00325   AttributeNotKnown,
00326   AttributeNotDefined,
00327   AttributeAlreadyOwned,
00328   AttributeAcquisitionWasNotCanceled,
00329   FederateInternalError) = 0;
00330 
00331 // 7.16
00332 virtual void informAttributeOwnership (
00333   ObjectHandle    theObject,    // supplied C1
00334   AttributeHandle theAttribute, // supplied C1
00335   FederateHandle  theOwner)     // supplied C1
00336 throw (
00337   ObjectNotKnown,
00338   AttributeNotKnown,
00339   FederateInternalError) = 0;
00340 
00341 virtual void attributeIsNotOwned (
00342   ObjectHandle    theObject,    // supplied C1
00343   AttributeHandle theAttribute) // supplied C1
00344 throw (
00345   ObjectNotKnown,
00346   AttributeNotKnown,
00347   FederateInternalError) = 0;
00348 
00349 virtual void attributeOwnedByRTI (
00350   ObjectHandle    theObject,    // supplied C1
00351   AttributeHandle theAttribute) // supplied C1
00352 throw (
00353   ObjectNotKnown,
00354   AttributeNotKnown,
00355   FederateInternalError) = 0;
00356 
00358 // Time Management Services //
00360 
00361 // 8.3
00362 virtual void timeRegulationEnabled (
00363  const  FedTime& theFederateTime) // supplied C4
00364 throw (
00365   InvalidFederationTime,
00366   EnableTimeRegulationWasNotPending,
00367   FederateInternalError) = 0;
00368 
00369 // 8.6
00370 virtual void timeConstrainedEnabled (
00371   const FedTime& theFederateTime) // supplied C4
00372 throw (
00373   InvalidFederationTime,
00374   EnableTimeConstrainedWasNotPending,
00375   FederateInternalError) = 0;
00376 
00377 // 8.13
00378 virtual void timeAdvanceGrant (
00379   const FedTime& theTime) // supplied C4
00380 throw (
00381   InvalidFederationTime,
00382   TimeAdvanceWasNotInProgress,
00383   FederationTimeAlreadyPassed,
00384   FederateInternalError) = 0;
00385 
00386 // 8.22
00387 virtual void requestRetraction (
00388   EventRetractionHandle theHandle) // supplied C1
00389 throw (
00390   EventNotKnown,
00391   FederateInternalError) = 0;
00392 
00393 
00394 virtual ~FederateAmbassador()
00395 throw (FederateInternalError) { ; }

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)