![]() |
MAK RTIspy API Documentation for HLA 1.3
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2004 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: rtiSimpleFedAmb1516.h,v $ $Revision: 1.2 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00009 #ifndef HlaBounceFederateAmbassador_H_ 00010 #define HlaBounceFederateAmbassador_H_ 00011 00012 #pragma warning(disable: 4251) 00013 #pragma warning(disable: 4786) 00014 #pragma warning(disable: 4290) 00015 00016 #include <RTI.hh> 00017 #include <NullFederateAmbassador.hh> 00018 #include <string> 00019 #include <map> 00020 00021 class BallController13; 00022 00023 class HlaBounceFederateAmbassador : public NullFederateAmbassador 00024 { 00025 public: 00026 00027 HlaBounceFederateAmbassador(BallController13* ballController); 00028 00029 virtual ~HlaBounceFederateAmbassador() 00030 throw (); 00031 00032 virtual void discoverObjectInstance( 00033 RTI::ObjectHandle theObject, 00034 RTI::ObjectClassHandle theObjectClass, 00035 const char* theObjectName) 00036 throw (RTI::CouldNotDiscover, 00037 RTI::ObjectClassNotKnown, 00038 RTI::FederateInternalError); 00039 00040 virtual void reflectAttributeValues( 00041 RTI::ObjectHandle theObject, 00042 const RTI::AttributeHandleValuePairSet& theAttributes, 00043 const RTI::FedTime& theTime, 00044 const char *theTag, 00045 RTI::EventRetractionHandle theHandle) 00046 throw (RTI::ObjectNotKnown, 00047 RTI::AttributeNotKnown, 00048 RTI::FederateOwnsAttributes, 00049 RTI::InvalidFederationTime, 00050 RTI::FederateInternalError); 00051 00052 virtual void reflectAttributeValues( 00053 RTI::ObjectHandle theObject, 00054 const RTI::AttributeHandleValuePairSet& theAttributes, 00055 const char *theTag) 00056 throw (RTI::ObjectNotKnown, 00057 RTI::AttributeNotKnown, 00058 RTI::FederateOwnsAttributes, 00059 RTI::FederateInternalError); 00060 00061 virtual void receiveInteraction ( 00062 RTI::InteractionClassHandle theInteraction, 00063 const RTI::ParameterHandleValuePairSet& theParameters, 00064 const RTI::FedTime& theTime, 00065 const char *theTag, 00066 RTI::EventRetractionHandle theHandle) 00067 throw (RTI::InteractionClassNotKnown, 00068 RTI::InteractionParameterNotKnown, 00069 RTI::InvalidFederationTime, 00070 RTI::FederateInternalError); 00071 00072 virtual void receiveInteraction ( 00073 RTI::InteractionClassHandle theInteraction, 00074 const RTI::ParameterHandleValuePairSet& theParameters, 00075 const char *theTag) 00076 throw (RTI::InteractionClassNotKnown, 00077 RTI::InteractionParameterNotKnown, 00078 RTI::FederateInternalError); 00079 00080 virtual void removeObjectInstance ( 00081 RTI::ObjectHandle theObject, 00082 const RTI::FedTime& theTime, 00083 const char *theTag, 00084 RTI::EventRetractionHandle theHandle) 00085 throw (RTI::ObjectNotKnown, 00086 RTI::InvalidFederationTime, 00087 RTI::FederateInternalError); 00088 00089 virtual void removeObjectInstance ( 00090 RTI::ObjectHandle theObject, 00091 const char *theTag) 00092 throw (RTI::ObjectNotKnown, 00093 RTI::FederateInternalError); 00094 00095 virtual void attributesInScope( 00096 RTI::ObjectHandle theObject, 00097 const RTI::AttributeHandleSet& theAttributes) 00098 throw (RTI::ObjectNotKnown, 00099 RTI::AttributeNotKnown, 00100 RTI::FederateInternalError); 00101 00102 virtual void attributesOutOfScope( 00103 RTI::ObjectHandle theObject, 00104 const RTI::AttributeHandleSet& theAttributes) 00105 throw (RTI::ObjectNotKnown, 00106 RTI::AttributeNotKnown, 00107 RTI::FederateInternalError); 00108 00109 virtual void requestAttributeOwnershipRelease( 00110 RTI::ObjectHandle theObject, 00111 const RTI::AttributeHandleSet& candidateAttributes, 00112 const char* theTag) 00113 throw (RTI::ObjectNotKnown, 00114 RTI::AttributeNotKnown, 00115 RTI::AttributeNotOwned, 00116 RTI::FederateInternalError); 00117 00118 virtual void attributeOwnershipAcquisitionNotification( 00119 RTI::ObjectHandle theObject, 00120 RTI::AttributeHandleSet const & securedAttributes) 00121 throw (RTI::ObjectNotKnown, 00122 RTI::AttributeNotKnown, 00123 RTI::AttributeAcquisitionWasNotRequested, 00124 RTI::AttributeAlreadyOwned, 00125 RTI::AttributeNotPublished, 00126 RTI::FederateInternalError); 00127 00128 virtual void requestAttributeOwnershipAssumption( 00129 RTI::ObjectHandle theObject, 00130 const RTI::AttributeHandleSet& offeredAttributes, 00131 const char* theTag) 00132 throw (RTI::ObjectNotKnown, 00133 RTI::AttributeNotKnown, 00134 RTI::AttributeAlreadyOwned, 00135 RTI::AttributeNotPublished, 00136 RTI::FederateInternalError); 00137 00138 virtual void attributeOwnershipDivestitureNotification ( 00139 RTI::ObjectHandle theObject, 00140 const RTI::AttributeHandleSet& releasedAttributes) 00141 throw (RTI::ObjectNotKnown, 00142 RTI::AttributeNotKnown, 00143 RTI::AttributeNotOwned, 00144 RTI::AttributeDivestitureWasNotRequested, 00145 RTI::FederateInternalError); 00146 00147 protected: 00148 00149 BallController13* myBallController; 00150 00151 }; 00152 00153 #endif