summaryrefslogtreecommitdiff
path: root/platform/android/src/style/conversion/transition_options.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/src/style/conversion/transition_options.hpp')
-rw-r--r--platform/android/src/style/conversion/transition_options.hpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/platform/android/src/style/conversion/transition_options.hpp b/platform/android/src/style/conversion/transition_options.hpp
new file mode 100644
index 0000000000..3614878f43
--- /dev/null
+++ b/platform/android/src/style/conversion/transition_options.hpp
@@ -0,0 +1,29 @@
+#pragma once
+
+#include "../../conversion/conversion.hpp"
+
+#include <jni/jni.hpp>
+#include "../../jni/local_object.hpp"
+#include "../transition_options.hpp"
+
+namespace mbgl {
+namespace android {
+namespace conversion {
+
+template<>
+struct Converter<jni::Object<TransitionOptions>, mbgl::style::TransitionOptions> {
+ Result<jni::Object<TransitionOptions>> operator()(jni::JNIEnv &env, const mbgl::style::TransitionOptions &value) const {
+
+ // Convert duration
+ jlong duration = std::chrono::duration_cast<std::chrono::milliseconds>(value.duration.value_or(mbgl::Duration::zero())).count();
+ // Convert delay
+ jlong delay = std::chrono::duration_cast<std::chrono::milliseconds>(value.delay.value_or(mbgl::Duration::zero())).count();
+
+ // Create transition options
+ return TransitionOptions::fromTransitionOptions(env, duration, delay);
+ }
+};
+
+}
+}
+} \ No newline at end of file