From 658ed7df7ff38f7afe12653cd9c610e9e64166cd Mon Sep 17 00:00:00 2001 From: Mira Grudzinska Date: Sat, 13 Jul 2024 12:45:54 +0200 Subject: [PATCH] capi: the version api binding --- src/bindings/capi/thorvg_capi.h | 15 +++++++++++++++ src/bindings/capi/tvgCapi.cpp | 6 ++++++ 2 files changed, 21 insertions(+) diff --git a/src/bindings/capi/thorvg_capi.h b/src/bindings/capi/thorvg_capi.h index 9151509d..9b09c40a 100644 --- a/src/bindings/capi/thorvg_capi.h +++ b/src/bindings/capi/thorvg_capi.h @@ -376,6 +376,21 @@ TVG_API Tvg_Result tvg_engine_init(Tvg_Engine engine_method, unsigned threads); TVG_API Tvg_Result tvg_engine_term(Tvg_Engine engine_method); +/** +* \brief Retrieves the version of the TVG engine. +* +* \param[out] major A major version number. +* \param[out] minor A minor version number. +* \param[out] micro A micro version number. +* \param[out] version The version of the engine in the format major.minor.micro, or a @p nullptr in case of an internal error. +* +* \return Tvg_Result enumeration. +* \retval TVG_RESULT_SUCCESS. +* +* \note Experimental API +*/ +TVG_API Tvg_Result tvg_engine_version(uint32_t* major, uint32_t* minor, uint32_t* micro, const char** version); + /** \} */ // end defgroup ThorVGCapi_Initializer diff --git a/src/bindings/capi/tvgCapi.cpp b/src/bindings/capi/tvgCapi.cpp index 340bb9ba..6a6c8339 100644 --- a/src/bindings/capi/tvgCapi.cpp +++ b/src/bindings/capi/tvgCapi.cpp @@ -52,6 +52,12 @@ TVG_API Tvg_Result tvg_engine_term(Tvg_Engine engine_method) } +TVG_API Tvg_Result tvg_engine_version(uint32_t* major, uint32_t* minor, uint32_t* micro, const char** version) +{ + if (version) *version = Initializer::version(major, minor, micro); + return TVG_RESULT_SUCCESS; +} + /************************************************************************/ /* Canvas API */ /************************************************************************/