protected PDFVPage(global::Com.Radaee.Pdf.Document p0, int p1) : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer)
        {
            if (Handle != IntPtr.Zero)
            {
                return;
            }

            if (GetType() != typeof(PDFVPage))
            {
                SetHandle(
                    global::Android.Runtime.JNIEnv.StartCreateInstance(GetType(), "(Lcom/radaee/pdf/Document;I)V", new JValue(p0), new JValue(p1)),
                    JniHandleOwnership.TransferLocalRef);
                global::Android.Runtime.JNIEnv.FinishCreateInstance(Handle, "(Lcom/radaee/pdf/Document;I)V", new JValue(p0), new JValue(p1));
                return;
            }

            if (id_ctor_Lcom_radaee_pdf_Document_I == IntPtr.Zero)
            {
                id_ctor_Lcom_radaee_pdf_Document_I = JNIEnv.GetMethodID(class_ref, "<init>", "(Lcom/radaee/pdf/Document;I)V");
            }
            SetHandle(
                global::Android.Runtime.JNIEnv.StartCreateInstance(class_ref, id_ctor_Lcom_radaee_pdf_Document_I, new JValue(p0), new JValue(p1)),
                JniHandleOwnership.TransferLocalRef);
            JNIEnv.FinishCreateInstance(Handle, class_ref, id_ctor_Lcom_radaee_pdf_Document_I, new JValue(p0), new JValue(p1));
        }
        static void n_Find_start_Lcom_radaee_pdf_Document_ILjava_lang_String_ZZ(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, int p1, IntPtr native_p2, bool p3, bool p4)
        {
            global::Com.Radaee.View.PDFVFinder __this = global::Java.Lang.Object.GetObject <global::Com.Radaee.View.PDFVFinder> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            global::Com.Radaee.Pdf.Document    p0     = global::Java.Lang.Object.GetObject <global::Com.Radaee.Pdf.Document> (native_p0, JniHandleOwnership.DoNotTransfer);
            string p2 = JNIEnv.GetString(native_p2, JniHandleOwnership.DoNotTransfer);

            __this.Find_start(p0, p1, p2, p3, p4);
        }
        public virtual void Open(global::Com.Radaee.Pdf.Document p0)
        {
            if (id_open_Lcom_radaee_pdf_Document_ == IntPtr.Zero)
            {
                id_open_Lcom_radaee_pdf_Document_ = JNIEnv.GetMethodID(class_ref, "open", "(Lcom/radaee/pdf/Document;)V");
            }

            if (GetType() == ThresholdType)
            {
                JNIEnv.CallVoidMethod(Handle, id_open_Lcom_radaee_pdf_Document_, new JValue(p0));
            }
            else
            {
                JNIEnv.CallNonvirtualVoidMethod(Handle, ThresholdClass, JNIEnv.GetMethodID(ThresholdClass, "open", "(Lcom/radaee/pdf/Document;)V"), new JValue(p0));
            }
        }
        protected virtual void Find_start(global::Com.Radaee.Pdf.Document p0, int p1, string p2, bool p3, bool p4)
        {
            if (id_find_start_Lcom_radaee_pdf_Document_ILjava_lang_String_ZZ == IntPtr.Zero)
            {
                id_find_start_Lcom_radaee_pdf_Document_ILjava_lang_String_ZZ = JNIEnv.GetMethodID(class_ref, "find_start", "(Lcom/radaee/pdf/Document;ILjava/lang/String;ZZ)V");
            }
            IntPtr native_p2 = JNIEnv.NewString(p2);

            if (GetType() == ThresholdType)
            {
                JNIEnv.CallVoidMethod(Handle, id_find_start_Lcom_radaee_pdf_Document_ILjava_lang_String_ZZ, new JValue(p0), new JValue(p1), new JValue(native_p2), new JValue(p3), new JValue(p4));
            }
            else
            {
                JNIEnv.CallNonvirtualVoidMethod(Handle, ThresholdClass, JNIEnv.GetMethodID(ThresholdClass, "find_start", "(Lcom/radaee/pdf/Document;ILjava/lang/String;ZZ)V"), new JValue(p0), new JValue(p1), new JValue(native_p2), new JValue(p3), new JValue(p4));
            }
            JNIEnv.DeleteLocalRef(native_p2);
        }
 static void n_Open_Lcom_radaee_pdf_Document_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
 {
     global::Com.Radaee.Reader.ReaderController __this = global::Java.Lang.Object.GetObject <global::Com.Radaee.Reader.ReaderController> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Com.Radaee.Pdf.Document            p0     = global::Java.Lang.Object.GetObject <global::Com.Radaee.Pdf.Document> (native_p0, JniHandleOwnership.DoNotTransfer);
     __this.Open(p0);
 }