//コールバックから開く
        public override bool OpenEx(Ailia.ailiaFileCallback callback, IntPtr arg1, IntPtr arg2)
        {
            Close();
            bool status = base.OpenEx(callback, arg1, arg2);

            if (status == false)
            {
                if (logging)
                {
                    Debug.Log("ailiaModelOpenEx failed");
                }
                return(false);
            }
            return(OpenClassifier());
        }
        //ファイルを開く(コールバック)
        public virtual bool OpenEx(Ailia.ailiaFileCallback callback, IntPtr arg1, IntPtr arg2)
        {
            Close();

            int status = Ailia.ailiaCreate(ref ailia, env_id, Ailia.AILIA_MULTITHREAD_AUTO);

            if (status != Ailia.AILIA_STATUS_SUCCESS)
            {
                if (logging)
                {
                    Debug.Log("ailiaCreate failed" + status);
                }
                return(false);
            }

            status = Ailia.ailiaOpenStreamEx(ailia, arg1, callback, Ailia.AILIA_FILE_CALLBACK_VERSION);
            if (status != Ailia.AILIA_STATUS_SUCCESS)
            {
                if (logging)
                {
                    Debug.Log("ailiaOpenStreamFileEx failed" + status);
                }
                Close();
                return(false);
            }

            status = Ailia.ailiaOpenWeightEx(ailia, arg2, callback, Ailia.AILIA_FILE_CALLBACK_VERSION);
            if (status != Ailia.AILIA_STATUS_SUCCESS)
            {
                if (logging)
                {
                    Debug.Log("ailiaOpenWeightFileEx failed" + status);
                }
                Close();
                return(false);
            }

            return(true);
        }