public virtual unsafe bool Animate(global::Java.Lang.Object p0, global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter p1)
        {
            if (id_animate_Ljava_lang_Object_Lcom_bumptech_glide_request_animation_GlideAnimation_ViewAdapter_ == IntPtr.Zero)
            {
                id_animate_Ljava_lang_Object_Lcom_bumptech_glide_request_animation_GlideAnimation_ViewAdapter_ = JNIEnv.GetMethodID(class_ref, "animate", "(Ljava/lang/Object;Lcom/bumptech/glide/request/animation/GlideAnimation$ViewAdapter;)Z");
            }
            IntPtr native_p0 = JNIEnv.ToLocalJniHandle(p0);

            try {
                JValue *__args = stackalloc JValue [2];
                __args [0] = new JValue(native_p0);
                __args [1] = new JValue(p1);

                bool __ret;
                if (GetType() == ThresholdType)
                {
                    __ret = JNIEnv.CallBooleanMethod(Handle, id_animate_Ljava_lang_Object_Lcom_bumptech_glide_request_animation_GlideAnimation_ViewAdapter_, __args);
                }
                else
                {
                    __ret = JNIEnv.CallNonvirtualBooleanMethod(Handle, ThresholdClass, JNIEnv.GetMethodID(ThresholdClass, "animate", "(Ljava/lang/Object;Lcom/bumptech/glide/request/animation/GlideAnimation$ViewAdapter;)Z"), __args);
                }
                return(__ret);
            } finally {
                JNIEnv.DeleteLocalRef(native_p0);
            }
        }
        static bool n_Animate_Ljava_lang_Object_Lcom_bumptech_glide_request_animation_GlideAnimation_ViewAdapter_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, IntPtr native_p1)
        {
            global::Com.Bumptech.Glide.Request.Animation.ViewPropertyAnimation __this = global::Java.Lang.Object.GetObject <global::Com.Bumptech.Glide.Request.Animation.ViewPropertyAnimation> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            global::Java.Lang.Object p0 = global::Java.Lang.Object.GetObject <global::Java.Lang.Object> (native_p0, JniHandleOwnership.DoNotTransfer);
            global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter p1 = (global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter)global::Java.Lang.Object.GetObject <global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter> (native_p1, JniHandleOwnership.DoNotTransfer);
            bool __ret = __this.Animate(p0, p1);

            return(__ret);
        }
        static bool n_Animate_Landroid_graphics_drawable_Drawable_Lcom_bumptech_glide_request_animation_GlideAnimation_ViewAdapter_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, IntPtr native_p1)
        {
            global::Com.Bumptech.Glide.Request.Animation.DrawableCrossFadeViewAnimation __this = global::Java.Lang.Object.GetObject <global::Com.Bumptech.Glide.Request.Animation.DrawableCrossFadeViewAnimation> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            global::Java.Lang.Object p0 = global::Java.Lang.Object.GetObject <global::Java.Lang.Object> (native_p0, JniHandleOwnership.DoNotTransfer);
            global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter p1 = (global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter)global::Java.Lang.Object.GetObject <global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter> (native_p1, JniHandleOwnership.DoNotTransfer);
            bool __ret = __this.Animate(p0, p1);

            return(__ret);
        }
 static IntPtr n_GetCurrentDrawable(IntPtr jnienv, IntPtr native__this)
 {
     global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter __this = global::Java.Lang.Object.GetObject <global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     return(JNIEnv.ToLocalJniHandle(__this.CurrentDrawable));
 }
 static void n_SetDrawable_Landroid_graphics_drawable_Drawable_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
 {
     global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter __this = global::Java.Lang.Object.GetObject <global::Com.Bumptech.Glide.Request.Animation.IGlideAnimationViewAdapter> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Android.Graphics.Drawables.Drawable p0 = global::Java.Lang.Object.GetObject <global::Android.Graphics.Drawables.Drawable> (native_p0, JniHandleOwnership.DoNotTransfer);
     __this.SetDrawable(p0);
 }