X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fhla%2FRTI13Ambassador.hxx;h=85779fa7a037bbc321491341c43515fed5706114;hb=d6361dfee43c0595a19d409b438c6d1cdd65d2ea;hp=ecd0af60e2d79934ea39ae6038aad69177849606;hpb=08cb2039c53cff49e93e621621a9796b1c43f574;p=simgear.git diff --git a/simgear/hla/RTI13Ambassador.hxx b/simgear/hla/RTI13Ambassador.hxx index ecd0af60..85779fa7 100644 --- a/simgear/hla/RTI13Ambassador.hxx +++ b/simgear/hla/RTI13Ambassador.hxx @@ -71,11 +71,22 @@ public: { _rtiAmbassador.publishObjectClass(handle, attributeHandleSet); } void unpublishObjectClass(const RTI::ObjectClassHandle& handle) { _rtiAmbassador.unpublishObjectClass(handle); } + + void publishInteractionClass(const RTI::InteractionClassHandle& handle) + { _rtiAmbassador.publishInteractionClass(handle); } + void unpublishInteractionClass(const RTI::InteractionClassHandle& handle) + { _rtiAmbassador.unpublishInteractionClass(handle); } + void subscribeObjectClassAttributes(const RTI::ObjectClassHandle& handle, const RTI::AttributeHandleSet& attributeHandleSet, bool active) { _rtiAmbassador.subscribeObjectClassAttributes(handle, attributeHandleSet, active ? RTI::RTI_TRUE : RTI::RTI_FALSE); } void unsubscribeObjectClass(const RTI::ObjectClassHandle& handle) { _rtiAmbassador.unsubscribeObjectClass(handle); } + void subscribeInteractionClass(const RTI::InteractionClassHandle& handle, bool active) + { _rtiAmbassador.subscribeInteractionClass(handle, active ? RTI::RTI_TRUE : RTI::RTI_FALSE); } + void unsubscribeInteractionClass(const RTI::InteractionClassHandle& handle) + { _rtiAmbassador.unsubscribeInteractionClass(handle); } + RTI::ObjectHandle registerObjectInstance(const RTI::ObjectClassHandle& handle) { return _rtiAmbassador.registerObjectInstance(handle); } void updateAttributeValues(const RTI::ObjectHandle& objectHandle, const RTI::AttributeHandleValuePairSet& attributeValues, @@ -90,7 +101,7 @@ public: // { _rtiAmbassador.sendInteraction(interactionClassHandle, parameters, tag.data()); } void deleteObjectInstance(const RTI::ObjectHandle& objectHandle, const SGTimeStamp& timeStamp, const RTIData& tag) - { RTI::EventRetractionHandle h = _rtiAmbassador.deleteObjectInstance(objectHandle, toFedTime(timeStamp), tag.data()); } + { /* RTI::EventRetractionHandle h = */ _rtiAmbassador.deleteObjectInstance(objectHandle, toFedTime(timeStamp), tag.data()); } void deleteObjectInstance(const RTI::ObjectHandle& objectHandle, const RTIData& tag) { _rtiAmbassador.deleteObjectInstance(objectHandle, tag.data()); } void localDeleteObjectInstance(const RTI::ObjectHandle& objectHandle) @@ -264,20 +275,8 @@ public: // } // return false; // } - // bool isAttributeOwnedByFederate(const RTIHandle& objectHandle, const RTIHandle& attributeHandle) - // { - // try { - // return _rtiAmbassador.isAttributeOwnedByFederate(objectHandle, attributeHandle); - // } catch (RTI::ObjectNotKnown& e) { - // } catch (RTI::AttributeNotDefined& e) { - // } catch (RTI::FederateNotExecutionMember& e) { - // } catch (RTI::ConcurrentAccessAttempted& e) { - // } catch (RTI::SaveInProgress& e) { - // } catch (RTI::RestoreInProgress& e) { - // } catch (RTI::RTIinternalError& e) { - // } - // return false; - // } + bool isAttributeOwnedByFederate(const RTI::ObjectHandle& objectHandle, const RTI::AttributeHandle& attributeHandle) + { return _rtiAmbassador.isAttributeOwnedByFederate(objectHandle, attributeHandle); } /// Time Management @@ -347,55 +346,15 @@ public: std::string getAttributeName(const RTI::AttributeHandle& attributeHandle, const RTI::ObjectClassHandle& objectClassHandle) { return rtiToStdString(_rtiAmbassador.getAttributeName(attributeHandle, objectClassHandle)); } - // RTIHandle getInteractionClassHandle(const std::string& name) - // { - // try { - // return _rtiAmbassador.getInteractionClassHandle(name.c_str()); - // } catch (RTI::NameNotFound& e) { - // } catch (RTI::FederateNotExecutionMember& e) { - // } catch (RTI::ConcurrentAccessAttempted& e) { - // } catch (RTI::RTIinternalError& e) { - // } - // return RTIHandle(-1); - // } - // std::string getInteractionClassName(const RTIHandle& handle) - // { - // std::string name; - // try { - // rtiToStdString(name, _rtiAmbassador.getInteractionClassName(handle)); - // } catch (RTI::InteractionClassNotDefined& e) { - // } catch (RTI::FederateNotExecutionMember& e) { - // } catch (RTI::ConcurrentAccessAttempted& e) { - // } catch (RTI::RTIinternalError& e) { - // } - // return name; - // } + RTI::InteractionClassHandle getInteractionClassHandle(const std::string& name) + { return _rtiAmbassador.getInteractionClassHandle(name.c_str()); } + std::string getInteractionClassName(const RTI::InteractionClassHandle& handle) + { return rtiToStdString(_rtiAmbassador.getInteractionClassName(handle)); } - // RTIHandle getParameterHandle(const std::string& parameterName, const RTIHandle& interactionClassHandle) - // { - // try { - // return _rtiAmbassador.getParameterHandle(parameterName.c_str(), interactionClassHandle); - // } catch (RTI::InteractionClassNotDefined& e) { - // } catch (RTI::NameNotFound& e) { - // } catch (RTI::FederateNotExecutionMember& e) { - // } catch (RTI::ConcurrentAccessAttempted& e) { - // } catch (RTI::RTIinternalError& e) { - // } - // return RTIHandle(-1); - // } - // std::string getParameterName(const RTIHandle& parameterHandle, const RTIHandle& interactionClassHandle) - // { - // std::string parameterName; - // try { - // rtiToStdString(parameterName, _rtiAmbassador.getParameterName(parameterHandle, interactionClassHandle)); - // } catch (RTI::InteractionClassNotDefined& e) { - // } catch (RTI::InteractionParameterNotDefined& e) { - // } catch (RTI::FederateNotExecutionMember& e) { - // } catch (RTI::ConcurrentAccessAttempted& e) { - // } catch (RTI::RTIinternalError& e) { - // } - // return parameterName; - // } + RTI::ParameterHandle getParameterHandle(const std::string& parameterName, const RTI::InteractionClassHandle& interactionClassHandle) + { return _rtiAmbassador.getParameterHandle(parameterName.c_str(), interactionClassHandle); } + std::string getParameterName(const RTI::ParameterHandle& parameterHandle, const RTI::InteractionClassHandle& interactionClassHandle) + { return rtiToStdString(_rtiAmbassador.getParameterName(parameterHandle, interactionClassHandle)); } RTI::ObjectHandle getObjectInstanceHandle(const std::string& name) { return _rtiAmbassador.getObjectInstanceHandle(name.c_str()); }