X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fhla%2FHLAObjectClass.hxx;h=97596d40a837b173132c344da31c3d0397cef789;hb=201cb61f842ef50a19438e3872ba22e588fa1afc;hp=6a04f4a12f2ecb41b6ca5471316028e21de344a2;hpb=50380bc6c525bf06158341e3181f1f6ff0542b88;p=simgear.git diff --git a/simgear/hla/HLAObjectClass.hxx b/simgear/hla/HLAObjectClass.hxx index 6a04f4a1..97596d40 100644 --- a/simgear/hla/HLAObjectClass.hxx +++ b/simgear/hla/HLAObjectClass.hxx @@ -77,6 +77,10 @@ public: /// Return the index, path pair for the given string path HLADataElement::IndexPathPair getIndexPathPair(const std::string& path) const; + /// Get the attribute data element index for the given path, return true if successful + bool getDataElementIndex(HLADataElementIndex& dataElementIndex, const std::string& path) const; + HLADataElementIndex getDataElementIndex(const std::string& path) const; + virtual bool subscribe(); virtual bool unsubscribe(); @@ -100,6 +104,11 @@ public: const SGSharedPtr& getInstanceCallback() const { return _instanceCallback; } + virtual void discoverInstance(HLAObjectInstance& objectInstance, const RTIData& tag); + virtual void removeInstance(HLAObjectInstance& objectInstance, const RTIData& tag); + virtual void registerInstance(HLAObjectInstance& objectInstance); + virtual void deleteInstance(HLAObjectInstance& objectInstance); + // Is called by the default registration callback if installed // Should register the already known object instances of this class. virtual void startRegistration() const; @@ -120,7 +129,9 @@ public: /// Create a new instance of this class. virtual HLAObjectInstance* createObjectInstance(const std::string& name); - virtual HLAObjectInstance* createObjectInstance(); // deprecated + + virtual void createAttributeDataElements(HLAObjectInstance& objectInstance); + virtual HLADataElement* createAttributeDataElement(HLAObjectInstance& objectInstance, unsigned index); private: HLAObjectClass(const HLAObjectClass&);