| /* |
| * Copyright 2021 Google Inc. |
| * |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| #include <android/log.h> |
| #include <jni.h> |
| |
| #define REGISTER_NATIVES(class_name) \ |
| extern int register_jetski_##class_name(JNIEnv*); \ |
| if (auto rc = register_jetski_##class_name(env)) { \ |
| __android_log_print(ANDROID_LOG_ERROR, "JetSki", \ |
| "Failed to load natives: " #class_name); \ |
| return rc; \ |
| } |
| |
| |
| JNIEXPORT jint JNI_OnLoad(JavaVM* vm, void* reserved) { |
| JNIEnv* env; |
| if (vm->GetEnv(reinterpret_cast<void**>(&env), JNI_VERSION_1_6) != JNI_OK) { |
| return JNI_ERR; |
| } |
| |
| REGISTER_NATIVES(Canvas) |
| REGISTER_NATIVES(ColorFilter) |
| REGISTER_NATIVES(ComposeColorFilter) |
| REGISTER_NATIVES(Font) |
| REGISTER_NATIVES(FontChain) |
| REGISTER_NATIVES(HSLAMatrixColorFilter) |
| REGISTER_NATIVES(Image) |
| REGISTER_NATIVES(ImageFilter) |
| REGISTER_NATIVES(LinearGradient) |
| REGISTER_NATIVES(Matrix) |
| REGISTER_NATIVES(MatrixColorFilter) |
| REGISTER_NATIVES(Paint) |
| REGISTER_NATIVES(Path) |
| REGISTER_NATIVES(PathBuilder) |
| REGISTER_NATIVES(RadialGradient) |
| REGISTER_NATIVES(RuntimeShaderBuilder) |
| REGISTER_NATIVES(Shader) |
| REGISTER_NATIVES(SkottieAnimation) |
| REGISTER_NATIVES(Surface) |
| REGISTER_NATIVES(SweepGradient) |
| REGISTER_NATIVES(Text) |
| REGISTER_NATIVES(TwoPointConicalGradient) |
| |
| return JNI_VERSION_1_6; |
| } |