diff --git a/obj/NiControllerSequence.cpp b/obj/NiControllerSequence.cpp index cc2e79d3308c912b263a1c57a48fe2538f440470..978101026e018f56d0afc622aa6bf139e72aafcd 100644 --- a/obj/NiControllerSequence.cpp +++ b/obj/NiControllerSequence.cpp @@ -130,7 +130,7 @@ void NiControllerSequence::AddInterpolator( const Ref<NiSingleInterpolatorContro controlledBlocks.push_back( cl ); } -void NiControllerSequence::ClearChildren() { +void NiControllerSequence::ClearControllerData() { throw runtime_error("The AddInterpolator function cannot be implemented until prolems in the XML are solved."); @@ -138,4 +138,7 @@ void NiControllerSequence::ClearChildren() { controlledBlocks.clear(); } +vector<ControllerLink> NiControllerSequence::GetControllerData() const { + return controlledBlocks; +} diff --git a/obj/NiControllerSequence.h b/obj/NiControllerSequence.h index 026042e03d20cad3800cf376fc59d5b5c8f34d36..e9bd23a0a9579c9f95582a45caad0f01415afd37 100644 --- a/obj/NiControllerSequence.h +++ b/obj/NiControllerSequence.h @@ -66,7 +66,13 @@ public: /*! Removes all controllers and interpolators from this Kf file root object. * \sa NiControllerSequence::AddController, NiControllersequence::AddInterpolator */ - void ClearChildren(); + void ClearControllerData(); + + /*! Retrieves the data for the controllers or interpolators which are attached to this controller sequence. + * \return A vector containing the data for all controllers. + * \sa NiControllerSequence::AddController, NiControllersequence::AddInterpolator, ClearKfChildren + */ + vector<ControllerLink> GetControllerData() const; protected: NiControllerManager * NiControllerSequence::Parent() const;