// This file is generated. Edit android/platform/scripts/generate-style-code.js, then run `make android-style-code`. #include "hillshade_layer.hpp" #include #include "../conversion/property_value.hpp" #include "../conversion/transition_options.hpp" namespace mbgl { namespace android { /** * Creates an owning peer object (for layers not attached to the map) from the JVM side */ HillshadeLayer::HillshadeLayer(jni::JNIEnv& env, jni::String layerId, jni::String sourceId) : Layer(env, std::make_unique(jni::Make(env, layerId), jni::Make(env, sourceId))) { } /** * Creates a non-owning peer object (for layers currently attached to the map) */ HillshadeLayer::HillshadeLayer(mbgl::Map& map, mbgl::style::HillshadeLayer& coreLayer) : Layer(map, coreLayer) { } /** * Creates an owning peer object (for layers not attached to the map) */ HillshadeLayer::HillshadeLayer(mbgl::Map& map, std::unique_ptr coreLayer) : Layer(map, std::move(coreLayer)) { } HillshadeLayer::~HillshadeLayer() = default; // Property getters jni::Object HillshadeLayer::getHillshadeIlluminationDirection(jni::JNIEnv& env) { using namespace mbgl::android::conversion; Result converted = convert(env, layer.as()->HillshadeLayer::getHillshadeIlluminationDirection()); return jni::Object(*converted); } jni::Object HillshadeLayer::getHillshadeIlluminationAnchor(jni::JNIEnv& env) { using namespace mbgl::android::conversion; Result converted = convert(env, layer.as()->HillshadeLayer::getHillshadeIlluminationAnchor()); return jni::Object(*converted); } jni::Object HillshadeLayer::getHillshadeExaggeration(jni::JNIEnv& env) { using namespace mbgl::android::conversion; Result converted = convert(env, layer.as()->HillshadeLayer::getHillshadeExaggeration()); return jni::Object(*converted); } jni::Object HillshadeLayer::getHillshadeExaggerationTransition(jni::JNIEnv& env) { using namespace mbgl::android::conversion; mbgl::style::TransitionOptions options = layer.as()->HillshadeLayer::getHillshadeExaggerationTransition(); return *convert>(env, options); } void HillshadeLayer::setHillshadeExaggerationTransition(jni::JNIEnv&, jlong duration, jlong delay) { mbgl::style::TransitionOptions options; options.duration.emplace(mbgl::Milliseconds(duration)); options.delay.emplace(mbgl::Milliseconds(delay)); layer.as()->HillshadeLayer::setHillshadeExaggerationTransition(options); } jni::Object HillshadeLayer::getHillshadeShadowColor(jni::JNIEnv& env) { using namespace mbgl::android::conversion; Result converted = convert(env, layer.as()->HillshadeLayer::getHillshadeShadowColor()); return jni::Object(*converted); } jni::Object HillshadeLayer::getHillshadeShadowColorTransition(jni::JNIEnv& env) { using namespace mbgl::android::conversion; mbgl::style::TransitionOptions options = layer.as()->HillshadeLayer::getHillshadeShadowColorTransition(); return *convert>(env, options); } void HillshadeLayer::setHillshadeShadowColorTransition(jni::JNIEnv&, jlong duration, jlong delay) { mbgl::style::TransitionOptions options; options.duration.emplace(mbgl::Milliseconds(duration)); options.delay.emplace(mbgl::Milliseconds(delay)); layer.as()->HillshadeLayer::setHillshadeShadowColorTransition(options); } jni::Object HillshadeLayer::getHillshadeHighlightColor(jni::JNIEnv& env) { using namespace mbgl::android::conversion; Result converted = convert(env, layer.as()->HillshadeLayer::getHillshadeHighlightColor()); return jni::Object(*converted); } jni::Object HillshadeLayer::getHillshadeHighlightColorTransition(jni::JNIEnv& env) { using namespace mbgl::android::conversion; mbgl::style::TransitionOptions options = layer.as()->HillshadeLayer::getHillshadeHighlightColorTransition(); return *convert>(env, options); } void HillshadeLayer::setHillshadeHighlightColorTransition(jni::JNIEnv&, jlong duration, jlong delay) { mbgl::style::TransitionOptions options; options.duration.emplace(mbgl::Milliseconds(duration)); options.delay.emplace(mbgl::Milliseconds(delay)); layer.as()->HillshadeLayer::setHillshadeHighlightColorTransition(options); } jni::Object HillshadeLayer::getHillshadeAccentColor(jni::JNIEnv& env) { using namespace mbgl::android::conversion; Result converted = convert(env, layer.as()->HillshadeLayer::getHillshadeAccentColor()); return jni::Object(*converted); } jni::Object HillshadeLayer::getHillshadeAccentColorTransition(jni::JNIEnv& env) { using namespace mbgl::android::conversion; mbgl::style::TransitionOptions options = layer.as()->HillshadeLayer::getHillshadeAccentColorTransition(); return *convert>(env, options); } void HillshadeLayer::setHillshadeAccentColorTransition(jni::JNIEnv&, jlong duration, jlong delay) { mbgl::style::TransitionOptions options; options.duration.emplace(mbgl::Milliseconds(duration)); options.delay.emplace(mbgl::Milliseconds(delay)); layer.as()->HillshadeLayer::setHillshadeAccentColorTransition(options); } jni::jobject* HillshadeLayer::createJavaPeer(jni::JNIEnv& env) { static auto javaClass = jni::Class::Singleton(env); static auto constructor = javaClass.GetConstructor(env); return javaClass.New(env, constructor, reinterpret_cast(this)); } void HillshadeLayer::registerNative(jni::JNIEnv& env) { // Lookup the class static auto javaClass = jni::Class::Singleton(env); #define METHOD(MethodPtr, name) jni::MakeNativePeerMethod(name) // Register the peer jni::RegisterNativePeer( env, javaClass, "nativePtr", std::make_unique, "initialize", "finalize", METHOD(&HillshadeLayer::getHillshadeIlluminationDirection, "nativeGetHillshadeIlluminationDirection"), METHOD(&HillshadeLayer::getHillshadeIlluminationAnchor, "nativeGetHillshadeIlluminationAnchor"), METHOD(&HillshadeLayer::getHillshadeExaggerationTransition, "nativeGetHillshadeExaggerationTransition"), METHOD(&HillshadeLayer::setHillshadeExaggerationTransition, "nativeSetHillshadeExaggerationTransition"), METHOD(&HillshadeLayer::getHillshadeExaggeration, "nativeGetHillshadeExaggeration"), METHOD(&HillshadeLayer::getHillshadeShadowColorTransition, "nativeGetHillshadeShadowColorTransition"), METHOD(&HillshadeLayer::setHillshadeShadowColorTransition, "nativeSetHillshadeShadowColorTransition"), METHOD(&HillshadeLayer::getHillshadeShadowColor, "nativeGetHillshadeShadowColor"), METHOD(&HillshadeLayer::getHillshadeHighlightColorTransition, "nativeGetHillshadeHighlightColorTransition"), METHOD(&HillshadeLayer::setHillshadeHighlightColorTransition, "nativeSetHillshadeHighlightColorTransition"), METHOD(&HillshadeLayer::getHillshadeHighlightColor, "nativeGetHillshadeHighlightColor"), METHOD(&HillshadeLayer::getHillshadeAccentColorTransition, "nativeGetHillshadeAccentColorTransition"), METHOD(&HillshadeLayer::setHillshadeAccentColorTransition, "nativeSetHillshadeAccentColorTransition"), METHOD(&HillshadeLayer::getHillshadeAccentColor, "nativeGetHillshadeAccentColor")); } } // namespace android } // namespace mbgl