![]() |
VR-Link API Documentation for HLA 1516
|
00001 /******************************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 00006 00011 00012 #if DtHLA 00013 #if !DtHLA_1516 00014 00017 00018 #ifndef DtNullFederateAmbassador_H_ 00019 #define DtNullFederateAmbassador_H_ 00020 00021 #include "rtiNamespace.h" 00022 #include <vlutil/vlMachineTypes.h> 00023 00024 00025 class DT_DLL_VL DtNullFederateAmbassador : public RTI::FederateAmbassador 00026 { 00027 public: 00029 DtNullFederateAmbassador(); 00031 virtual ~DtNullFederateAmbassador() 00032 throw( RTI::FederateInternalError ); 00033 00034 protected: 00036 DtNullFederateAmbassador( const DtNullFederateAmbassador& src ); 00038 DtNullFederateAmbassador& operator=( const DtNullFederateAmbassador& src ); 00039 00043 public: 00044 virtual void synchronizationPointRegistrationSucceeded( 00045 const char* label ) 00046 throw( RTI::FederateInternalError ); 00047 00048 virtual void synchronizationPointRegistrationFailed( 00049 const char* label ) 00050 throw( RTI::FederateInternalError ); 00051 00052 virtual void announceSynchronizationPoint( 00053 const char* label, 00054 const char* tag ) 00055 throw( RTI::FederateInternalError ); 00056 00057 virtual void federationSynchronized( 00058 const char* label ) 00059 throw( RTI::FederateInternalError ); 00060 00061 virtual void initiateFederateSave( 00062 const char* label ) 00063 throw( RTI::UnableToPerformSave, 00064 RTI::FederateInternalError ); 00065 00066 virtual void federationSaved() 00067 throw( RTI::FederateInternalError); 00068 00069 virtual void federationNotSaved() 00070 throw( RTI::FederateInternalError ); 00071 00072 virtual void requestFederationRestoreSucceeded( 00073 const char* label ) 00074 throw( RTI::FederateInternalError ); 00075 00076 virtual void requestFederationRestoreFailed( 00077 const char* label, 00078 const char* reason ) 00079 throw( RTI::FederateInternalError); 00080 00081 virtual void federationRestoreBegun() 00082 throw( RTI::FederateInternalError ); 00083 00084 virtual void initiateFederateRestore ( 00085 const char* label, 00086 RTI::FederateHandle handle ) 00087 throw( RTI::SpecifiedSaveLabelDoesNotExist, 00088 RTI::CouldNotRestore, 00089 RTI::FederateInternalError ); 00090 00091 virtual void federationRestored() 00092 throw( RTI::FederateInternalError); 00093 00094 virtual void federationNotRestored() 00095 throw( RTI::FederateInternalError ); 00096 00100 public: 00101 virtual void startRegistrationForObjectClass( 00102 RTI::ObjectClassHandle theClass ) 00103 throw( RTI::ObjectClassNotPublished, 00104 RTI::FederateInternalError ); 00105 00106 virtual void stopRegistrationForObjectClass( 00107 RTI::ObjectClassHandle theClass ) 00108 throw( RTI::ObjectClassNotPublished, 00109 RTI::FederateInternalError ); 00110 00111 virtual void turnInteractionsOn ( 00112 RTI::InteractionClassHandle theHandle ) 00113 throw( RTI::InteractionClassNotPublished, 00114 RTI::FederateInternalError ); 00115 00116 virtual void turnInteractionsOff ( 00117 RTI::InteractionClassHandle theHandle ) 00118 throw( RTI::InteractionClassNotPublished, 00119 RTI::FederateInternalError ); 00120 00124 public: 00125 virtual void discoverObjectInstance( 00126 RTI::ObjectHandle theObject, 00127 RTI::ObjectClassHandle theObjectClass, 00128 const char* theObjectName ) 00129 throw( RTI::CouldNotDiscover, 00130 RTI::ObjectClassNotKnown, 00131 RTI::FederateInternalError ); 00132 00133 virtual void reflectAttributeValues( 00134 RTI::ObjectHandle theObject, 00135 const RTI::AttributeHandleValuePairSet& theAttributes, 00136 const RTI::FedTime& theTime, 00137 const char* theTag, 00138 RTI::EventRetractionHandle theHandle ) 00139 throw( RTI::ObjectNotKnown, 00140 RTI::AttributeNotKnown, 00141 RTI::FederateOwnsAttributes, 00142 RTI::InvalidFederationTime, 00143 RTI::FederateInternalError ); 00144 00145 virtual void reflectAttributeValues( 00146 RTI::ObjectHandle theObject, 00147 const RTI::AttributeHandleValuePairSet& theAttributes, 00148 const char* theTag ) 00149 throw( RTI::ObjectNotKnown, 00150 RTI::AttributeNotKnown, 00151 RTI::FederateOwnsAttributes, 00152 RTI::FederateInternalError ); 00153 00155 public: 00156 virtual void receiveInteraction( 00157 RTI::InteractionClassHandle theInteraction, 00158 const RTI::ParameterHandleValuePairSet& theParameters, 00159 const RTI::FedTime& theTime, 00160 const char* theTag, 00161 RTI::EventRetractionHandle theHandle ) 00162 throw( RTI::InteractionClassNotKnown, 00163 RTI::InteractionParameterNotKnown, 00164 RTI::InvalidFederationTime, 00165 RTI::FederateInternalError ); 00166 00167 virtual void receiveInteraction( 00168 RTI::InteractionClassHandle theInteraction, 00169 const RTI::ParameterHandleValuePairSet& theParameters, 00170 const char* theTag ) 00171 throw( RTI::InteractionClassNotKnown, 00172 RTI::InteractionParameterNotKnown, 00173 RTI::FederateInternalError ); 00174 00175 virtual void removeObjectInstance( 00176 RTI::ObjectHandle theObject, 00177 const RTI::FedTime& theTime, 00178 const char* theTag, 00179 RTI::EventRetractionHandle theHandle ) 00180 throw( RTI::ObjectNotKnown, 00181 RTI::InvalidFederationTime, 00182 RTI::FederateInternalError ); 00183 00184 virtual void removeObjectInstance( 00185 RTI::ObjectHandle theObject, 00186 const char* theTag ) 00187 throw( RTI::ObjectNotKnown, 00188 RTI::FederateInternalError ); 00189 00190 virtual void attributesInScope( 00191 RTI::ObjectHandle theObject, 00192 const RTI::AttributeHandleSet& theAttributes ) 00193 throw( RTI::ObjectNotKnown, 00194 RTI::AttributeNotKnown, 00195 RTI::FederateInternalError ); 00196 00197 virtual void attributesOutOfScope( 00198 RTI::ObjectHandle theObject, 00199 const RTI::AttributeHandleSet& theAttributes ) 00200 throw( RTI::ObjectNotKnown, 00201 RTI::AttributeNotKnown, 00202 RTI::FederateInternalError ); 00203 00204 virtual void provideAttributeValueUpdate( 00205 RTI::ObjectHandle theObject, 00206 const RTI::AttributeHandleSet& theAttributes ) 00207 throw( RTI::ObjectNotKnown, 00208 RTI::AttributeNotKnown, 00209 RTI::AttributeNotOwned, 00210 RTI::FederateInternalError ); 00211 00212 virtual void turnUpdatesOnForObjectInstance( 00213 RTI::ObjectHandle theObject, 00214 const RTI::AttributeHandleSet& theAttributes ) 00215 throw( RTI::ObjectNotKnown, 00216 RTI::AttributeNotOwned, 00217 RTI::FederateInternalError ); 00218 00219 virtual void turnUpdatesOffForObjectInstance( 00220 RTI::ObjectHandle theObject, 00221 const RTI::AttributeHandleSet& theAttributes ) 00222 throw( RTI::ObjectNotKnown, 00223 RTI::AttributeNotOwned, 00224 RTI::FederateInternalError ); 00225 00229 public: 00230 virtual void requestAttributeOwnershipAssumption( 00231 RTI::ObjectHandle theObject, 00232 const RTI::AttributeHandleSet& offeredAttributes, 00233 const char* theTag ) 00234 throw( RTI::ObjectNotKnown, 00235 RTI::AttributeNotKnown, 00236 RTI::AttributeAlreadyOwned, 00237 RTI::AttributeNotPublished, 00238 RTI::FederateInternalError ); 00239 00240 virtual void attributeOwnershipDivestitureNotification( 00241 RTI::ObjectHandle theObject, 00242 const RTI::AttributeHandleSet& releasedAttributes ) 00243 throw( RTI::ObjectNotKnown, 00244 RTI::AttributeNotKnown, 00245 RTI::AttributeNotOwned, 00246 RTI::AttributeDivestitureWasNotRequested, 00247 RTI::FederateInternalError ); 00248 00249 virtual void attributeOwnershipAcquisitionNotification( 00250 RTI::ObjectHandle theObject, 00251 const RTI::AttributeHandleSet& securedAttributes ) 00252 throw( RTI::ObjectNotKnown, 00253 RTI::AttributeNotKnown, 00254 RTI::AttributeAcquisitionWasNotRequested, 00255 RTI::AttributeAlreadyOwned, 00256 RTI::AttributeNotPublished, 00257 RTI::FederateInternalError ); 00258 00259 virtual void attributeOwnershipUnavailable( 00260 RTI::ObjectHandle theObject, 00261 const RTI::AttributeHandleSet& theAttributes ) 00262 throw( RTI::ObjectNotKnown, 00263 RTI::AttributeNotKnown, 00264 RTI::AttributeAlreadyOwned, 00265 RTI::AttributeAcquisitionWasNotRequested, 00266 RTI::FederateInternalError ); 00267 00268 virtual void requestAttributeOwnershipRelease( 00269 RTI::ObjectHandle theObject, 00270 const RTI::AttributeHandleSet& candidateAttributes, 00271 const char* theTag ) 00272 throw( RTI::ObjectNotKnown, 00273 RTI::AttributeNotKnown, 00274 RTI::AttributeNotOwned, 00275 RTI::FederateInternalError ); 00276 00277 virtual void confirmAttributeOwnershipAcquisitionCancellation( 00278 RTI::ObjectHandle theObject, 00279 const RTI::AttributeHandleSet& theAttributes ) 00280 throw( RTI::ObjectNotKnown, 00281 RTI::AttributeNotKnown, 00282 RTI::AttributeAlreadyOwned, 00283 RTI::AttributeAcquisitionWasNotCanceled, 00284 RTI::FederateInternalError ); 00285 00286 virtual void informAttributeOwnership( 00287 RTI::ObjectHandle theObject, 00288 RTI::AttributeHandle theAttribute, 00289 RTI::FederateHandle theOwner ) 00290 throw( RTI::ObjectNotKnown, 00291 RTI::AttributeNotKnown, 00292 RTI::FederateInternalError ); 00293 00294 virtual void attributeIsNotOwned( 00295 RTI::ObjectHandle theObject, 00296 RTI::AttributeHandle theAttribute ) 00297 throw( RTI::ObjectNotKnown, 00298 RTI::AttributeNotKnown, 00299 RTI::FederateInternalError ); 00300 00301 virtual void attributeOwnedByRTI( 00302 RTI::ObjectHandle theObject, 00303 RTI::AttributeHandle theAttribute ) 00304 throw( RTI::ObjectNotKnown, 00305 RTI::AttributeNotKnown, 00306 RTI::FederateInternalError ); 00307 00311 public: 00312 virtual void timeRegulationEnabled( 00313 const RTI::FedTime& theTime ) 00314 throw( RTI::InvalidFederationTime, 00315 RTI::EnableTimeRegulationWasNotPending, 00316 RTI::FederateInternalError ); 00317 00318 virtual void timeConstrainedEnabled( 00319 const RTI::FedTime& theTime ) 00320 throw( RTI::InvalidFederationTime, 00321 RTI::EnableTimeConstrainedWasNotPending, 00322 RTI::FederateInternalError ); 00323 00324 virtual void timeAdvanceGrant( 00325 const RTI::FedTime& theTime ) 00326 throw( RTI::InvalidFederationTime, 00327 RTI::TimeAdvanceWasNotInProgress, 00328 RTI::FederateInternalError ); 00329 00330 virtual void requestRetraction( 00331 RTI::EventRetractionHandle theHandle ) 00332 throw( RTI::EventNotKnown, 00333 RTI::FederateInternalError ); 00334 }; 00335 00336 #endif //! DtNullFederateAmbassador_H_ 00337 #endif //! DtHLA 00338 #endif //! !DtHLA_1516 00339