public static unsafe global::Artifex.MuPdf.MuPDFReaderView.Mode ValueOf(string p0)
            {
                if (id_valueOf_Ljava_lang_String_ == IntPtr.Zero)
                {
                    id_valueOf_Ljava_lang_String_ = JNIEnv.GetStaticMethodID(class_ref, "valueOf", "(Ljava/lang/String;)Lcom/artifex/mupdfdemo/MuPDFReaderView$Mode;");
                }
                IntPtr native_p0 = JNIEnv.NewString(p0);

                try {
                    JValue *__args = stackalloc JValue [1];
                    __args [0] = new JValue(native_p0);
                    global::Artifex.MuPdf.MuPDFReaderView.Mode __ret = global::Java.Lang.Object.GetObject <global::Artifex.MuPdf.MuPDFReaderView.Mode> (JNIEnv.CallStaticObjectMethod(class_ref, id_valueOf_Ljava_lang_String_, __args), JniHandleOwnership.TransferLocalRef);
                    return(__ret);
                } finally {
                    JNIEnv.DeleteLocalRef(native_p0);
                }
            }
        public virtual unsafe void SetMode(global::Artifex.MuPdf.MuPDFReaderView.Mode p0)
        {
            if (id_setMode_Lcom_artifex_mupdfdemo_MuPDFReaderView_Mode_ == IntPtr.Zero)
            {
                id_setMode_Lcom_artifex_mupdfdemo_MuPDFReaderView_Mode_ = JNIEnv.GetMethodID(class_ref, "setMode", "(Lcom/artifex/mupdfdemo/MuPDFReaderView$Mode;)V");
            }
            try {
                JValue *__args = stackalloc JValue [1];
                __args [0] = new JValue(p0);

                if (((object)this).GetType() == ThresholdType)
                {
                    JNIEnv.CallVoidMethod(((global::Java.Lang.Object) this).Handle, id_setMode_Lcom_artifex_mupdfdemo_MuPDFReaderView_Mode_, __args);
                }
                else
                {
                    JNIEnv.CallNonvirtualVoidMethod(((global::Java.Lang.Object) this).Handle, ThresholdClass, JNIEnv.GetMethodID(ThresholdClass, "setMode", "(Lcom/artifex/mupdfdemo/MuPDFReaderView$Mode;)V"), __args);
                }
            } finally {
            }
        }
 static void n_SetMode_Lcom_artifex_mupdfdemo_MuPDFReaderView_Mode_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
 {
     global::Artifex.MuPdf.MuPDFReaderView      __this = global::Java.Lang.Object.GetObject <global::Artifex.MuPdf.MuPDFReaderView> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Artifex.MuPdf.MuPDFReaderView.Mode p0     = global::Java.Lang.Object.GetObject <global::Artifex.MuPdf.MuPDFReaderView.Mode> (native_p0, JniHandleOwnership.DoNotTransfer);
     __this.SetMode(p0);
 }