From 3c653f3f6532fa30b7ed0426e6bbce7c516e69bb Mon Sep 17 00:00:00 2001 From: Stefan Klug Date: Thu, 23 Jan 2025 12:40:51 +0100 Subject: libipa: interpolator: Add accessor to internal data The only way to access the internal data of an Interpolator is through the getInterpolated() method. Sometimes it is necessary to to access the internal data directly to iterate over it. Add an accessor for that. While at it, remove a line break from the doxygen documentation for interpolate() so that doxygen is able to correctly match the function. Signed-off-by: Stefan Klug Reviewed-by: Paul Elder Reviewed-by: Daniel Scally --- src/ipa/libipa/interpolator.cpp | 10 ++++++++-- src/ipa/libipa/interpolator.h | 5 +++++ 2 files changed, 13 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/ipa/libipa/interpolator.cpp b/src/ipa/libipa/interpolator.cpp index 73e8d3b7..f901a86e 100644 --- a/src/ipa/libipa/interpolator.cpp +++ b/src/ipa/libipa/interpolator.cpp @@ -125,6 +125,13 @@ namespace ipa { * Overwrites the internal map using move semantics. */ +/** + * \fn std::map &Interpolator::data() const + * \brief Access the internal map + * + * \return The internal map + */ + /** * \fn const T& Interpolator::getInterpolated() * \brief Retrieve an interpolated value for the given key @@ -136,8 +143,7 @@ namespace ipa { */ /** - * \fn void Interpolator::interpolate(const T &a, const T &b, T &dest, double - * lambda) + * \fn void Interpolator::interpolate(const T &a, const T &b, T &dest, double lambda) * \brief Interpolate between two instances of T * \param a The first value to interpolate * \param b The second value to interpolate diff --git a/src/ipa/libipa/interpolator.h b/src/ipa/libipa/interpolator.h index fffce214..7880db69 100644 --- a/src/ipa/libipa/interpolator.h +++ b/src/ipa/libipa/interpolator.h @@ -81,6 +81,11 @@ public: lastInterpolatedKey_.reset(); } + const std::map &data() const + { + return data_; + } + const T &getInterpolated(unsigned int key, unsigned int *quantizedKey = nullptr) { ASSERT(data_.size() > 0); -- cgit v1.2.1