+ /**
+ * @brief Get the interval(ms) of Nth frame.
+ *
+ * @param[in] frameIndex frame index to get frame interval.
+ * @return Time interval in millisecond between frames of frameIndex and frameIndex + 1.
+ */
+ virtual uint32_t GetFrameInterval(uint32_t frameIndex) const = 0;
+
+ /**
+ * @brief Get the current rendered frame index.
+ * If there isn't any loaded frame, returns -1.
+ *
+ * @return Frame index of currently showing frame.
+ */
+ virtual int32_t GetCurrentFrameIndex() const = 0;
+
+ /**
+ * @brief Get total frame count of the animated image file.
+ *
+ * @return Total frame count of the animated image file.
+ */
+ virtual int32_t GetTotalFrameCount() const = 0;
+
+ /**
+ * @brief Clears animated image cache and remove loaded textures.
+ */
+ virtual void ClearCache() = 0;