X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fhla%2FRTI13ObjectInstance.hxx;h=cfba387223ea4ef032eeba9ae2794a5feebcc2d4;hb=624dae59582744e5a032a28e74a37a027244dd17;hp=38fd92b2d06da413f164bb42de616af7a2ee81eb;hpb=3104898c7cfbaa593846abfa433ec53623d2e162;p=simgear.git diff --git a/simgear/hla/RTI13ObjectInstance.hxx b/simgear/hla/RTI13ObjectInstance.hxx index 38fd92b2..cfba3872 100644 --- a/simgear/hla/RTI13ObjectInstance.hxx +++ b/simgear/hla/RTI13ObjectInstance.hxx @@ -42,7 +42,7 @@ typedef std::list RTI13AttributeHandleDataPairList class RTI13ObjectInstance : public RTIObjectInstance { public: - RTI13ObjectInstance(const RTI::ObjectHandle& handle, HLAObjectInstance* hlaObjectInstance, const RTI13ObjectClass* objectClass, RTI13Ambassador* ambassador, bool owned); + RTI13ObjectInstance(const RTI::ObjectHandle& handle, HLAObjectInstance* hlaObjectInstance, const RTI13ObjectClass* objectClass, RTI13Ambassador* ambassador); virtual ~RTI13ObjectInstance(); const RTI::ObjectHandle& getHandle() const @@ -55,8 +55,6 @@ public: unsigned getNumAttributes() const { return get13ObjectClass()->getNumAttributes(); } - unsigned getAttributeIndex(const std::string& name) const - { return get13ObjectClass()->getAttributeIndex(name); } unsigned getAttributeIndex(const RTI::AttributeHandle& handle) const { return get13ObjectClass()->getAttributeIndex(handle); } RTI::AttributeHandle getAttributeHandle(unsigned index) const @@ -68,14 +66,18 @@ public: virtual void deleteObjectInstance(const SGTimeStamp& timeStamp, const RTIData& tag); virtual void localDeleteObjectInstance(); - void reflectAttributeValues(RTI13AttributeHandleDataPairList& attributeHandleDataPairList, const RTIData& tag); - void reflectAttributeValues(RTI13AttributeHandleDataPairList& attributeHandleDataPairList, const SGTimeStamp& timeStamp, const RTIData& tag); - virtual void requestObjectAttributeValueUpdate(); + void reflectAttributeValues(RTI13AttributeHandleDataPairList& attributeHandleDataPairList, + const RTIData& tag, HLAIndexList& indexPool); + void reflectAttributeValues(RTI13AttributeHandleDataPairList& attributeHandleDataPairList, + const SGTimeStamp& timeStamp, const RTIData& tag, HLAIndexList& indexPool); + virtual void requestObjectAttributeValueUpdate(const HLAIndexList& indexList); void provideAttributeValueUpdate(const std::vector& attributes); virtual void updateAttributeValues(const RTIData& tag); virtual void updateAttributeValues(const SGTimeStamp& timeStamp, const RTIData& tag); + virtual bool isAttributeOwnedByFederate(unsigned index) const; + void attributesInScope(const std::vector& attributes); void attributesOutOfScope(const std::vector& attributes);