void DoProcess() { if (!(owner.Value is OpenCVForUnityPlayMakerActions.Dictionary)) { LogError("owner is not initialized. Add Action \"newDictionary\"."); return; } OpenCVForUnity.ArucoModule.Dictionary wrapped_owner = OpenCVForUnityPlayMakerActionsUtils.GetWrappedObject <OpenCVForUnityPlayMakerActions.Dictionary, OpenCVForUnity.ArucoModule.Dictionary>(owner); if (!(onlyBits.Value is OpenCVForUnityPlayMakerActions.Mat)) { LogError("onlyBits is not initialized. Add Action \"newMat\"."); return; } OpenCVForUnity.CoreModule.Mat wrapped_onlyBits = OpenCVForUnityPlayMakerActionsUtils.GetWrappedObject <OpenCVForUnityPlayMakerActions.Mat, OpenCVForUnity.CoreModule.Mat>(onlyBits); int[] int_idx = idx.intValues; int[] casted_idx = new int[int_idx.Length]; for (int i = 0; i < casted_idx.Length; i++) { casted_idx[i] = (int)int_idx[i]; } int[] int_rotation = rotation.intValues; int[] casted_rotation = new int[int_rotation.Length]; for (int i = 0; i < casted_rotation.Length; i++) { casted_rotation[i] = (int)int_rotation[i]; } if (!(maxCorrectionRate.Value is OpenCVForUnityPlayMakerActions.Double)) { LogError("maxCorrectionRate is not initialized. Add Action \"newDouble\"."); return; } System.Double wrapped_maxCorrectionRate = OpenCVForUnityPlayMakerActionsUtils.GetWrappedObject <OpenCVForUnityPlayMakerActions.Double, System.Double>(maxCorrectionRate); storeResult.Value = wrapped_owner.identify(wrapped_onlyBits, casted_idx, casted_rotation, wrapped_maxCorrectionRate); for (int i = 0; i < casted_idx.Length; i++) { idx.Set(i, (int)casted_idx[i]); } idx.SaveChanges(); for (int i = 0; i < casted_rotation.Length; i++) { rotation.Set(i, (int)casted_rotation[i]); } rotation.SaveChanges(); Fsm.Event(storeResult.Value ? trueEvent : falseEvent); }