diff options
Diffstat (limited to 'platform/android/src/conversion/constant.hpp')
-rw-r--r-- | platform/android/src/conversion/constant.hpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/platform/android/src/conversion/constant.hpp b/platform/android/src/conversion/constant.hpp index a9239fe84..b291f29f0 100644 --- a/platform/android/src/conversion/constant.hpp +++ b/platform/android/src/conversion/constant.hpp @@ -72,6 +72,17 @@ struct Converter<jni::Local<jni::Object<>>, std::array<float, N>> { } }; +template <std::size_t N> +struct Converter<jni::Local<jni::Object<>>, std::array<double, N>> { + Result<jni::Local<jni::Object<>>> operator()(jni::JNIEnv& env, const std::array<double, N>& value) const { + std::vector<double> v; + for (const double& id : value) { + v.push_back(id); + } + return convert<jni::Local<jni::Object<>>, std::vector<double>>(env, v); + } +}; + template <> struct Converter<jni::Local<jni::Object<>>, std::vector<std::string>> { Result<jni::Local<jni::Object<>>> operator()(jni::JNIEnv& env, const std::vector<std::string>& value) const; @@ -82,6 +93,11 @@ struct Converter<jni::Local<jni::Object<>>, std::vector<float>> { Result<jni::Local<jni::Object<>>> operator()(jni::JNIEnv& env, const std::vector<float>& value) const; }; +template <> +struct Converter<jni::Local<jni::Object<>>, std::vector<double>> { + Result<jni::Local<jni::Object<>>> operator()(jni::JNIEnv& env, const std::vector<double>& value) const; +}; + template <class T> struct Converter<jni::Local<jni::Object<>>, T, typename std::enable_if_t<std::is_enum<T>::value>> { Result<jni::Local<jni::Object<>>> operator()(jni::JNIEnv& env, const T& value) const { |