VR-Link API Documentation for DIS
vrlRtiAmb13.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00009 
00010 #if DtHLA 
00011 #if !DtHLA_1516
00012 
00013 #ifndef DtVrlRtiAmbassador_H_
00014 #define DtVrlRtiAmbassador_H_
00015  
00016 
00017 #include <RTI.hh>
00018 
00019 #include <vlutil/vlMachineTypes.h>
00020 
00024 class DT_DLL_VL DtVrlRtiAmbassador
00025 {
00026 public:
00027 
00029    DtVrlRtiAmbassador();
00030 
00032    virtual ~DtVrlRtiAmbassador();
00033 
00034 private:
00036    DtVrlRtiAmbassador(const DtVrlRtiAmbassador& orig);
00037 
00039    DtVrlRtiAmbassador& operator=(const DtVrlRtiAmbassador& orig);
00040 
00041 public:
00042 
00045    virtual RTI::RTIambassador* rtiAmb();
00046 
00047    virtual void createFederationExecution (
00048       const char *executionName,
00049       const char *FED) = 0;
00050 
00051    virtual void destroyFederationExecution (
00052       const char *executionName) = 0;
00053 
00054    virtual RTI::FederateHandle joinFederationExecution (
00055       const char* yourName, 
00056       const char* executionName, 
00057       RTI::FederateAmbassadorPtr federateAmbassadorReference) = 0;
00058 
00059    virtual void resignFederationExecution(
00060       RTI::ResignAction theAction) = 0;
00061 
00062    virtual void registerFederationSynchronizationPoint(
00063       const char* label,
00064       const char* theTag) = 0;
00065 
00066    virtual void registerFederationSynchronizationPoint(       
00067       const char* label,
00068       const char* theTag,
00069       const RTI::FederateHandleSet& syncSet) = 0;
00070 
00071    virtual void synchronizationPointAchieved(
00072        const char* label) = 0;
00073 
00074    virtual void requestFederationSave (    
00075       const char* label,
00076       const RTI::FedTime& theTime) = 0;
00077 
00078    virtual void requestFederationSave ( 
00079       const char *label) = 0;
00080 
00081    virtual void federateSaveBegun() = 0;
00082 
00083    virtual void federateSaveComplete() = 0;
00084 
00085    virtual void federateSaveNotComplete() = 0;
00086 
00087    virtual void requestFederationRestore(const char* label) = 0;
00088 
00089    virtual void federateRestoreComplete() = 0;
00090 
00091    virtual void federateRestoreNotComplete() = 0;
00092 
00093    virtual void publishObjectClass(
00094       RTI::ObjectClassHandle theClass, 
00095       const RTI::AttributeHandleSet& attributeList) = 0;
00096 
00097    virtual void unpublishObjectClass(
00098       RTI::ObjectClassHandle theClass) = 0;
00099 
00100    virtual void publishInteractionClass(
00101       RTI::InteractionClassHandle theInteraction) = 0;
00102 
00103    virtual void unpublishInteractionClass(
00104       RTI::InteractionClassHandle theInteraction) = 0;
00105 
00106    virtual void subscribeObjectClassAttributes(
00107       RTI::ObjectClassHandle theClass, 
00108       const RTI::AttributeHandleSet& attributeList,
00109       RTI::Boolean active = RTI::RTI_TRUE) = 0;
00110 
00111    virtual void unsubscribeObjectClass(
00112       RTI::ObjectClassHandle theClass) = 0;
00113 
00114    virtual void subscribeInteractionClass(
00115     RTI::InteractionClassHandle theClass,
00116     RTI::Boolean active = RTI::RTI_TRUE) = 0;
00117 
00118    virtual void unsubscribeInteractionClass(
00119       RTI::InteractionClassHandle theClass) = 0;
00120 
00121    virtual RTI::ObjectHandle registerObjectInstance(
00122       RTI::ObjectClassHandle theClass, const char* theObject) = 0;
00123 
00124    virtual RTI::ObjectHandle registerObjectInstance(
00125       RTI::ObjectClassHandle theClass) = 0;
00126 
00127    virtual RTI::EventRetractionHandle updateAttributeValues(
00128       RTI::ObjectHandle theObject, 
00129       const RTI::AttributeHandleValuePairSet& theAttributes, 
00130       const RTI::FedTime& theTime,
00131       const char* theTag) = 0;
00132 
00133    virtual void updateAttributeValues(
00134       RTI::ObjectHandle theObject, 
00135       const RTI::AttributeHandleValuePairSet& theAttributes, 
00136       const char* theTag) = 0;
00137 
00138    virtual RTI::EventRetractionHandle sendInteraction(
00139       RTI::InteractionClassHandle theInteraction,
00140       const RTI::ParameterHandleValuePairSet& theParameters, 
00141       const RTI::FedTime& theTime,
00142       const char* theTag) = 0;
00143 
00144    virtual void sendInteraction(
00145       RTI::InteractionClassHandle theInteraction,
00146       const RTI::ParameterHandleValuePairSet& theParameters, 
00147       const char* theTag) = 0;
00148 
00149    virtual RTI::EventRetractionHandle deleteObjectInstance(
00150       RTI::ObjectHandle theObject, 
00151       const RTI::FedTime& theTime, 
00152       const char* theTag) = 0;
00153 
00154    virtual void deleteObjectInstance(
00155       RTI::ObjectHandle theObject, 
00156       const char* theTag) = 0;
00157 
00158    virtual void localDeleteObjectInstance(
00159       RTI::ObjectHandle theObject) = 0;
00160 
00161    virtual void changeAttributeTransportationType (
00162       RTI::ObjectHandle theObject,
00163       const RTI::AttributeHandleSet& theAttributes,
00164       RTI::TransportationHandle theType) = 0;
00165 
00166    virtual void changeInteractionTransportationType (
00167       RTI::InteractionClassHandle theClass, 
00168       RTI::TransportationHandle theType) = 0;
00169 
00170    virtual void requestObjectAttributeValueUpdate (
00171       RTI::ObjectHandle theObject, 
00172       const RTI::AttributeHandleSet& theAttributes) = 0;
00173 
00174    virtual void requestClassAttributeValueUpdate (
00175       RTI::ObjectClassHandle theClass, 
00176       const RTI::AttributeHandleSet& theAttributes) = 0;
00177 
00178    virtual void unconditionalAttributeOwnershipDivestiture(
00179       RTI::ObjectHandle theObject, 
00180       const RTI::AttributeHandleSet& theAttributes) = 0;   
00181 
00182    virtual void negotiatedAttributeOwnershipDivestiture(
00183       RTI::ObjectHandle theObject, 
00184       const RTI::AttributeHandleSet& theAttributes,
00185       const char* theTag) = 0;
00186 
00187    virtual void attributeOwnershipAcquisition(
00188       RTI::ObjectHandle theObject, 
00189       const RTI::AttributeHandleSet& desiredAttributes,
00190       const char* theTag) = 0;
00191 
00192    virtual void attributeOwnershipAcquisitionIfAvailable(
00193       RTI::ObjectHandle theObject,
00194       const RTI::AttributeHandleSet& desiredAttributes) = 0;
00195 
00196    virtual RTI::AttributeHandleSet* attributeOwnershipReleaseResponse(
00197       RTI::ObjectHandle theObject,
00198       const RTI::AttributeHandleSet& theAttributes) = 0;
00199 
00200    virtual void cancelNegotiatedAttributeOwnershipDivestiture(
00201       RTI::ObjectHandle theObject,
00202       const RTI::AttributeHandleSet& theAttributes) = 0;
00203 
00204    virtual void cancelAttributeOwnershipAcquisition(
00205       RTI::ObjectHandle theObject,
00206       const RTI::AttributeHandleSet& theAttributes) = 0;
00207 
00208    virtual void queryAttributeOwnership(
00209       RTI::ObjectHandle theObject, 
00210       RTI::AttributeHandle theAttribute) = 0;
00211 
00212    virtual RTI::Boolean isAttributeOwnedByFederate(
00213       RTI::ObjectHandle theObject, 
00214       RTI::AttributeHandle theAttribute) = 0;
00215 
00216    virtual void enableTimeRegulation (
00217       const RTI::FedTime& theFederateTime,
00218       const RTI::FedTime& theLookahead) = 0;
00219 
00220    virtual void disableTimeRegulation() = 0;
00221 
00222    virtual void enableTimeConstrained() = 0;
00223 
00224    virtual void disableTimeConstrained() = 0;
00225 
00226    virtual void timeAdvanceRequest(
00227       const RTI::FedTime& theTime) = 0;
00228 
00229    virtual void timeAdvanceRequestAvailable (
00230       const RTI::FedTime& theTime) = 0;
00231 
00232    virtual void nextEventRequest(
00233      const RTI::FedTime& theTime) = 0;
00234 
00235    virtual void nextEventRequestAvailable (
00236       const RTI::FedTime& theTime) = 0;
00237 
00238    virtual void flushQueueRequest (
00239       const RTI::FedTime& theTime) = 0;
00240 
00241    virtual void enableAsynchronousDelivery() = 0;
00242 
00243    virtual void disableAsynchronousDelivery() = 0;
00244 
00245    virtual void queryLBTS(RTI::FedTime& theTime) = 0;
00246 
00247    virtual void queryFederateTime(RTI::FedTime& theTime) = 0;
00248 
00249    virtual void queryMinNextEventTime (
00250       RTI::FedTime& theTime) = 0;
00251 
00252    virtual void modifyLookahead (
00253       const RTI::FedTime& theLookahead) = 0;
00254 
00255    virtual void queryLookahead (
00256       RTI::FedTime& theTime) = 0;
00257 
00258    virtual void retract(
00259      RTI::EventRetractionHandle theHandle) = 0;
00260 
00261    virtual void changeAttributeOrderType(
00262      RTI::ObjectHandle theObject,
00263      const RTI::AttributeHandleSet& theAttributes,
00264      RTI::OrderingHandle theType) = 0;
00265 
00266    virtual void changeInteractionOrderType(
00267       RTI::InteractionClassHandle theClass,
00268       RTI::OrderingHandle theType) = 0;
00269 
00270    virtual RTI::Region* createRegion (
00271       RTI::SpaceHandle theSpace,
00272       RTI::ULong numberOfExtents) = 0;
00273 
00274    virtual void notifyAboutRegionModification (
00275      RTI::Region &theRegion) = 0;
00276 
00277    virtual void deleteRegion(RTI::Region *theRegion) = 0;
00278 
00279    virtual RTI::ObjectHandle registerObjectInstanceWithRegion(
00280       RTI::ObjectClassHandle theClass,
00281       const char* theObject,
00282       RTI::AttributeHandle theAttributes[],
00283       RTI::Region* theRegions[],
00284       RTI::ULong theNumberOfHandles) = 0;
00285 
00286    virtual RTI::ObjectHandle registerObjectInstanceWithRegion(
00287       RTI::ObjectClassHandle theClass,
00288       RTI::AttributeHandle theAttributes[],
00289       RTI::Region* theRegions[],
00290       RTI::ULong theNumberOfHandles) = 0;
00291 
00292    virtual void associateRegionForUpdates (
00293       RTI::Region& theRegion,
00294       RTI::ObjectHandle theObject,
00295       const RTI::AttributeHandleSet& theAttributes) = 0;
00296 
00297    virtual void unassociateRegionForUpdates(
00298       RTI::Region& theRegion,
00299       RTI::ObjectHandle theObject) = 0;
00300 
00301    virtual void subscribeObjectClassAttributesWithRegion(
00302       RTI::ObjectClassHandle theClass,
00303       RTI::Region& theRegion,
00304       const RTI::AttributeHandleSet &attributeList,
00305       RTI::Boolean active = RTI::RTI_TRUE) = 0;
00306 
00307    virtual void unsubscribeObjectClassWithRegion(
00308       RTI::ObjectClassHandle theClass,
00309       RTI::Region& theRegion) = 0;
00310 
00311    virtual void subscribeInteractionClassWithRegion (
00312       RTI::InteractionClassHandle theClass,
00313       RTI::Region& theRegion,
00314       RTI::Boolean active = RTI::RTI_TRUE) = 0;
00315 
00316    virtual void unsubscribeInteractionClassWithRegion (
00317       RTI::InteractionClassHandle theClass,
00318       RTI::Region& theRegion) = 0;
00319   
00320    virtual RTI::EventRetractionHandle sendInteractionWithRegion(
00321       RTI::InteractionClassHandle theInteraction,
00322       const RTI::ParameterHandleValuePairSet &theParameters,
00323       const RTI::FedTime& theTime,
00324       const char* theTag,
00325       const RTI::Region& theRegion) = 0;
00326 
00327    virtual void sendInteractionWithRegion(
00328       RTI::InteractionClassHandle theInteraction,
00329       const RTI::ParameterHandleValuePairSet &theParameters,
00330       const char* theTag,
00331       const RTI::Region& theRegion) = 0;
00332 
00333    virtual void requestClassAttributeValueUpdateWithRegion(
00334       RTI::ObjectClassHandle theClass,
00335       const RTI::AttributeHandleSet& theAttributes,
00336       const RTI::Region& theRegion) = 0;
00337 
00338    virtual RTI::ObjectClassHandle getObjectClassHandle (
00339       const char* theName) = 0;
00340 
00341    virtual char* getObjectClassName (
00342       RTI::ObjectClassHandle theHandle) = 0;
00343 
00344    virtual RTI::AttributeHandle getAttributeHandle (
00345       const char* theName, 
00346       RTI::ObjectClassHandle whichClass) = 0; 
00347 
00348    virtual char* getAttributeName (
00349       RTI::AttributeHandle theHandle, 
00350       RTI::ObjectClassHandle whichClass) = 0;
00351 
00352    virtual RTI::InteractionClassHandle getInteractionClassHandle (
00353       const char* theName) = 0;
00354 
00355    virtual char* getInteractionClassName (
00356       RTI::InteractionClassHandle theHandle) = 0;
00357 
00358    virtual RTI::ParameterHandle getParameterHandle (
00359       const char* theName, 
00360       RTI::InteractionClassHandle whichClass) = 0;
00361 
00362    virtual char* getParameterName (
00363       RTI::ParameterHandle theHandle, 
00364       RTI::InteractionClassHandle whichClass) = 0;
00365 
00366    virtual RTI::ObjectHandle getObjectInstanceHandle(
00367       const char* theName) = 0;
00368 
00369    virtual char* getObjectInstanceName(
00370       RTI::ObjectHandle theHandle) = 0;
00371 
00372    virtual RTI::SpaceHandle getRoutingSpaceHandle (
00373       const char* theName) = 0;
00374 
00375    virtual const char* getRoutingSpaceName (
00376       const RTI::SpaceHandle theHandle) = 0;
00377 
00378    virtual RTI::DimensionHandle getDimensionHandle(
00379       const char* theName,
00380       RTI::SpaceHandle whichSpace) = 0;
00381 
00382    virtual char* getDimensionName(
00383       RTI::DimensionHandle theHandle,
00384       RTI::SpaceHandle whichSpace) = 0;
00385 
00386    virtual RTI::SpaceHandle
00387       getAttributeRoutingSpaceHandle(
00388          RTI::AttributeHandle theHandle,
00389          RTI::ObjectClassHandle whichClass) = 0;
00390 
00391    virtual RTI::ObjectClassHandle getObjectClass (
00392       RTI::ObjectHandle theObject) = 0;
00393 
00394    virtual RTI::SpaceHandle getInteractionRoutingSpaceHandle(
00395       RTI::InteractionClassHandle theHandle) = 0;
00396 
00397    virtual RTI::TransportationHandle getTransportationHandle(
00398       const char *theName) = 0;
00399 
00400    virtual char* getTransportationName(
00401       RTI::TransportationHandle theHandle) = 0;
00402 
00403    virtual RTI::OrderingHandle getOrderingHandle(
00404       const char *theName) = 0;
00405 
00406    virtual char* getOrderingName(
00407       RTI::OrderingHandle theHandle) = 0;
00408 
00409    virtual void enableClassRelevanceAdvisorySwitch() = 0;
00410 
00411    virtual void disableClassRelevanceAdvisorySwitch() = 0;
00412 
00413    virtual void enableAttributeRelevanceAdvisorySwitch() = 0;
00414 
00415    virtual void disableAttributeRelevanceAdvisorySwitch() = 0;
00416 
00417    virtual void enableAttributeScopeAdvisorySwitch() = 0;
00418 
00419    virtual void disableAttributeScopeAdvisorySwitch() = 0;
00420 
00421    virtual void enableInteractionRelevanceAdvisorySwitch() = 0;
00422 
00423    virtual void disableInteractionRelevanceAdvisorySwitch() = 0;
00424 
00425    virtual RTI::Boolean tick() = 0;
00426 
00427    virtual RTI::Boolean tick(
00428       RTI::TickTime minimum, 
00429       RTI::TickTime maximum) = 0;
00430 
00431    virtual RTI::RegionToken getRegionToken(RTI::Region*) = 0;
00432 
00433    virtual RTI::Region* getRegion(RTI::RegionToken) = 0;
00434 };
00435 
00436 #endif //! DtVrlRtiAmbassador_H_
00437 #endif
00438 #endif //! HLA
00439 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)