From ff2a6feb5aac0b52bfb21e9cf98f9e7d41208922 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Tue, 5 May 2026 17:56:18 -0300 Subject: [PATCH 01/30] feat: add video output path support to camera recording APIs across platforms --- packages/camera/camera/CHANGELOG.md | 4 + packages/camera/camera/example/pubspec.yaml | 4 + .../camera/lib/src/camera_controller.dart | 2 + packages/camera/camera/pubspec.yaml | 8 +- .../camera/test/camera_preview_test.dart | 1 + packages/camera/camera_android/CHANGELOG.md | 4 + .../io/flutter/plugins/camera/Camera.java | 46 +- .../flutter/plugins/camera/CameraApiImpl.java | 4 +- .../io/flutter/plugins/camera/Messages.java | 222 ++- .../io/flutter/plugins/camera/CameraTest.java | 54 +- .../camera_android/example/pubspec.yaml | 4 + .../lib/src/android_camera.dart | 5 +- .../camera_android/lib/src/messages.g.dart | 1191 +++++++---------- .../camera_android/pigeons/messages.dart | 2 +- packages/camera/camera_android/pubspec.yaml | 6 +- .../test/android_camera_test.mocks.dart | 15 +- .../plugins/camerax/RecorderProxyApi.java | 22 + .../flutter/plugins/camerax/RecorderTest.java | 18 + .../example/pubspec.yaml | 4 + .../lib/src/android_camera_camerax.dart | 7 +- .../camera_android_camerax/pubspec.yaml | 4 + .../test/android_camera_camerax_test.dart | 82 ++ .../CameraPluginDelegatingMethodTests.swift | 8 +- .../ios/RunnerTests/CameraSettingsTests.swift | 51 + .../ios/RunnerTests/Mocks/MockCamera.swift | 5 +- .../camera_avfoundation/example/pubspec.yaml | 4 + .../Sources/camera_avfoundation/Camera.swift | 1 + .../camera_avfoundation/CameraPlugin.swift | 4 +- .../camera_avfoundation/DefaultCamera.swift | 59 +- .../camera_avfoundation/Messages.swift | 218 ++- .../lib/src/avfoundation_camera.dart | 5 +- .../lib/src/messages.g.dart | 799 +++++------ .../camera_avfoundation/pigeons/messages.dart | 4 +- .../camera/camera_avfoundation/pubspec.yaml | 4 + .../test/avfoundation_camera_test.dart | 4 +- .../test/avfoundation_camera_test.mocks.dart | 11 +- .../camera_platform_interface/CHANGELOG.md | 4 + .../method_channel/method_channel_camera.dart | 1 + .../lib/src/types/video_capture_options.dart | 10 +- .../camera_platform_interface/pubspec.yaml | 2 +- .../method_channel_camera_test.dart | 1 + packages/camera/camera_web/CHANGELOG.md | 3 +- .../integration_test/helpers/mocks.mocks.dart | 718 ---------- .../camera/camera_web/example/pubspec.yaml | 4 + .../camera/camera_web/lib/src/camera.dart | 8 +- .../camera/camera_web/lib/src/camera_web.dart | 4 +- packages/camera/camera_web/pubspec.yaml | 6 +- .../camera_windows/example/pubspec.yaml | 4 + .../camera_windows/lib/camera_windows.dart | 5 +- .../camera_windows/lib/src/messages.g.dart | 462 +++---- .../camera_windows/pigeons/messages.dart | 2 +- packages/camera/camera_windows/pubspec.yaml | 4 + .../test/camera_windows_test.dart | 15 +- .../test/camera_windows_test.mocks.dart | 32 +- .../camera_windows/windows/camera_plugin.cpp | 10 +- .../camera_windows/windows/camera_plugin.h | 2 +- .../windows/capture_controller.cpp | 37 + .../camera_windows/windows/messages.g.cpp | 316 ++++- .../camera_windows/windows/messages.g.h | 64 +- .../windows/test/camera_plugin_test.cpp | 135 +- 60 files changed, 2409 insertions(+), 2326 deletions(-) delete mode 100644 packages/camera/camera_web/example/integration_test/helpers/mocks.mocks.dart diff --git a/packages/camera/camera/CHANGELOG.md b/packages/camera/camera/CHANGELOG.md index 557e16ea59e4..4a98b0e69de9 100644 --- a/packages/camera/camera/CHANGELOG.md +++ b/packages/camera/camera/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.12.0+2 + +* Adds `videoOutputPath` support to `startVideoRecording`. + ## 0.12.0+1 * Makes `Optional.of` constructor `const`. diff --git a/packages/camera/camera/example/pubspec.yaml b/packages/camera/camera/example/pubspec.yaml index b5d9dff6e913..822ca935a164 100644 --- a/packages/camera/camera/example/pubspec.yaml +++ b/packages/camera/camera/example/pubspec.yaml @@ -31,3 +31,7 @@ dev_dependencies: flutter: uses-material-design: true +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera/lib/src/camera_controller.dart b/packages/camera/camera/lib/src/camera_controller.dart index d941c2e85f66..a36ff2d12b35 100644 --- a/packages/camera/camera/lib/src/camera_controller.dart +++ b/packages/camera/camera/lib/src/camera_controller.dart @@ -576,6 +576,7 @@ class CameraController extends ValueNotifier { Future startVideoRecording({ onLatestImageAvailable? onAvailable, bool enablePersistentRecording = true, + String? videoOutputPath, }) async { _throwIfNotInitialized('startVideoRecording'); if (value.isRecordingVideo) { @@ -598,6 +599,7 @@ class CameraController extends ValueNotifier { _cameraId, streamCallback: streamCallback, enablePersistentRecording: enablePersistentRecording, + videoOutputPath: videoOutputPath, ), ); value = value.copyWith( diff --git a/packages/camera/camera/pubspec.yaml b/packages/camera/camera/pubspec.yaml index 2d5967181c32..19fa2c8f3062 100644 --- a/packages/camera/camera/pubspec.yaml +++ b/packages/camera/camera/pubspec.yaml @@ -4,7 +4,7 @@ description: A Flutter plugin for controlling the camera. Supports previewing Dart. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.12.0+1 +version: 0.12.0+2 environment: sdk: ^3.9.0 @@ -23,7 +23,7 @@ flutter: dependencies: camera_android_camerax: ^0.7.0 camera_avfoundation: ^0.10.0 - camera_platform_interface: ^2.12.0 + camera_platform_interface: ^2.14.0 camera_web: ^0.3.3 flutter: sdk: flutter @@ -38,3 +38,7 @@ dev_dependencies: topics: - camera +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera/test/camera_preview_test.dart b/packages/camera/camera/test/camera_preview_test.dart index 912a583e9255..f87cd036cd70 100644 --- a/packages/camera/camera/test/camera_preview_test.dart +++ b/packages/camera/camera/test/camera_preview_test.dart @@ -113,6 +113,7 @@ class FakeController extends ValueNotifier Future startVideoRecording({ onLatestImageAvailable? onAvailable, bool enablePersistentRecording = true, + String? videoOutputPath, }) async {} @override diff --git a/packages/camera/camera_android/CHANGELOG.md b/packages/camera/camera_android/CHANGELOG.md index 0bf9721e6ab9..746bf9cd5162 100644 --- a/packages/camera/camera_android/CHANGELOG.md +++ b/packages/camera/camera_android/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.10.10+17 + +* Adds support for custom video output path in video recording. + ## 0.10.10+16 * Updates build files from Groovy to Kotlin. diff --git a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java index 818151d754fe..8cb586a04023 100644 --- a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java +++ b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java @@ -838,8 +838,9 @@ void unlockAutoFocus() { dartMessenger.error(flutterResult, errorCode, errorMessage, null)); } - public void startVideoRecording(@Nullable EventChannel imageStreamChannel) { - prepareRecording(); + public void startVideoRecording( + @Nullable EventChannel imageStreamChannel, @Nullable String videoOutputPath) { + prepareRecording(videoOutputPath); if (imageStreamChannel != null) { setStreamHandler(imageStreamChannel); @@ -1265,12 +1266,41 @@ public void onError(@NonNull String errorCode, @NonNull String errorMessage) { } @VisibleForTesting - void prepareRecording() { - final File outputDir = applicationContext.getCacheDir(); - try { - captureFile = File.createTempFile("REC", ".mp4", outputDir); - } catch (IOException | SecurityException e) { - throw new Messages.FlutterError("cannotCreateFile", e.getMessage(), null); + void prepareRecording(@Nullable String videoOutputPath) { + if (videoOutputPath != null) { + validateOutputPath(videoOutputPath); + captureFile = new File(videoOutputPath); + } else { + final File outputDir = applicationContext.getCacheDir(); + try { + captureFile = File.createTempFile("REC", ".mp4", outputDir); + } catch (IOException | SecurityException e) { + throw new Messages.FlutterError("cannotCreateFile", e.getMessage(), null); + } + } + } + + private void validateOutputPath(String path) { + File file = new File(path); + if (file.isDirectory()) { + throw new Messages.FlutterError("IOError", "The output path is a directory: " + path, null); + } + File parent = file.getParentFile(); + if (parent != null && !parent.exists()) { + throw new Messages.FlutterError( + "IOError", "The parent directory does not exist: " + parent.getAbsolutePath(), null); + } + + String lowerPath = path.toLowerCase(); + if (!lowerPath.endsWith(".mp4") + && !lowerPath.endsWith(".mov") + && !lowerPath.endsWith(".3gp") + && !lowerPath.endsWith(".m4v") + && !lowerPath.endsWith(".webm")) { + throw new Messages.FlutterError( + "IOError", + "Invalid video extension. Supported: .mp4, .mov, .3gp, .m4v, .webm", + null); } try { prepareMediaRecorder(captureFile.getAbsolutePath()); diff --git a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/CameraApiImpl.java b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/CameraApiImpl.java index b3b04d5309e5..95a8d210b0af 100644 --- a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/CameraApiImpl.java +++ b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/CameraApiImpl.java @@ -175,8 +175,8 @@ public void takePicture(@NonNull Messages.Result result) { } @Override - public void startVideoRecording(@NonNull Boolean enableStream) { - camera.startVideoRecording(enableStream ? imageStreamChannel : null); + public void startVideoRecording(@NonNull Boolean enableStream, @Nullable String videoOutputPath) { + camera.startVideoRecording(enableStream ? imageStreamChannel : null, videoOutputPath); } @NonNull diff --git a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Messages.java b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Messages.java index e61e0c48c199..ce916c0161b2 100644 --- a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Messages.java +++ b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Messages.java @@ -1,7 +1,7 @@ // Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Autogenerated from Pigeon (v26.1.0), do not edit directly. +// Autogenerated from Pigeon (v26.3.4), do not edit directly. // See also: https://pub.dev/packages/pigeon package io.flutter.plugins.camera; @@ -21,13 +21,171 @@ import java.lang.annotation.Target; import java.nio.ByteBuffer; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; import java.util.List; -import java.util.Objects; +import java.util.Map; /** Generated class from Pigeon. */ @SuppressWarnings({"unused", "unchecked", "CodeBlock2Expr", "RedundantSuppression", "serial"}) public class Messages { + static boolean pigeonDoubleEquals(double a, double b) { + // Normalize -0.0 to 0.0 and handle NaN equality. + return (a == 0.0 ? 0.0 : a) == (b == 0.0 ? 0.0 : b) || (Double.isNaN(a) && Double.isNaN(b)); + } + + static boolean pigeonFloatEquals(float a, float b) { + // Normalize -0.0 to 0.0 and handle NaN equality. + return (a == 0.0f ? 0.0f : a) == (b == 0.0f ? 0.0f : b) || (Float.isNaN(a) && Float.isNaN(b)); + } + + static int pigeonDoubleHashCode(double d) { + // Normalize -0.0 to 0.0 and handle NaN to ensure consistent hash codes. + if (d == 0.0) { + d = 0.0; + } + long bits = Double.doubleToLongBits(d); + return (int) (bits ^ (bits >>> 32)); + } + + static int pigeonFloatHashCode(float f) { + // Normalize -0.0 to 0.0 and handle NaN to ensure consistent hash codes. + if (f == 0.0f) { + f = 0.0f; + } + return Float.floatToIntBits(f); + } + + static boolean pigeonDeepEquals(Object a, Object b) { + if (a == b) { + return true; + } + if (a == null || b == null) { + return false; + } + if (a instanceof byte[] && b instanceof byte[]) { + return Arrays.equals((byte[]) a, (byte[]) b); + } + if (a instanceof int[] && b instanceof int[]) { + return Arrays.equals((int[]) a, (int[]) b); + } + if (a instanceof long[] && b instanceof long[]) { + return Arrays.equals((long[]) a, (long[]) b); + } + if (a instanceof double[] && b instanceof double[]) { + double[] da = (double[]) a; + double[] db = (double[]) b; + if (da.length != db.length) { + return false; + } + for (int i = 0; i < da.length; i++) { + if (!pigeonDoubleEquals(da[i], db[i])) { + return false; + } + } + return true; + } + if (a instanceof List && b instanceof List) { + List listA = (List) a; + List listB = (List) b; + if (listA.size() != listB.size()) { + return false; + } + for (int i = 0; i < listA.size(); i++) { + if (!pigeonDeepEquals(listA.get(i), listB.get(i))) { + return false; + } + } + return true; + } + if (a instanceof Map && b instanceof Map) { + Map mapA = (Map) a; + Map mapB = (Map) b; + if (mapA.size() != mapB.size()) { + return false; + } + for (Map.Entry entryA : mapA.entrySet()) { + Object keyA = entryA.getKey(); + Object valueA = entryA.getValue(); + boolean found = false; + for (Map.Entry entryB : mapB.entrySet()) { + Object keyB = entryB.getKey(); + if (pigeonDeepEquals(keyA, keyB)) { + Object valueB = entryB.getValue(); + if (pigeonDeepEquals(valueA, valueB)) { + found = true; + break; + } else { + return false; + } + } + } + if (!found) { + return false; + } + } + return true; + } + if (a instanceof Double && b instanceof Double) { + return pigeonDoubleEquals((double) a, (double) b); + } + if (a instanceof Float && b instanceof Float) { + return pigeonFloatEquals((float) a, (float) b); + } + return a.equals(b); + } + + static int pigeonDeepHashCode(Object value) { + if (value == null) { + return 0; + } + if (value instanceof byte[]) { + return Arrays.hashCode((byte[]) value); + } + if (value instanceof int[]) { + return Arrays.hashCode((int[]) value); + } + if (value instanceof long[]) { + return Arrays.hashCode((long[]) value); + } + if (value instanceof double[]) { + double[] da = (double[]) value; + int result = 1; + for (double d : da) { + result = 31 * result + pigeonDoubleHashCode(d); + } + return result; + } + if (value instanceof List) { + int result = 1; + for (Object item : (List) value) { + result = 31 * result + pigeonDeepHashCode(item); + } + return result; + } + if (value instanceof Map) { + int result = 0; + for (Map.Entry entry : ((Map) value).entrySet()) { + result += + ((pigeonDeepHashCode(entry.getKey()) * 31) ^ pigeonDeepHashCode(entry.getValue())); + } + return result; + } + if (value instanceof Object[]) { + int result = 1; + for (Object item : (Object[]) value) { + result = 31 * result + pigeonDeepHashCode(item); + } + return result; + } + if (value instanceof Double) { + return pigeonDoubleHashCode((double) value); + } + if (value instanceof Float) { + return pigeonFloatHashCode((float) value); + } + return value.hashCode(); + } /** Error class for passing custom error details to Flutter via a thrown PlatformException. */ public static class FlutterError extends RuntimeException { @@ -224,14 +382,15 @@ public boolean equals(Object o) { return false; } PlatformCameraDescription that = (PlatformCameraDescription) o; - return name.equals(that.name) - && lensDirection.equals(that.lensDirection) - && sensorOrientation.equals(that.sensorOrientation); + return pigeonDeepEquals(name, that.name) + && pigeonDeepEquals(lensDirection, that.lensDirection) + && pigeonDeepEquals(sensorOrientation, that.sensorOrientation); } @Override public int hashCode() { - return Objects.hash(name, lensDirection, sensorOrientation); + Object[] fields = new Object[] {getClass(), name, lensDirection, sensorOrientation}; + return pigeonDeepHashCode(fields); } public static final class Builder { @@ -373,17 +532,25 @@ public boolean equals(Object o) { return false; } PlatformCameraState that = (PlatformCameraState) o; - return previewSize.equals(that.previewSize) - && exposureMode.equals(that.exposureMode) - && focusMode.equals(that.focusMode) - && exposurePointSupported.equals(that.exposurePointSupported) - && focusPointSupported.equals(that.focusPointSupported); + return pigeonDeepEquals(previewSize, that.previewSize) + && pigeonDeepEquals(exposureMode, that.exposureMode) + && pigeonDeepEquals(focusMode, that.focusMode) + && pigeonDeepEquals(exposurePointSupported, that.exposurePointSupported) + && pigeonDeepEquals(focusPointSupported, that.focusPointSupported); } @Override public int hashCode() { - return Objects.hash( - previewSize, exposureMode, focusMode, exposurePointSupported, focusPointSupported); + Object[] fields = + new Object[] { + getClass(), + previewSize, + exposureMode, + focusMode, + exposurePointSupported, + focusPointSupported + }; + return pigeonDeepHashCode(fields); } public static final class Builder { @@ -510,12 +677,13 @@ public boolean equals(Object o) { return false; } PlatformSize that = (PlatformSize) o; - return width.equals(that.width) && height.equals(that.height); + return pigeonDeepEquals(width, that.width) && pigeonDeepEquals(height, that.height); } @Override public int hashCode() { - return Objects.hash(width, height); + Object[] fields = new Object[] {getClass(), width, height}; + return pigeonDeepHashCode(fields); } public static final class Builder { @@ -606,12 +774,13 @@ public boolean equals(Object o) { return false; } PlatformPoint that = (PlatformPoint) o; - return x.equals(that.x) && y.equals(that.y); + return pigeonDeepEquals(x, that.x) && pigeonDeepEquals(y, that.y); } @Override public int hashCode() { - return Objects.hash(x, y); + Object[] fields = new Object[] {getClass(), x, y}; + return pigeonDeepHashCode(fields); } public static final class Builder { @@ -732,16 +901,18 @@ public boolean equals(Object o) { return false; } PlatformMediaSettings that = (PlatformMediaSettings) o; - return resolutionPreset.equals(that.resolutionPreset) - && Objects.equals(fps, that.fps) - && Objects.equals(videoBitrate, that.videoBitrate) - && Objects.equals(audioBitrate, that.audioBitrate) - && enableAudio.equals(that.enableAudio); + return pigeonDeepEquals(resolutionPreset, that.resolutionPreset) + && pigeonDeepEquals(fps, that.fps) + && pigeonDeepEquals(videoBitrate, that.videoBitrate) + && pigeonDeepEquals(audioBitrate, that.audioBitrate) + && pigeonDeepEquals(enableAudio, that.enableAudio); } @Override public int hashCode() { - return Objects.hash(resolutionPreset, fps, videoBitrate, audioBitrate, enableAudio); + Object[] fields = + new Object[] {getClass(), resolutionPreset, fps, videoBitrate, audioBitrate, enableAudio}; + return pigeonDeepHashCode(fields); } public static final class Builder { @@ -993,7 +1164,7 @@ void create( void takePicture(@NonNull Result result); /** Starts recording a video on the camera with the given ID. */ - void startVideoRecording(@NonNull Boolean enableStream); + void startVideoRecording(@NonNull Boolean enableStream, @Nullable String videoOutputPath); /** * Ends video recording on the camera with the given ID and returns the path to the resulting @@ -1285,8 +1456,9 @@ public void error(Throwable error) { ArrayList wrapped = new ArrayList<>(); ArrayList args = (ArrayList) message; Boolean enableStreamArg = (Boolean) args.get(0); + String videoOutputPathArg = (String) args.get(1); try { - api.startVideoRecording(enableStreamArg); + api.startVideoRecording(enableStreamArg, videoOutputPathArg); wrapped.add(0, null); } catch (Throwable exception) { wrapped = wrapError(exception); diff --git a/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java b/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java index 85e317cd0c0b..00ba01bf2682 100644 --- a/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java +++ b/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java @@ -52,6 +52,7 @@ import io.flutter.plugins.camera.features.sensororientation.SensorOrientationFeature; import io.flutter.plugins.camera.features.zoomlevel.ZoomLevelFeature; import io.flutter.plugins.camera.media.ImageStreamReader; +import io.flutter.plugins.camera.media.MediaRecorderBuilder; import io.flutter.view.TextureRegistry; import java.io.Closeable; import java.io.File; @@ -711,6 +712,53 @@ public void resumeVideoRecording_shouldCallPauseWhenRecording() { verify(mockMediaRecorder, times(1)).resume(); } + @Test + public void startVideoRecording_usesCustomPath() throws IOException, CameraAccessException { + final String customPath = "/custom/path.mp4"; + final MediaRecorder mockMediaRecorder = mock(MediaRecorder.class); + + try (MockedConstruction mockedBuilder = + Mockito.mockConstruction( + MediaRecorderBuilder.class, + (mock, context) -> { + MediaRecorderBuilder.RecordingParameters params = + (MediaRecorderBuilder.RecordingParameters) context.arguments().get(1); + assertEquals(customPath, params.outputFilePath); + when(mock.setEnableAudio(anyBoolean())).thenReturn(mock); + when(mock.setMediaOrientation(anyInt())).thenReturn(mock); + when(mock.build()).thenReturn(mockMediaRecorder); + })) { + + camera.startVideoRecording(null, customPath); + + assertEquals(1, mockedBuilder.constructed().size()); + } + } + + @Test + public void startVideoRecording_errorsOnInvalidPath() throws IOException, CameraAccessException { + final String invalidPath = "/non/existent/path.mp4"; + @SuppressWarnings("unchecked") + final Messages.Result mockResult = mock(Messages.Result.class); + + try (MockedConstruction mockedBuilder = + Mockito.mockConstruction( + MediaRecorderBuilder.class, + (mock, context) -> { + when(mock.setEnableAudio(anyBoolean())).thenReturn(mock); + when(mock.setMediaOrientation(anyInt())).thenReturn(mock); + when(mock.build()).thenThrow(new IOException("Invalid path")); + })) { + + camera.startVideoRecording(mockResult, invalidPath); + + ArgumentCaptor errorCaptor = + ArgumentCaptor.forClass(Messages.FlutterError.class); + verify(mockResult).error(errorCaptor.capture()); + assertEquals("Invalid path", errorCaptor.getValue().getMessage()); + } + } + @Test public void setDescriptionWhileRecording_errorsWhenUnsupported() { MediaRecorder mockMediaRecorder = mock(MediaRecorder.class); @@ -939,9 +987,9 @@ public void startVideoRecording_shouldPullStreamsFromMediaRecorderAndImageReader when(cameraFlutterTexture.surfaceTexture()).thenReturn(mockSurfaceTexture); when(resolutionFeature.getPreviewSize()).thenReturn(mockSize); - doNothing().when(cameraSpy).prepareRecording(); + doNothing().when(cameraSpy).prepareRecording(any()); - cameraSpy.startVideoRecording(null); + cameraSpy.startVideoRecording(null, null); verify(mockMediaRecorder, times(1)) .getSurface(); // stream pulled from media recorder's surface. verify( @@ -1301,7 +1349,7 @@ public void startVideoRecording_shouldApplySettingsToMediaRecorder() assertNotNull(resolutionFeature); when(resolutionFeature.getPreviewSize()).thenReturn(mockSize); - camera.startVideoRecording(null); + camera.startVideoRecording(null, null); // region Check that FPS parameter affects AE range at which the camera captures frames. assertEquals(camera.cameraFeatures.getFpsRange().getValue().getLower(), Integer.valueOf(fps)); diff --git a/packages/camera/camera_android/example/pubspec.yaml b/packages/camera/camera_android/example/pubspec.yaml index f4d614defd67..4164ee2b121a 100644 --- a/packages/camera/camera_android/example/pubspec.yaml +++ b/packages/camera/camera_android/example/pubspec.yaml @@ -31,3 +31,7 @@ dev_dependencies: flutter: uses-material-design: true +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_android/lib/src/android_camera.dart b/packages/camera/camera_android/lib/src/android_camera.dart index 9f7d580f2364..e7b4c61fe219 100644 --- a/packages/camera/camera_android/lib/src/android_camera.dart +++ b/packages/camera/camera_android/lib/src/android_camera.dart @@ -214,7 +214,10 @@ class AndroidCamera extends CameraPlatform { @override Future startVideoCapturing(VideoCaptureOptions options) async { - await _hostApi.startVideoRecording(options.streamCallback != null); + await _hostApi.startVideoRecording( + options.streamCallback != null, + videoOutputPath: options.videoOutputPath, + ); if (options.streamCallback != null) { _installStreamController().stream.listen(options.streamCallback); diff --git a/packages/camera/camera_android/lib/src/messages.g.dart b/packages/camera/camera_android/lib/src/messages.g.dart index e4c047452511..28e2a6049d1a 100644 --- a/packages/camera/camera_android/lib/src/messages.g.dart +++ b/packages/camera/camera_android/lib/src/messages.g.dart @@ -1,21 +1,40 @@ // Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Autogenerated from Pigeon (v26.1.0), do not edit directly. +// Autogenerated from Pigeon (v26.3.4), do not edit directly. // See also: https://pub.dev/packages/pigeon -// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import, no_leading_underscores_for_local_identifiers +// ignore_for_file: unused_import, unused_shown_name +// ignore_for_file: type=lint import 'dart:async'; -import 'dart:typed_data' show Float64List, Int32List, Int64List, Uint8List; +import 'dart:typed_data' show Float64List, Int32List, Int64List; -import 'package:flutter/foundation.dart' show ReadBuffer, WriteBuffer; import 'package:flutter/services.dart'; +import 'package:meta/meta.dart' show immutable, protected, visibleForTesting; -PlatformException _createConnectionError(String channelName) { - return PlatformException( - code: 'channel-error', - message: 'Unable to establish connection on channel: "$channelName".', - ); +Object? _extractReplyValueOrThrow( + List? replyList, + String channelName, { + required bool isNullValid, +}) { + if (replyList == null) { + throw PlatformException( + code: 'channel-error', + message: 'Unable to establish connection on channel: "$channelName".', + ); + } else if (replyList.length > 1) { + throw PlatformException( + code: replyList[0]! as String, + message: replyList[1] as String?, + details: replyList[2], + ); + } else if (!isNullValid && (replyList.isNotEmpty && replyList[0] == null)) { + throw PlatformException( + code: 'null-error', + message: 'Host platform returned null value for non-null return value.', + ); + } + return replyList.firstOrNull; } List wrapResponse({ @@ -33,6 +52,15 @@ List wrapResponse({ } bool _deepEquals(Object? a, Object? b) { + if (identical(a, b)) { + return true; + } + if (a is double && b is double) { + if (a.isNaN && b.isNaN) { + return true; + } + return a == b; + } if (a is List && b is List) { return a.length == b.length && a.indexed.every( @@ -40,16 +68,52 @@ bool _deepEquals(Object? a, Object? b) { ); } if (a is Map && b is Map) { - return a.length == b.length && - a.entries.every( - (MapEntry entry) => - (b as Map).containsKey(entry.key) && - _deepEquals(entry.value, b[entry.key]), - ); + if (a.length != b.length) { + return false; + } + for (final MapEntry entryA in a.entries) { + bool found = false; + for (final MapEntry entryB in b.entries) { + if (_deepEquals(entryA.key, entryB.key)) { + if (_deepEquals(entryA.value, entryB.value)) { + found = true; + break; + } else { + return false; + } + } + } + if (!found) { + return false; + } + } + return true; } return a == b; } +int _deepHash(Object? value) { + if (value is List) { + return Object.hashAll(value.map(_deepHash)); + } + if (value is Map) { + int result = 0; + for (final MapEntry entry in value.entries) { + result += (_deepHash(entry.key) * 31) ^ _deepHash(entry.value); + } + return result; + } + if (value is double && value.isNaN) { + // Normalize NaN to a consistent hash. + return 0x7FF8000000000000.hashCode; + } + if (value is double && value == 0.0) { + // Normalize -0.0 to 0.0 so they have the same hash code. + return 0.0.hashCode; + } + return value.hashCode; +} + /// Pigeon equivalent of [CameraLensDirection]. enum PlatformCameraLensDirection { front, back, external } @@ -122,12 +186,14 @@ class PlatformCameraDescription { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(name, other.name) && + _deepEquals(lensDirection, other.lensDirection) && + _deepEquals(sensorOrientation, other.sensorOrientation); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } /// Data needed for [CameraInitializedEvent]. @@ -184,12 +250,16 @@ class PlatformCameraState { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(previewSize, other.previewSize) && + _deepEquals(exposureMode, other.exposureMode) && + _deepEquals(focusMode, other.focusMode) && + _deepEquals(exposurePointSupported, other.exposurePointSupported) && + _deepEquals(focusPointSupported, other.focusPointSupported); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } /// Pigeon equivalent of [Size]. @@ -225,12 +295,12 @@ class PlatformSize { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(width, other.width) && _deepEquals(height, other.height); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } /// Pigeon equivalent of [Point]. @@ -263,12 +333,12 @@ class PlatformPoint { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(x, other.x) && _deepEquals(y, other.y); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } /// Pigeon equivalent of [MediaSettings]. @@ -325,12 +395,16 @@ class PlatformMediaSettings { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(resolutionPreset, other.resolutionPreset) && + _deepEquals(fps, other.fps) && + _deepEquals(videoBitrate, other.videoBitrate) && + _deepEquals(audioBitrate, other.audioBitrate) && + _deepEquals(enableAudio, other.enableAudio); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } class _PigeonCodec extends StandardMessageCodec { @@ -385,25 +459,25 @@ class _PigeonCodec extends StandardMessageCodec { Object? readValueOfType(int type, ReadBuffer buffer) { switch (type) { case 129: - final int? value = readValue(buffer) as int?; + final value = readValue(buffer) as int?; return value == null ? null : PlatformCameraLensDirection.values[value]; case 130: - final int? value = readValue(buffer) as int?; + final value = readValue(buffer) as int?; return value == null ? null : PlatformDeviceOrientation.values[value]; case 131: - final int? value = readValue(buffer) as int?; + final value = readValue(buffer) as int?; return value == null ? null : PlatformExposureMode.values[value]; case 132: - final int? value = readValue(buffer) as int?; + final value = readValue(buffer) as int?; return value == null ? null : PlatformFocusMode.values[value]; case 133: - final int? value = readValue(buffer) as int?; + final value = readValue(buffer) as int?; return value == null ? null : PlatformResolutionPreset.values[value]; case 134: - final int? value = readValue(buffer) as int?; + final value = readValue(buffer) as int?; return value == null ? null : PlatformImageFormatGroup.values[value]; case 135: - final int? value = readValue(buffer) as int?; + final value = readValue(buffer) as int?; return value == null ? null : PlatformFlashMode.values[value]; case 136: return PlatformCameraDescription.decode(readValue(buffer)!); @@ -441,34 +515,23 @@ class CameraApi { /// Returns the list of available cameras. Future> getAvailableCameras() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.getAvailableCameras$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as List?)! - .cast(); - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return (pigeonVar_replyValue! as List) + .cast(); } /// Creates a new camera with the given name and settings and returns its ID. @@ -476,784 +539,562 @@ class CameraApi { String cameraName, PlatformMediaSettings mediaSettings, ) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.create$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [cameraName, mediaSettings], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as int?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as int; } /// Initializes the camera with the given ID for the given image format. Future initialize(PlatformImageFormatGroup imageFormat) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.initialize$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [imageFormat], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Disposes of the camera with the given ID. Future dispose() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.dispose$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Locks the camera with the given ID to the given orientation. Future lockCaptureOrientation( PlatformDeviceOrientation orientation, ) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.lockCaptureOrientation$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [orientation], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Unlocks the orientation for the camera with the given ID. Future unlockCaptureOrientation() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.unlockCaptureOrientation$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Takes a picture on the camera with the given ID and returns a path to the /// resulting file. Future takePicture() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.takePicture$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as String?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as String; } /// Starts recording a video on the camera with the given ID. - Future startVideoRecording(bool enableStream) async { - final String pigeonVar_channelName = + Future startVideoRecording( + bool enableStream, { + String? videoOutputPath, + }) async { + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.startVideoRecording$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [enableStream], - ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + [enableStream, videoOutputPath], + ); + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Ends video recording on the camera with the given ID and returns the path /// to the resulting file. Future stopVideoRecording() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.stopVideoRecording$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as String?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as String; } /// Pauses video recording on the camera with the given ID. Future pauseVideoRecording() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.pauseVideoRecording$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Resumes previously paused video recording on the camera with the given ID. Future resumeVideoRecording() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.resumeVideoRecording$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Begins streaming frames from the camera. Future startImageStream() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.startImageStream$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Stops streaming frames from the camera. Future stopImageStream() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.stopImageStream$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Sets the flash mode of the camera with the given ID. Future setFlashMode(PlatformFlashMode flashMode) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.setFlashMode$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [flashMode], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Sets the exposure mode of the camera with the given ID. Future setExposureMode(PlatformExposureMode exposureMode) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.setExposureMode$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [exposureMode], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Sets the exposure point of the camera with the given ID. /// /// A null value resets to the default exposure point. Future setExposurePoint(PlatformPoint? point) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.setExposurePoint$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [point], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Returns the minimum exposure offset of the camera with the given ID. Future getMinExposureOffset() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.getMinExposureOffset$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } /// Returns the maximum exposure offset of the camera with the given ID. Future getMaxExposureOffset() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.getMaxExposureOffset$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } /// Returns the exposure step size of the camera with the given ID. Future getExposureOffsetStepSize() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.getExposureOffsetStepSize$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } /// Sets the exposure offset of the camera with the given ID and returns the /// actual exposure offset. Future setExposureOffset(double offset) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.setExposureOffset$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [offset], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } /// Sets the focus mode of the camera with the given ID. Future setFocusMode(PlatformFocusMode focusMode) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.setFocusMode$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [focusMode], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Sets the focus point of the camera with the given ID. /// /// A null value resets to the default focus point. Future setFocusPoint(PlatformPoint? point) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.setFocusPoint$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [point], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Returns the maximum zoom level of the camera with the given ID. Future getMaxZoomLevel() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.getMaxZoomLevel$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } /// Returns the minimum zoom level of the camera with the given ID. Future getMinZoomLevel() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.getMinZoomLevel$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } /// Sets the zoom level of the camera with the given ID. Future setZoomLevel(double zoom) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.setZoomLevel$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [zoom], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Pauses streaming of preview frames. Future pausePreview() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.pausePreview$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Resumes previously paused streaming of preview frames. Future resumePreview() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.resumePreview$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Changes the camera while recording video. /// /// This should be called only while video recording is active. Future setDescriptionWhileRecording(String description) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_android.CameraApi.setDescriptionWhileRecording$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [description], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } } @@ -1273,8 +1114,7 @@ abstract class CameraGlobalEventApi { ? '.$messageChannelSuffix' : ''; { - final BasicMessageChannel - pigeonVar_channel = BasicMessageChannel( + final pigeonVar_channel = BasicMessageChannel( 'dev.flutter.pigeon.camera_android.CameraGlobalEventApi.deviceOrientationChanged$messageChannelSuffix', pigeonChannelCodec, binaryMessenger: binaryMessenger, @@ -1283,19 +1123,11 @@ abstract class CameraGlobalEventApi { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android.CameraGlobalEventApi.deviceOrientationChanged was null.', - ); - final List args = (message as List?)!; - final PlatformDeviceOrientation? arg_orientation = - (args[0] as PlatformDeviceOrientation?); - assert( - arg_orientation != null, - 'Argument for dev.flutter.pigeon.camera_android.CameraGlobalEventApi.deviceOrientationChanged was null, expected non-null PlatformDeviceOrientation.', - ); + final List args = message! as List; + final PlatformDeviceOrientation arg_orientation = + args[0]! as PlatformDeviceOrientation; try { - api.deviceOrientationChanged(arg_orientation!); + api.deviceOrientationChanged(arg_orientation); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); @@ -1332,8 +1164,7 @@ abstract class CameraEventApi { ? '.$messageChannelSuffix' : ''; { - final BasicMessageChannel - pigeonVar_channel = BasicMessageChannel( + final pigeonVar_channel = BasicMessageChannel( 'dev.flutter.pigeon.camera_android.CameraEventApi.initialized$messageChannelSuffix', pigeonChannelCodec, binaryMessenger: binaryMessenger, @@ -1342,19 +1173,11 @@ abstract class CameraEventApi { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android.CameraEventApi.initialized was null.', - ); - final List args = (message as List?)!; - final PlatformCameraState? arg_initialState = - (args[0] as PlatformCameraState?); - assert( - arg_initialState != null, - 'Argument for dev.flutter.pigeon.camera_android.CameraEventApi.initialized was null, expected non-null PlatformCameraState.', - ); + final List args = message! as List; + final PlatformCameraState arg_initialState = + args[0]! as PlatformCameraState; try { - api.initialized(arg_initialState!); + api.initialized(arg_initialState); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); @@ -1367,8 +1190,7 @@ abstract class CameraEventApi { } } { - final BasicMessageChannel - pigeonVar_channel = BasicMessageChannel( + final pigeonVar_channel = BasicMessageChannel( 'dev.flutter.pigeon.camera_android.CameraEventApi.error$messageChannelSuffix', pigeonChannelCodec, binaryMessenger: binaryMessenger, @@ -1377,18 +1199,10 @@ abstract class CameraEventApi { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android.CameraEventApi.error was null.', - ); - final List args = (message as List?)!; - final String? arg_message = (args[0] as String?); - assert( - arg_message != null, - 'Argument for dev.flutter.pigeon.camera_android.CameraEventApi.error was null, expected non-null String.', - ); + final List args = message! as List; + final String arg_message = args[0]! as String; try { - api.error(arg_message!); + api.error(arg_message); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); @@ -1401,8 +1215,7 @@ abstract class CameraEventApi { } } { - final BasicMessageChannel - pigeonVar_channel = BasicMessageChannel( + final pigeonVar_channel = BasicMessageChannel( 'dev.flutter.pigeon.camera_android.CameraEventApi.closed$messageChannelSuffix', pigeonChannelCodec, binaryMessenger: binaryMessenger, diff --git a/packages/camera/camera_android/pigeons/messages.dart b/packages/camera/camera_android/pigeons/messages.dart index 4489fe3f6fb8..a03b57ad595b 100644 --- a/packages/camera/camera_android/pigeons/messages.dart +++ b/packages/camera/camera_android/pigeons/messages.dart @@ -132,7 +132,7 @@ abstract class CameraApi { String takePicture(); /// Starts recording a video on the camera with the given ID. - void startVideoRecording(bool enableStream); + void startVideoRecording(bool enableStream, {String? videoOutputPath}); /// Ends video recording on the camera with the given ID and returns the path /// to the resulting file. diff --git a/packages/camera/camera_android/pubspec.yaml b/packages/camera/camera_android/pubspec.yaml index 34ffc900e502..caad183fa3a7 100644 --- a/packages/camera/camera_android/pubspec.yaml +++ b/packages/camera/camera_android/pubspec.yaml @@ -3,7 +3,7 @@ description: Android implementation of the camera plugin. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera_android issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.10.10+16 +version: 0.10.10+17 environment: sdk: ^3.9.0 @@ -36,3 +36,7 @@ dev_dependencies: topics: - camera +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_android/test/android_camera_test.mocks.dart b/packages/camera/camera_android/test/android_camera_test.mocks.dart index 53cd6e9489a1..9c9d6b314bc1 100644 --- a/packages/camera/camera_android/test/android_camera_test.mocks.dart +++ b/packages/camera/camera_android/test/android_camera_test.mocks.dart @@ -1,4 +1,4 @@ -// Mocks generated by Mockito 5.4.4 from annotations +// Mocks generated by Mockito 5.4.6 from annotations // in camera_android/test/android_camera_test.dart. // Do not manually edit this file. @@ -17,10 +17,12 @@ import 'package:mockito/src/dummies.dart' as _i3; // ignore_for_file: deprecated_member_use_from_same_package // ignore_for_file: implementation_imports // ignore_for_file: invalid_use_of_visible_for_testing_member +// ignore_for_file: must_be_immutable // ignore_for_file: prefer_const_constructors // ignore_for_file: unnecessary_parenthesis // ignore_for_file: camel_case_types // ignore_for_file: subtype_of_sealed_class +// ignore_for_file: invalid_use_of_internal_member /// A class which mocks [CameraApi]. /// @@ -119,9 +121,16 @@ class MockCameraApi extends _i1.Mock implements _i2.CameraApi { as _i4.Future); @override - _i4.Future startVideoRecording(bool? enableStream) => + _i4.Future startVideoRecording( + bool? enableStream, { + String? videoOutputPath, + }) => (super.noSuchMethod( - Invocation.method(#startVideoRecording, [enableStream]), + Invocation.method( + #startVideoRecording, + [enableStream], + {#videoOutputPath: videoOutputPath}, + ), returnValue: _i4.Future.value(), returnValueForMissingStub: _i4.Future.value(), ) diff --git a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java index 9ed772ccb6ae..aafaf378c069 100644 --- a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java +++ b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java @@ -60,6 +60,7 @@ public long getTargetVideoEncodingBitRate(Recorder pigeonInstance) { @NonNull @Override public PendingRecording prepareRecording(Recorder pigeonInstance, @NonNull String path) { + validateOutputPath(path); final File temporaryCaptureFile = openTempFile(path); final FileOutputOptions fileOutputOptions = new FileOutputOptions.Builder(temporaryCaptureFile).build(); @@ -70,6 +71,27 @@ public PendingRecording prepareRecording(Recorder pigeonInstance, @NonNull Strin return pendingRecording; } + private void validateOutputPath(@NonNull String path) { + File file = new File(path); + if (file.isDirectory()) { + throw new RuntimeException("The output path is a directory: " + path); + } + File parent = file.getParentFile(); + if (parent != null && !parent.exists()) { + throw new RuntimeException("The parent directory does not exist: " + parent.getAbsolutePath()); + } + + String lowerPath = path.toLowerCase(); + if (!lowerPath.endsWith(".mp4") + && !lowerPath.endsWith(".mov") + && !lowerPath.endsWith(".3gp") + && !lowerPath.endsWith(".m4v") + && !lowerPath.endsWith(".webm")) { + throw new RuntimeException( + "Invalid video extension. Supported: .mp4, .mov, .3gp, .m4v, .webm"); + } + } + @NonNull File openTempFile(@NonNull String path) { try { diff --git a/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/RecorderTest.java b/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/RecorderTest.java index 68fba0da8b37..6e45c21c8892 100644 --- a/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/RecorderTest.java +++ b/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/RecorderTest.java @@ -80,4 +80,22 @@ public void prepareRecording_returnsExpectedPendingRecording() { assertEquals(mockPendingRecording, api.prepareRecording(mockRecorder, "myFile.mp4")); } + + @Test(expected = RuntimeException.class) + public void prepareRecording_errorsOnInvalidPath() { + final PigeonApiRecorder api = new TestProxyApiRegistrar().getPigeonApiRecorder(); + + final Recorder mockRecorder = mock(Recorder.class); + + // This should trigger the catch block in RecorderProxyApi.openTempFile if path is null, + // but Pigeon ensures it's non-null. + // However, we can test that it throws if openTempFile fails (e.g. SecurityException). + // But since openTempFile just calls new File(path), it doesn't throw much. + + // Let's test with a null path to trigger NullPointerException if we could, + // but Pigeon marks it @NonNull. + + // Actually, RecorderProxyApi.prepareRecording is what we want to test. + api.prepareRecording(mockRecorder, null); + } } diff --git a/packages/camera/camera_android_camerax/example/pubspec.yaml b/packages/camera/camera_android_camerax/example/pubspec.yaml index 81a4e079b2ae..2f59cb505d84 100644 --- a/packages/camera/camera_android_camerax/example/pubspec.yaml +++ b/packages/camera/camera_android_camerax/example/pubspec.yaml @@ -28,4 +28,8 @@ dev_dependencies: flutter: uses-material-design: true +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart b/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart index e52e4bd09cf1..e71238ba5806 100644 --- a/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart +++ b/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart @@ -1183,10 +1183,9 @@ class AndroidCameraCameraX extends CameraPlatform { ); } - videoOutputPath = await systemServicesManager.getTempFilePath( - videoPrefix, - '.mp4', - ); + videoOutputPath = + options.videoOutputPath ?? + await systemServicesManager.getTempFilePath(videoPrefix, '.mp4'); pendingRecording = await recorder!.prepareRecording(videoOutputPath!); if (options.enablePersistentRecording) { diff --git a/packages/camera/camera_android_camerax/pubspec.yaml b/packages/camera/camera_android_camerax/pubspec.yaml index 6e928e2518aa..f10c076ee4d8 100644 --- a/packages/camera/camera_android_camerax/pubspec.yaml +++ b/packages/camera/camera_android_camerax/pubspec.yaml @@ -35,3 +35,7 @@ dev_dependencies: topics: - camera +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart b/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart index 71ed3d58ccde..0b872bc9ae00 100644 --- a/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart +++ b/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart @@ -2887,6 +2887,88 @@ void main() { }, ); + test( + 'startVideoCapturing uses the provided videoOutputPath if available', + () async { + // Set up mocks and constants. + final camera = AndroidCameraCameraX(); + final mockPendingRecording = MockPendingRecording(); + final mockRecording = MockRecording(); + final mockCamera = MockCamera(); + final mockCameraInfo = MockCameraInfo(); + final mockCamera2CameraInfo = MockCamera2CameraInfo(); + const videoOutputPath = '/test/custom/path.mp4'; + + // Set directly for test versus calling createCamera. + camera.processCameraProvider = MockProcessCameraProvider(); + camera.recorder = MockRecorder(); + camera.videoCapture = MockVideoCapture(); + camera.cameraSelector = MockCameraSelector(); + camera.cameraInfo = MockCameraInfo(); + camera.imageAnalysis = MockImageAnalysis(); + camera.enableRecordingAudio = false; + + // Ignore setting target rotation for this test; tested separately. + camera.captureOrientationLocked = true; + + PigeonOverrides.camera2CameraInfo_from = + ({required dynamic cameraInfo}) => mockCamera2CameraInfo; + PigeonOverrides.videoRecordEventListener_new = + ({ + required void Function(VideoRecordEventListener, VideoRecordEvent) + onEvent, + }) { + return VideoRecordEventListener.pigeon_detached(onEvent: onEvent); + }; + PigeonOverrides.cameraCharacteristics_infoSupportedHardwareLevel = + MockCameraCharacteristicsKey(); + + // Mock method calls. + when( + camera.recorder!.prepareRecording(videoOutputPath), + ).thenAnswer((_) async => mockPendingRecording); + when( + mockPendingRecording.withAudioEnabled(any), + ).thenAnswer((_) async => mockPendingRecording); + when( + mockPendingRecording.asPersistentRecording(), + ).thenAnswer((_) async => mockPendingRecording); + when( + mockPendingRecording.start(any), + ).thenAnswer((_) async => mockRecording); + when( + camera.processCameraProvider!.isBound(camera.videoCapture!), + ).thenAnswer((_) async => false); + when( + camera.processCameraProvider!.bindToLifecycle( + camera.cameraSelector!, + [camera.videoCapture!], + ), + ).thenAnswer((_) async => mockCamera); + when( + mockCamera.getCameraInfo(), + ).thenAnswer((_) => Future.value(mockCameraInfo)); + when( + mockCameraInfo.getCameraState(), + ).thenAnswer((_) async => MockLiveCameraState()); + when( + mockCamera2CameraInfo.getCameraCharacteristic(any), + ).thenAnswer((_) async => InfoSupportedHardwareLevel.limited); + + // Simulate video recording being started so startVideoRecording completes. + AndroidCameraCameraX.videoRecordingEventStreamController.add( + VideoRecordEventStart.pigeon_detached(), + ); + + await camera.startVideoCapturing( + const VideoCaptureOptions(1, videoOutputPath: videoOutputPath), + ); + + verify(camera.recorder!.prepareRecording(videoOutputPath)).called(1); + expect(camera.videoOutputPath, videoOutputPath); + }, + ); + test( 'startVideoCapturing called with stream options starts image streaming', () async { diff --git a/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraPluginDelegatingMethodTests.swift b/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraPluginDelegatingMethodTests.swift index 34a306b511d7..cc51c2494269 100644 --- a/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraPluginDelegatingMethodTests.swift +++ b/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraPluginDelegatingMethodTests.swift @@ -295,13 +295,13 @@ final class CameraPluginDelegatingMethodTests: XCTestCase { let expectation = expectation(description: "Call completed") var startVideoRecordingCalled = false - mockCamera.startVideoRecordingStub = { completion, messenger in + mockCamera.startVideoRecordingStub = { path, completion, messenger in XCTAssertNotNil(messenger) completion(.success(())) startVideoRecordingCalled = true } - cameraPlugin.startVideoRecording(enableStream: true) { result in + cameraPlugin.startVideoRecording(enableStream: true, videoOutputPath: nil) { result in let _ = self.assertSuccess(result) expectation.fulfill() } @@ -316,13 +316,13 @@ final class CameraPluginDelegatingMethodTests: XCTestCase { let expectation = expectation(description: "Call completed") var startVideoRecordingCalled = false - mockCamera.startVideoRecordingStub = { completion, messenger in + mockCamera.startVideoRecordingStub = { path, completion, messenger in XCTAssertNil(messenger) completion(.success(())) startVideoRecordingCalled = true } - cameraPlugin.startVideoRecording(enableStream: false) { result in + cameraPlugin.startVideoRecording(enableStream: false, videoOutputPath: nil) { result in let _ = self.assertSuccess(result) expectation.fulfill() } diff --git a/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift b/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift index 0c9f45e5e50a..3579e3d9bfc0 100644 --- a/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift +++ b/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift @@ -353,4 +353,55 @@ final class CameraSettingsTests: XCTestCase { "Camera should have ignored the lossy and square formats, safely falling back to 4K." ) } + + func test_startVideoRecording_usesCustomPath() { + let customPath = "/custom/path.mp4" + let configuration = CameraTestUtils.createTestCameraConfiguration() + + var capturedOutputURL: URL? + configuration.assetWriterFactory = { outputURL, _ in + capturedOutputURL = outputURL + return MockAssetWriter() + } + + let camera = CameraTestUtils.createTestCamera(configuration) + + let expectation = self.expectation(description: "startVideoRecording finished") + camera.startVideoRecording( + videoOutputPath: customPath, + completion: { _ in + expectation.fulfill() + }, messengerForStreaming: nil) + + waitForExpectations(timeout: 1) + + XCTAssertEqual(capturedOutputURL?.path, customPath) + } + + func test_startVideoRecording_errorsOnInvalidPath() { + let invalidPath = "/invalid/path.mp4" + let configuration = CameraTestUtils.createTestCameraConfiguration() + + // Simulate AssetWriter error (e.g. invalid URL) + configuration.assetWriterFactory = { _, _ in + throw NSError(domain: "test", code: 1, userInfo: [NSLocalizedDescriptionKey: "Invalid path"]) + } + + let camera = CameraTestUtils.createTestCamera(configuration) + + let expectation = self.expectation(description: "startVideoRecording finished") + camera.startVideoRecording( + videoOutputPath: invalidPath, + completion: { result in + switch result { + case .success: + XCTFail("Expected failure") + case .failure(let error): + XCTAssertEqual(error.localizedDescription, "Invalid path") + } + expectation.fulfill() + }, messengerForStreaming: nil) + + waitForExpectations(timeout: 1) + } } diff --git a/packages/camera/camera_avfoundation/example/ios/RunnerTests/Mocks/MockCamera.swift b/packages/camera/camera_avfoundation/example/ios/RunnerTests/Mocks/MockCamera.swift index ec6e6fd88f9c..ec586933dfdb 100644 --- a/packages/camera/camera_avfoundation/example/ios/RunnerTests/Mocks/MockCamera.swift +++ b/packages/camera/camera_avfoundation/example/ios/RunnerTests/Mocks/MockCamera.swift @@ -18,7 +18,7 @@ final class MockCamera: NSObject, Camera { var receivedImageStreamDataStub: (() -> Void)? var startStub: (() -> Void)? var startVideoRecordingStub: - ((@escaping (Result) -> Void, FlutterBinaryMessenger?) -> Void)? + ((String?, @escaping (Result) -> Void, FlutterBinaryMessenger?) -> Void)? var pauseVideoRecordingStub: (() -> Void)? var resumeVideoRecordingStub: (() -> Void)? var stopVideoRecordingStub: ((@escaping (Result) -> Void) -> Void)? @@ -110,10 +110,11 @@ final class MockCamera: NSObject, Camera { func stop() {} func startVideoRecording( + videoOutputPath: String?, completion: @escaping (Result) -> Void, messengerForStreaming messenger: FlutterBinaryMessenger? ) { - startVideoRecordingStub?(completion, messenger) + startVideoRecordingStub?(videoOutputPath, completion, messenger) } func pauseVideoRecording() { diff --git a/packages/camera/camera_avfoundation/example/pubspec.yaml b/packages/camera/camera_avfoundation/example/pubspec.yaml index 4b9a5b5a5e53..d78e31aee2c3 100644 --- a/packages/camera/camera_avfoundation/example/pubspec.yaml +++ b/packages/camera/camera_avfoundation/example/pubspec.yaml @@ -29,3 +29,7 @@ dev_dependencies: flutter: uses-material-design: true +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Camera.swift b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Camera.swift index 117fd909d32e..5656fb1a2975 100644 --- a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Camera.swift +++ b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Camera.swift @@ -49,6 +49,7 @@ protocol Camera: FlutterTexture, AVCaptureVideoDataOutputSampleBufferDelegate, /// /// @param messenger Nullable messenger for capturing each frame. func startVideoRecording( + videoOutputPath: String?, completion: @escaping (Result) -> Void, messengerForStreaming: FlutterBinaryMessenger? ) diff --git a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/CameraPlugin.swift b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/CameraPlugin.swift index 43ef5f48916c..4eef93e08377 100644 --- a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/CameraPlugin.swift +++ b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/CameraPlugin.swift @@ -379,11 +379,13 @@ extension CameraPlugin: CameraApi { } func startVideoRecording( - enableStream: Bool, completion: @escaping (Result) -> Void + enableStream: Bool, videoOutputPath: String?, + completion: @escaping (Result) -> Void ) { captureSessionQueue.async { [weak self] in guard let strongSelf = self else { return } strongSelf.camera?.startVideoRecording( + videoOutputPath: videoOutputPath, completion: completion, messengerForStreaming: enableStream ? strongSelf.messenger : nil) } diff --git a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift index 16d1637d23fa..8b2c6046d4ad 100644 --- a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift +++ b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift @@ -504,6 +504,7 @@ final class DefaultCamera: NSObject, Camera { } func startVideoRecording( + videoOutputPath: String?, completion: @escaping (Result) -> Void, messengerForStreaming messenger: FlutterBinaryMessenger? ) { @@ -519,27 +520,61 @@ final class DefaultCamera: NSObject, Camera { if let messenger = messenger { startImageStream(with: messenger) { [weak self] error in - self?.setUpVideoRecording(completion: completion) + self?.setUpVideoRecording(videoOutputPath: videoOutputPath, completion: completion) } return } - setUpVideoRecording(completion: completion) + setUpVideoRecording(videoOutputPath: videoOutputPath, completion: completion) } /// Main logic to setup the video recording. - private func setUpVideoRecording(completion: @escaping (Result) -> Void) { + private func setUpVideoRecording( + videoOutputPath: String?, completion: @escaping (Result) -> Void + ) { let videoRecordingPath: String - do { - videoRecordingPath = try getTemporaryFilePath( - withExtension: "mp4", - subfolder: "videos", - prefix: "REC_") - self.videoRecordingPath = videoRecordingPath - } catch let error as NSError { - completion(.failure(DefaultCamera.pigeonErrorFromNSError(error))) - return + if let videoOutputPath = videoOutputPath { + do { + try validateOutputPath(videoOutputPath) + } catch { + completion(.failure(error)) + return + } + videoRecordingPath = videoOutputPath + } else { + do { + videoRecordingPath = try getTemporaryFilePath( + withExtension: "mp4", + subfolder: "videos", + prefix: "REC_") + } catch let error as NSError { + completion(.failure(DefaultCamera.pigeonErrorFromNSError(error))) + return + } + } + self.videoRecordingPath = videoRecordingPath + } + + private func validateOutputPath(_ path: String) throws { + var isDir: ObjCBool = false + if FileManager.default.fileExists(atPath: path, isDirectory: &isDir), isDir.boolValue { + throw PigeonError(code: "IOError", message: "Path is a directory: \(path)", details: nil) } + let parentPath = (path as NSString).deletingLastPathComponent + if !FileManager.default.fileExists(atPath: parentPath) { + throw PigeonError( + code: "IOError", message: "Parent directory does not exist: \(parentPath)", details: nil) + } + + let lowerPath = path.lowercased() + let validExtensions = [".mp4", ".mov", ".m4v", ".3gp"] + if !validExtensions.contains(where: { lowerPath.hasSuffix($0) }) { + throw PigeonError( + code: "IOError", + message: "Invalid video extension. Supported: \(validExtensions.joined(separator: ", "))", + details: nil) + } + } guard setupWriter(forPath: videoRecordingPath) else { completion( diff --git a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Messages.swift b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Messages.swift index 47e6abbbe750..d900a6a63a31 100644 --- a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Messages.swift +++ b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Messages.swift @@ -1,7 +1,7 @@ // Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Autogenerated from Pigeon (v26.1.5), do not edit directly. +// Autogenerated from Pigeon (v26.3.4), do not edit directly. // See also: https://pub.dev/packages/pigeon import Foundation @@ -53,7 +53,7 @@ private func wrapError(_ error: Any) -> [Any?] { } return [ "\(error)", - "\(type(of: error))", + "\(Swift.type(of: error))", "Stacktrace: \(Thread.callStackSymbols)", ] } @@ -73,6 +73,19 @@ private func nilOrValue(_ value: Any?) -> T? { return value as! T? } +private func doubleEqualsMessages(_ lhs: Double, _ rhs: Double) -> Bool { + return (lhs.isNaN && rhs.isNaN) || lhs == rhs +} + +private func doubleHashMessages(_ value: Double, _ hasher: inout Hasher) { + if value.isNaN { + hasher.combine(0x7FF8_0000_0000_0000) + } else { + // Normalize -0.0 to 0.0 + hasher.combine(value == 0 ? 0 : value) + } +} + func deepEqualsMessages(_ lhs: Any?, _ rhs: Any?) -> Bool { let cleanLhs = nilOrValue(lhs) as Any? let cleanRhs = nilOrValue(rhs) as Any? @@ -83,56 +96,90 @@ func deepEqualsMessages(_ lhs: Any?, _ rhs: Any?) -> Bool { case (nil, _), (_, nil): return false - case is (Void, Void): + case (let lhs as AnyObject, let rhs as AnyObject) where lhs === rhs: return true - case let (cleanLhsHashable, cleanRhsHashable) as (AnyHashable, AnyHashable): - return cleanLhsHashable == cleanRhsHashable + case is (Void, Void): + return true - case let (cleanLhsArray, cleanRhsArray) as ([Any?], [Any?]): - guard cleanLhsArray.count == cleanRhsArray.count else { return false } - for (index, element) in cleanLhsArray.enumerated() { - if !deepEqualsMessages(element, cleanRhsArray[index]) { + case (let lhsArray, let rhsArray) as ([Any?], [Any?]): + guard lhsArray.count == rhsArray.count else { return false } + for (index, element) in lhsArray.enumerated() { + if !deepEqualsMessages(element, rhsArray[index]) { return false } } return true - case let (cleanLhsDictionary, cleanRhsDictionary) as ([AnyHashable: Any?], [AnyHashable: Any?]): - guard cleanLhsDictionary.count == cleanRhsDictionary.count else { return false } - for (key, cleanLhsValue) in cleanLhsDictionary { - guard cleanRhsDictionary.index(forKey: key) != nil else { return false } - if !deepEqualsMessages(cleanLhsValue, cleanRhsDictionary[key]!) { + case (let lhsArray, let rhsArray) as ([Double], [Double]): + guard lhsArray.count == rhsArray.count else { return false } + for (index, element) in lhsArray.enumerated() { + if !doubleEqualsMessages(element, rhsArray[index]) { return false } } return true + case (let lhsDictionary, let rhsDictionary) as ([AnyHashable: Any?], [AnyHashable: Any?]): + guard lhsDictionary.count == rhsDictionary.count else { return false } + for (lhsKey, lhsValue) in lhsDictionary { + var found = false + for (rhsKey, rhsValue) in rhsDictionary { + if deepEqualsMessages(lhsKey, rhsKey) { + if deepEqualsMessages(lhsValue, rhsValue) { + found = true + break + } else { + return false + } + } + } + if !found { return false } + } + return true + + case (let lhs as Double, let rhs as Double): + return doubleEqualsMessages(lhs, rhs) + + case (let lhsHashable, let rhsHashable) as (AnyHashable, AnyHashable): + return lhsHashable == rhsHashable + default: - // Any other type shouldn't be able to be used with pigeon. File an issue if you find this to be untrue. return false } } func deepHashMessages(value: Any?, hasher: inout Hasher) { - if let valueList = value as? [AnyHashable] { - for item in valueList { deepHashMessages(value: item, hasher: &hasher) } - return - } - - if let valueDict = value as? [AnyHashable: AnyHashable] { - for key in valueDict.keys { - hasher.combine(key) - deepHashMessages(value: valueDict[key]!, hasher: &hasher) + let cleanValue = nilOrValue(value) as Any? + if let cleanValue = cleanValue { + if let doubleValue = cleanValue as? Double { + doubleHashMessages(doubleValue, &hasher) + } else if let valueList = cleanValue as? [Any?] { + for item in valueList { + deepHashMessages(value: item, hasher: &hasher) + } + } else if let valueList = cleanValue as? [Double] { + for item in valueList { + doubleHashMessages(item, &hasher) + } + } else if let valueDict = cleanValue as? [AnyHashable: Any?] { + var result = 0 + for (key, value) in valueDict { + var entryKeyHasher = Hasher() + deepHashMessages(value: key, hasher: &entryKeyHasher) + var entryValueHasher = Hasher() + deepHashMessages(value: value, hasher: &entryValueHasher) + result = result &+ ((entryKeyHasher.finalize() &* 31) ^ entryValueHasher.finalize()) + } + hasher.combine(result) + } else if let hashableValue = cleanValue as? AnyHashable { + hasher.combine(hashableValue) + } else { + hasher.combine(String(describing: cleanValue)) } - return + } else { + hasher.combine(0) } - - if let hashableValue = value as? AnyHashable { - hasher.combine(hashableValue.hashValue) - } - - return hasher.combine(String(describing: value)) } enum PlatformCameraLensDirection: Int { @@ -235,10 +282,19 @@ struct PlatformCameraDescription: Hashable { ] } static func == (lhs: PlatformCameraDescription, rhs: PlatformCameraDescription) -> Bool { - return deepEqualsMessages(lhs.toList(), rhs.toList()) + if Swift.type(of: lhs) != Swift.type(of: rhs) { + return false + } + return deepEqualsMessages(lhs.name, rhs.name) + && deepEqualsMessages(lhs.lensDirection, rhs.lensDirection) + && deepEqualsMessages(lhs.lensType, rhs.lensType) } + func hash(into hasher: inout Hasher) { - deepHashMessages(value: toList(), hasher: &hasher) + hasher.combine("PlatformCameraDescription") + deepHashMessages(value: name, hasher: &hasher) + deepHashMessages(value: lensDirection, hasher: &hasher) + deepHashMessages(value: lensType, hasher: &hasher) } } @@ -281,10 +337,23 @@ struct PlatformCameraState: Hashable { ] } static func == (lhs: PlatformCameraState, rhs: PlatformCameraState) -> Bool { - return deepEqualsMessages(lhs.toList(), rhs.toList()) + if Swift.type(of: lhs) != Swift.type(of: rhs) { + return false + } + return deepEqualsMessages(lhs.previewSize, rhs.previewSize) + && deepEqualsMessages(lhs.exposureMode, rhs.exposureMode) + && deepEqualsMessages(lhs.focusMode, rhs.focusMode) + && deepEqualsMessages(lhs.exposurePointSupported, rhs.exposurePointSupported) + && deepEqualsMessages(lhs.focusPointSupported, rhs.focusPointSupported) } + func hash(into hasher: inout Hasher) { - deepHashMessages(value: toList(), hasher: &hasher) + hasher.combine("PlatformCameraState") + deepHashMessages(value: previewSize, hasher: &hasher) + deepHashMessages(value: exposureMode, hasher: &hasher) + deepHashMessages(value: focusMode, hasher: &hasher) + deepHashMessages(value: exposurePointSupported, hasher: &hasher) + deepHashMessages(value: focusPointSupported, hasher: &hasher) } } @@ -331,10 +400,26 @@ struct PlatformCameraImageData: Hashable { ] } static func == (lhs: PlatformCameraImageData, rhs: PlatformCameraImageData) -> Bool { - return deepEqualsMessages(lhs.toList(), rhs.toList()) + if Swift.type(of: lhs) != Swift.type(of: rhs) { + return false + } + return deepEqualsMessages(lhs.formatCode, rhs.formatCode) + && deepEqualsMessages(lhs.width, rhs.width) && deepEqualsMessages(lhs.height, rhs.height) + && deepEqualsMessages(lhs.planes, rhs.planes) + && deepEqualsMessages(lhs.lensAperture, rhs.lensAperture) + && deepEqualsMessages(lhs.sensorExposureTimeNanoseconds, rhs.sensorExposureTimeNanoseconds) + && deepEqualsMessages(lhs.sensorSensitivity, rhs.sensorSensitivity) } + func hash(into hasher: inout Hasher) { - deepHashMessages(value: toList(), hasher: &hasher) + hasher.combine("PlatformCameraImageData") + deepHashMessages(value: formatCode, hasher: &hasher) + deepHashMessages(value: width, hasher: &hasher) + deepHashMessages(value: height, hasher: &hasher) + deepHashMessages(value: planes, hasher: &hasher) + deepHashMessages(value: lensAperture, hasher: &hasher) + deepHashMessages(value: sensorExposureTimeNanoseconds, hasher: &hasher) + deepHashMessages(value: sensorSensitivity, hasher: &hasher) } } @@ -368,10 +453,20 @@ struct PlatformCameraImagePlane: Hashable { ] } static func == (lhs: PlatformCameraImagePlane, rhs: PlatformCameraImagePlane) -> Bool { - return deepEqualsMessages(lhs.toList(), rhs.toList()) + if Swift.type(of: lhs) != Swift.type(of: rhs) { + return false + } + return deepEqualsMessages(lhs.bytes, rhs.bytes) + && deepEqualsMessages(lhs.bytesPerRow, rhs.bytesPerRow) + && deepEqualsMessages(lhs.width, rhs.width) && deepEqualsMessages(lhs.height, rhs.height) } + func hash(into hasher: inout Hasher) { - deepHashMessages(value: toList(), hasher: &hasher) + hasher.combine("PlatformCameraImagePlane") + deepHashMessages(value: bytes, hasher: &hasher) + deepHashMessages(value: bytesPerRow, hasher: &hasher) + deepHashMessages(value: width, hasher: &hasher) + deepHashMessages(value: height, hasher: &hasher) } } @@ -409,10 +504,23 @@ struct PlatformMediaSettings: Hashable { ] } static func == (lhs: PlatformMediaSettings, rhs: PlatformMediaSettings) -> Bool { - return deepEqualsMessages(lhs.toList(), rhs.toList()) + if Swift.type(of: lhs) != Swift.type(of: rhs) { + return false + } + return deepEqualsMessages(lhs.resolutionPreset, rhs.resolutionPreset) + && deepEqualsMessages(lhs.framesPerSecond, rhs.framesPerSecond) + && deepEqualsMessages(lhs.videoBitrate, rhs.videoBitrate) + && deepEqualsMessages(lhs.audioBitrate, rhs.audioBitrate) + && deepEqualsMessages(lhs.enableAudio, rhs.enableAudio) } + func hash(into hasher: inout Hasher) { - deepHashMessages(value: toList(), hasher: &hasher) + hasher.combine("PlatformMediaSettings") + deepHashMessages(value: resolutionPreset, hasher: &hasher) + deepHashMessages(value: framesPerSecond, hasher: &hasher) + deepHashMessages(value: videoBitrate, hasher: &hasher) + deepHashMessages(value: audioBitrate, hasher: &hasher) + deepHashMessages(value: enableAudio, hasher: &hasher) } } @@ -438,10 +546,16 @@ struct PlatformPoint: Hashable { ] } static func == (lhs: PlatformPoint, rhs: PlatformPoint) -> Bool { - return deepEqualsMessages(lhs.toList(), rhs.toList()) + if Swift.type(of: lhs) != Swift.type(of: rhs) { + return false + } + return deepEqualsMessages(lhs.x, rhs.x) && deepEqualsMessages(lhs.y, rhs.y) } + func hash(into hasher: inout Hasher) { - deepHashMessages(value: toList(), hasher: &hasher) + hasher.combine("PlatformPoint") + deepHashMessages(value: x, hasher: &hasher) + deepHashMessages(value: y, hasher: &hasher) } } @@ -467,10 +581,16 @@ struct PlatformSize: Hashable { ] } static func == (lhs: PlatformSize, rhs: PlatformSize) -> Bool { - return deepEqualsMessages(lhs.toList(), rhs.toList()) + if Swift.type(of: lhs) != Swift.type(of: rhs) { + return false + } + return deepEqualsMessages(lhs.width, rhs.width) && deepEqualsMessages(lhs.height, rhs.height) } + func hash(into hasher: inout Hasher) { - deepHashMessages(value: toList(), hasher: &hasher) + hasher.combine("PlatformSize") + deepHashMessages(value: width, hasher: &hasher) + deepHashMessages(value: height, hasher: &hasher) } } @@ -671,7 +791,9 @@ protocol CameraApi { func prepareForVideoRecording(completion: @escaping (Result) -> Void) /// Begins recording video, optionally enabling streaming to Dart at the same /// time. - func startVideoRecording(enableStream: Bool, completion: @escaping (Result) -> Void) + func startVideoRecording( + enableStream: Bool, videoOutputPath: String?, + completion: @escaping (Result) -> Void) /// Stops recording video, and results the path to the resulting file. func stopVideoRecording(completion: @escaping (Result) -> Void) /// Pauses video recording. @@ -960,7 +1082,9 @@ class CameraApiSetup { startVideoRecordingChannel.setMessageHandler { message, reply in let args = message as! [Any?] let enableStreamArg = args[0] as! Bool - api.startVideoRecording(enableStream: enableStreamArg) { result in + let videoOutputPathArg: String? = nilOrValue(args[1]) + api.startVideoRecording(enableStream: enableStreamArg, videoOutputPath: videoOutputPathArg) + { result in switch result { case .success: reply(wrapResult(nil)) diff --git a/packages/camera/camera_avfoundation/lib/src/avfoundation_camera.dart b/packages/camera/camera_avfoundation/lib/src/avfoundation_camera.dart index 3907ed89219b..90af87799420 100644 --- a/packages/camera/camera_avfoundation/lib/src/avfoundation_camera.dart +++ b/packages/camera/camera_avfoundation/lib/src/avfoundation_camera.dart @@ -214,7 +214,10 @@ class AVFoundationCamera extends CameraPlatform { @override Future startVideoCapturing(VideoCaptureOptions options) async { // Max video duration is currently not supported. - await _hostApi.startVideoRecording(options.streamCallback != null); + await _hostApi.startVideoRecording( + options.streamCallback != null, + options.videoOutputPath, + ); if (options.streamCallback != null) { _frameStreamController = _createStreamController(); diff --git a/packages/camera/camera_avfoundation/lib/src/messages.g.dart b/packages/camera/camera_avfoundation/lib/src/messages.g.dart index 46c94d58f8a1..b2929886b864 100644 --- a/packages/camera/camera_avfoundation/lib/src/messages.g.dart +++ b/packages/camera/camera_avfoundation/lib/src/messages.g.dart @@ -1,21 +1,40 @@ // Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Autogenerated from Pigeon (v26.1.5), do not edit directly. +// Autogenerated from Pigeon (v26.3.4), do not edit directly. // See also: https://pub.dev/packages/pigeon -// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, omit_obvious_local_variable_types, unused_shown_name, unnecessary_import, no_leading_underscores_for_local_identifiers +// ignore_for_file: unused_import, unused_shown_name +// ignore_for_file: type=lint import 'dart:async'; -import 'dart:typed_data' show Float64List, Int32List, Int64List, Uint8List; +import 'dart:typed_data' show Float64List, Int32List, Int64List; -import 'package:flutter/foundation.dart' show ReadBuffer, WriteBuffer; import 'package:flutter/services.dart'; +import 'package:meta/meta.dart' show immutable, protected, visibleForTesting; -PlatformException _createConnectionError(String channelName) { - return PlatformException( - code: 'channel-error', - message: 'Unable to establish connection on channel: "$channelName".', - ); +Object? _extractReplyValueOrThrow( + List? replyList, + String channelName, { + required bool isNullValid, +}) { + if (replyList == null) { + throw PlatformException( + code: 'channel-error', + message: 'Unable to establish connection on channel: "$channelName".', + ); + } else if (replyList.length > 1) { + throw PlatformException( + code: replyList[0]! as String, + message: replyList[1] as String?, + details: replyList[2], + ); + } else if (!isNullValid && (replyList.isNotEmpty && replyList[0] == null)) { + throw PlatformException( + code: 'null-error', + message: 'Host platform returned null value for non-null return value.', + ); + } + return replyList.firstOrNull; } List wrapResponse({ @@ -33,6 +52,15 @@ List wrapResponse({ } bool _deepEquals(Object? a, Object? b) { + if (identical(a, b)) { + return true; + } + if (a is double && b is double) { + if (a.isNaN && b.isNaN) { + return true; + } + return a == b; + } if (a is List && b is List) { return a.length == b.length && a.indexed.every( @@ -40,16 +68,52 @@ bool _deepEquals(Object? a, Object? b) { ); } if (a is Map && b is Map) { - return a.length == b.length && - a.entries.every( - (MapEntry entry) => - (b as Map).containsKey(entry.key) && - _deepEquals(entry.value, b[entry.key]), - ); + if (a.length != b.length) { + return false; + } + for (final MapEntry entryA in a.entries) { + bool found = false; + for (final MapEntry entryB in b.entries) { + if (_deepEquals(entryA.key, entryB.key)) { + if (_deepEquals(entryA.value, entryB.value)) { + found = true; + break; + } else { + return false; + } + } + } + if (!found) { + return false; + } + } + return true; } return a == b; } +int _deepHash(Object? value) { + if (value is List) { + return Object.hashAll(value.map(_deepHash)); + } + if (value is Map) { + int result = 0; + for (final MapEntry entry in value.entries) { + result += (_deepHash(entry.key) * 31) ^ _deepHash(entry.value); + } + return result; + } + if (value is double && value.isNaN) { + // Normalize NaN to a consistent hash. + return 0x7FF8000000000000.hashCode; + } + if (value is double && value == 0.0) { + // Normalize -0.0 to 0.0 so they have the same hash code. + return 0.0.hashCode; + } + return value.hashCode; +} + enum PlatformCameraLensDirection { /// Front facing camera (a user looking at the screen is seen by the camera). front, @@ -145,12 +209,14 @@ class PlatformCameraDescription { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(name, other.name) && + _deepEquals(lensDirection, other.lensDirection) && + _deepEquals(lensType, other.lensType); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } class PlatformCameraState { @@ -211,12 +277,16 @@ class PlatformCameraState { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(previewSize, other.previewSize) && + _deepEquals(exposureMode, other.exposureMode) && + _deepEquals(focusMode, other.focusMode) && + _deepEquals(exposurePointSupported, other.exposurePointSupported) && + _deepEquals(focusPointSupported, other.focusPointSupported); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } class PlatformCameraImageData { @@ -267,7 +337,7 @@ class PlatformCameraImageData { formatCode: result[0]! as int, width: result[1]! as int, height: result[2]! as int, - planes: (result[3] as List?)!.cast(), + planes: (result[3]! as List).cast(), lensAperture: result[4]! as double, sensorExposureTimeNanoseconds: result[5]! as int, sensorSensitivity: result[6]! as double, @@ -283,12 +353,21 @@ class PlatformCameraImageData { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(formatCode, other.formatCode) && + _deepEquals(width, other.width) && + _deepEquals(height, other.height) && + _deepEquals(planes, other.planes) && + _deepEquals(lensAperture, other.lensAperture) && + _deepEquals( + sensorExposureTimeNanoseconds, + other.sensorExposureTimeNanoseconds, + ) && + _deepEquals(sensorSensitivity, other.sensorSensitivity); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } class PlatformCameraImagePlane { @@ -335,12 +414,15 @@ class PlatformCameraImagePlane { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(bytes, other.bytes) && + _deepEquals(bytesPerRow, other.bytesPerRow) && + _deepEquals(width, other.width) && + _deepEquals(height, other.height); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } class PlatformMediaSettings { @@ -396,12 +478,16 @@ class PlatformMediaSettings { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(resolutionPreset, other.resolutionPreset) && + _deepEquals(framesPerSecond, other.framesPerSecond) && + _deepEquals(videoBitrate, other.videoBitrate) && + _deepEquals(audioBitrate, other.audioBitrate) && + _deepEquals(enableAudio, other.enableAudio); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } class PlatformPoint { @@ -433,12 +519,12 @@ class PlatformPoint { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(x, other.x) && _deepEquals(y, other.y); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } class PlatformSize { @@ -473,12 +559,12 @@ class PlatformSize { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(width, other.width) && _deepEquals(height, other.height); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } class _PigeonCodec extends StandardMessageCodec { @@ -631,23 +717,14 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as List?)! - .cast(); - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return (pigeonVar_replyValue! as List) + .cast(); } /// Create a new camera with the given settings, and returns its ID. @@ -663,22 +740,13 @@ class CameraApi { [cameraName, settings], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as int?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as int; } /// Initializes the camera with the given ID. @@ -697,17 +765,12 @@ class CameraApi { [cameraId, imageFormat], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Begins streaming frames from the camera. @@ -721,17 +784,12 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Stops streaming frames from the camera. @@ -745,17 +803,12 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Called by the Dart side of the plugin when it has received the last image @@ -772,17 +825,12 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Indicates that the given camera is no longer being used on the Dart side, @@ -799,17 +847,12 @@ class CameraApi { [cameraId], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Locks the camera capture to the current device orientation. @@ -827,17 +870,12 @@ class CameraApi { [orientation], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Unlocks camera capture orientation, allowing it to automatically adapt to @@ -852,17 +890,12 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Takes a picture with the current settings, and returns the path to the @@ -877,22 +910,13 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as String?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as String; } /// Does any preprocessing necessary before beginning to record video. @@ -906,22 +930,20 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Begins recording video, optionally enabling streaming to Dart at the same /// time. - Future startVideoRecording(bool enableStream) async { + Future startVideoRecording( + bool enableStream, + String? videoOutputPath, + ) async { final pigeonVar_channelName = 'dev.flutter.pigeon.camera_avfoundation.CameraApi.startVideoRecording$pigeonVar_messageChannelSuffix'; final pigeonVar_channel = BasicMessageChannel( @@ -930,20 +952,15 @@ class CameraApi { binaryMessenger: pigeonVar_binaryMessenger, ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [enableStream], + [enableStream, videoOutputPath], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Stops recording video, and results the path to the resulting file. @@ -957,22 +974,13 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as String?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as String; } /// Pauses video recording. @@ -986,17 +994,12 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Resumes a previously paused video recording. @@ -1010,17 +1013,12 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Switches the camera to the given flash mode. @@ -1036,17 +1034,12 @@ class CameraApi { [mode], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Switches the camera to the given exposure mode. @@ -1062,17 +1055,12 @@ class CameraApi { [mode], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Anchors auto-exposure to the given point in (0,1) coordinate space. @@ -1090,17 +1078,12 @@ class CameraApi { [point], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Returns the minimum exposure offset supported by the camera. @@ -1114,22 +1097,13 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } /// Returns the maximum exposure offset supported by the camera. @@ -1143,22 +1117,13 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } /// Sets the exposure offset manually to the given value. @@ -1174,17 +1139,12 @@ class CameraApi { [offset], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Switches the camera to the given focus mode. @@ -1200,17 +1160,12 @@ class CameraApi { [mode], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Anchors auto-focus to the given point in (0,1) coordinate space. @@ -1228,17 +1183,12 @@ class CameraApi { [point], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Returns the minimum zoom level supported by the camera. @@ -1252,22 +1202,13 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } /// Returns the maximum zoom level supported by the camera. @@ -1281,22 +1222,13 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } /// Sets the zoom factor. @@ -1312,17 +1244,12 @@ class CameraApi { [zoom], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Sets the video stabilization mode. @@ -1340,17 +1267,12 @@ class CameraApi { [mode], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Gets if the given video stabilization mode is supported. @@ -1368,22 +1290,13 @@ class CameraApi { [mode], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as bool?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as bool; } /// Pauses streaming of preview frames. @@ -1397,17 +1310,12 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Resumes a previously paused preview stream. @@ -1421,17 +1329,12 @@ class CameraApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Changes the camera used while recording video. @@ -1449,17 +1352,12 @@ class CameraApi { [cameraName], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Sets the file format used for taking pictures. @@ -1475,17 +1373,12 @@ class CameraApi { [format], ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } } @@ -1527,19 +1420,11 @@ abstract class CameraGlobalEventApi { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_avfoundation.CameraGlobalEventApi.deviceOrientationChanged was null.', - ); - final List args = (message as List?)!; - final PlatformDeviceOrientation? arg_orientation = - (args[0] as PlatformDeviceOrientation?); - assert( - arg_orientation != null, - 'Argument for dev.flutter.pigeon.camera_avfoundation.CameraGlobalEventApi.deviceOrientationChanged was null, expected non-null PlatformDeviceOrientation.', - ); + final List args = message! as List; + final PlatformDeviceOrientation arg_orientation = + args[0]! as PlatformDeviceOrientation; try { - api.deviceOrientationChanged(arg_orientation!); + api.deviceOrientationChanged(arg_orientation); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); @@ -1587,19 +1472,11 @@ abstract class CameraEventApi { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_avfoundation.CameraEventApi.initialized was null.', - ); - final List args = (message as List?)!; - final PlatformCameraState? arg_initialState = - (args[0] as PlatformCameraState?); - assert( - arg_initialState != null, - 'Argument for dev.flutter.pigeon.camera_avfoundation.CameraEventApi.initialized was null, expected non-null PlatformCameraState.', - ); + final List args = message! as List; + final PlatformCameraState arg_initialState = + args[0]! as PlatformCameraState; try { - api.initialized(arg_initialState!); + api.initialized(arg_initialState); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); @@ -1621,18 +1498,10 @@ abstract class CameraEventApi { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_avfoundation.CameraEventApi.error was null.', - ); - final List args = (message as List?)!; - final String? arg_message = (args[0] as String?); - assert( - arg_message != null, - 'Argument for dev.flutter.pigeon.camera_avfoundation.CameraEventApi.error was null, expected non-null String.', - ); + final List args = message! as List; + final String arg_message = args[0]! as String; try { - api.error(arg_message!); + api.error(arg_message); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); diff --git a/packages/camera/camera_avfoundation/pigeons/messages.dart b/packages/camera/camera_avfoundation/pigeons/messages.dart index b4976758cf47..3ffa4d2e1bdd 100644 --- a/packages/camera/camera_avfoundation/pigeons/messages.dart +++ b/packages/camera/camera_avfoundation/pigeons/messages.dart @@ -247,8 +247,8 @@ abstract class CameraApi { /// Begins recording video, optionally enabling streaming to Dart at the same /// time. @async - @ObjCSelector('startVideoRecordingWithStreaming:') - void startVideoRecording(bool enableStream); + @ObjCSelector('startVideoRecordingWithStreaming:videoOutputPath:') + void startVideoRecording(bool enableStream, String? videoOutputPath); /// Stops recording video, and results the path to the resulting file. @async diff --git a/packages/camera/camera_avfoundation/pubspec.yaml b/packages/camera/camera_avfoundation/pubspec.yaml index 8a10d0d21f72..e7e230392348 100644 --- a/packages/camera/camera_avfoundation/pubspec.yaml +++ b/packages/camera/camera_avfoundation/pubspec.yaml @@ -33,3 +33,7 @@ dev_dependencies: topics: - camera +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_avfoundation/test/avfoundation_camera_test.dart b/packages/camera/camera_avfoundation/test/avfoundation_camera_test.dart index 53d7965c6bac..d18af8dc4541 100644 --- a/packages/camera/camera_avfoundation/test/avfoundation_camera_test.dart +++ b/packages/camera/camera_avfoundation/test/avfoundation_camera_test.dart @@ -470,7 +470,7 @@ void main() { test('Should start recording a video', () async { await camera.startVideoRecording(cameraId); - verify(mockApi.startVideoRecording(any)); + verify(mockApi.startVideoRecording(any, any)); }); test( @@ -483,7 +483,7 @@ void main() { ), ); - verify(mockApi.startVideoRecording(true)); + verify(mockApi.startVideoRecording(true, any)); }, ); diff --git a/packages/camera/camera_avfoundation/test/avfoundation_camera_test.mocks.dart b/packages/camera/camera_avfoundation/test/avfoundation_camera_test.mocks.dart index 225eac9931c6..27ce5dfcc3fa 100644 --- a/packages/camera/camera_avfoundation/test/avfoundation_camera_test.mocks.dart +++ b/packages/camera/camera_avfoundation/test/avfoundation_camera_test.mocks.dart @@ -22,6 +22,7 @@ import 'package:mockito/src/dummies.dart' as _i3; // ignore_for_file: unnecessary_parenthesis // ignore_for_file: camel_case_types // ignore_for_file: subtype_of_sealed_class +// ignore_for_file: invalid_use_of_internal_member /// A class which mocks [CameraApi]. /// @@ -159,9 +160,15 @@ class MockCameraApi extends _i1.Mock implements _i2.CameraApi { as _i4.Future); @override - _i4.Future startVideoRecording(bool? enableStream) => + _i4.Future startVideoRecording( + bool? enableStream, + String? videoOutputPath, + ) => (super.noSuchMethod( - Invocation.method(#startVideoRecording, [enableStream]), + Invocation.method(#startVideoRecording, [ + enableStream, + videoOutputPath, + ]), returnValue: _i4.Future.value(), returnValueForMissingStub: _i4.Future.value(), ) diff --git a/packages/camera/camera_platform_interface/CHANGELOG.md b/packages/camera/camera_platform_interface/CHANGELOG.md index fc4a7de9d71e..78ead9d08bd2 100644 --- a/packages/camera/camera_platform_interface/CHANGELOG.md +++ b/packages/camera/camera_platform_interface/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.14.0 + +* Adds `videoOutputPath` support to `MethodChannelCamera.startVideoRecording`. + ## 2.13.0 * Updates minimum supported SDK version to Flutter 3.35/Dart 3.9. diff --git a/packages/camera/camera_platform_interface/lib/src/method_channel/method_channel_camera.dart b/packages/camera/camera_platform_interface/lib/src/method_channel/method_channel_camera.dart index 97c4107668f5..3caa3634b40f 100644 --- a/packages/camera/camera_platform_interface/lib/src/method_channel/method_channel_camera.dart +++ b/packages/camera/camera_platform_interface/lib/src/method_channel/method_channel_camera.dart @@ -266,6 +266,7 @@ class MethodChannelCamera extends CameraPlatform { 'cameraId': options.cameraId, 'maxVideoDuration': options.maxDuration?.inMilliseconds, 'enableStream': options.streamCallback != null, + 'videoOutputPath': options.videoOutputPath, }); if (options.streamCallback != null) { diff --git a/packages/camera/camera_platform_interface/lib/src/types/video_capture_options.dart b/packages/camera/camera_platform_interface/lib/src/types/video_capture_options.dart index dda06fb4ce84..af1a8fd73887 100644 --- a/packages/camera/camera_platform_interface/lib/src/types/video_capture_options.dart +++ b/packages/camera/camera_platform_interface/lib/src/types/video_capture_options.dart @@ -19,6 +19,7 @@ class VideoCaptureOptions { this.streamCallback, this.streamOptions, this.enablePersistentRecording = true, + this.videoOutputPath, }) : assert( streamOptions == null || streamCallback != null, 'Must specify streamCallback if providing streamOptions.', @@ -55,6 +56,11 @@ class VideoCaptureOptions { /// Defaults to `true`. final bool enablePersistentRecording; + /// The path where the video should be saved. + /// + /// If null, the platform will generate a temporary path. + final String? videoOutputPath; + @override bool operator ==(Object other) => identical(this, other) || @@ -64,7 +70,8 @@ class VideoCaptureOptions { maxDuration == other.maxDuration && streamCallback == other.streamCallback && streamOptions == other.streamOptions && - enablePersistentRecording == other.enablePersistentRecording; + enablePersistentRecording == other.enablePersistentRecording && + videoOutputPath == other.videoOutputPath; @override int get hashCode => Object.hash( @@ -73,5 +80,6 @@ class VideoCaptureOptions { streamCallback, streamOptions, enablePersistentRecording, + videoOutputPath, ); } diff --git a/packages/camera/camera_platform_interface/pubspec.yaml b/packages/camera/camera_platform_interface/pubspec.yaml index 8336114d1837..272957c2bbd3 100644 --- a/packages/camera/camera_platform_interface/pubspec.yaml +++ b/packages/camera/camera_platform_interface/pubspec.yaml @@ -4,7 +4,7 @@ repository: https://github.com/flutter/packages/tree/main/packages/camera/camera issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 # NOTE: We strongly prefer non-breaking changes, even at the expense of a # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes -version: 2.13.0 +version: 2.14.0 environment: sdk: ^3.9.0 diff --git a/packages/camera/camera_platform_interface/test/method_channel/method_channel_camera_test.dart b/packages/camera/camera_platform_interface/test/method_channel/method_channel_camera_test.dart index a52d725cf442..9a2797d6368f 100644 --- a/packages/camera/camera_platform_interface/test/method_channel/method_channel_camera_test.dart +++ b/packages/camera/camera_platform_interface/test/method_channel/method_channel_camera_test.dart @@ -683,6 +683,7 @@ void main() { 'cameraId': cameraId, 'maxVideoDuration': null, 'enableStream': false, + 'videoOutputPath': null, }, ), ]); diff --git a/packages/camera/camera_web/CHANGELOG.md b/packages/camera/camera_web/CHANGELOG.md index 46d7958a8eb1..f191129cb75a 100644 --- a/packages/camera/camera_web/CHANGELOG.md +++ b/packages/camera/camera_web/CHANGELOG.md @@ -1,5 +1,6 @@ -## NEXT +## 0.3.5+4 +* Adds support for custom video output path in video recording. * Updates minimum supported SDK version to Flutter 3.35/Dart 3.9. ## 0.3.5+3 diff --git a/packages/camera/camera_web/example/integration_test/helpers/mocks.mocks.dart b/packages/camera/camera_web/example/integration_test/helpers/mocks.mocks.dart deleted file mode 100644 index 321507d77174..000000000000 --- a/packages/camera/camera_web/example/integration_test/helpers/mocks.mocks.dart +++ /dev/null @@ -1,718 +0,0 @@ -// Mocks generated by Mockito 5.4.5 from annotations -// in camera_web_integration_tests/integration_test/helpers/mocks.dart. -// Do not manually edit this file. - -// ignore_for_file: no_leading_underscores_for_library_prefixes -import 'dart:async' as _i5; -import 'dart:js_interop' as _i13; -import 'dart:ui' as _i4; - -import 'package:camera_platform_interface/camera_platform_interface.dart' - as _i7; -import 'package:camera_web/src/camera.dart' as _i10; -import 'package:camera_web/src/camera_service.dart' as _i8; -import 'package:camera_web/src/shims/dart_js_util.dart' as _i2; -import 'package:camera_web/src/types/types.dart' as _i3; -import 'package:flutter/services.dart' as _i11; -import 'package:mockito/mockito.dart' as _i1; -import 'package:mockito/src/dummies.dart' as _i12; -import 'package:web/web.dart' as _i6; - -import 'mocks.dart' as _i9; - -// ignore_for_file: type=lint -// ignore_for_file: avoid_redundant_argument_values -// ignore_for_file: avoid_setters_without_getters -// ignore_for_file: comment_references -// ignore_for_file: deprecated_member_use -// ignore_for_file: deprecated_member_use_from_same_package -// ignore_for_file: implementation_imports -// ignore_for_file: invalid_use_of_visible_for_testing_member -// ignore_for_file: must_be_immutable -// ignore_for_file: prefer_const_constructors -// ignore_for_file: unnecessary_parenthesis -// ignore_for_file: camel_case_types -// ignore_for_file: subtype_of_sealed_class - -class _FakeJsUtil_0 extends _i1.SmartFake implements _i2.JsUtil { - _FakeJsUtil_0(Object parent, Invocation parentInvocation) - : super(parent, parentInvocation); -} - -class _FakeZoomLevelCapability_1 extends _i1.SmartFake - implements _i3.ZoomLevelCapability { - _FakeZoomLevelCapability_1(Object parent, Invocation parentInvocation) - : super(parent, parentInvocation); -} - -class _FakeSize_2 extends _i1.SmartFake implements _i4.Size { - _FakeSize_2(Object parent, Invocation parentInvocation) - : super(parent, parentInvocation); -} - -class _FakeCameraOptions_3 extends _i1.SmartFake implements _i3.CameraOptions { - _FakeCameraOptions_3(Object parent, Invocation parentInvocation) - : super(parent, parentInvocation); -} - -class _FakeStreamController_4 extends _i1.SmartFake - implements _i5.StreamController { - _FakeStreamController_4(Object parent, Invocation parentInvocation) - : super(parent, parentInvocation); -} - -class _FakeEventStreamProvider_5 extends _i1.SmartFake - implements _i6.EventStreamProvider { - _FakeEventStreamProvider_5(Object parent, Invocation parentInvocation) - : super(parent, parentInvocation); -} - -class _FakeXFile_6 extends _i1.SmartFake implements _i7.XFile { - _FakeXFile_6(Object parent, Invocation parentInvocation) - : super(parent, parentInvocation); -} - -class _FakeAudioConstraints_7 extends _i1.SmartFake - implements _i3.AudioConstraints { - _FakeAudioConstraints_7(Object parent, Invocation parentInvocation) - : super(parent, parentInvocation); -} - -class _FakeVideoConstraints_8 extends _i1.SmartFake - implements _i3.VideoConstraints { - _FakeVideoConstraints_8(Object parent, Invocation parentInvocation) - : super(parent, parentInvocation); -} - -/// A class which mocks [CameraService]. -/// -/// See the documentation for Mockito's code generation for more information. -class MockCameraService extends _i1.Mock implements _i8.CameraService { - @override - _i6.Window get window => - (super.noSuchMethod( - Invocation.getter(#window), - returnValue: _i9.windowShim(), - returnValueForMissingStub: _i9.windowShim(), - ) - as _i6.Window); - - @override - set window(_i6.Window? _window) => super.noSuchMethod( - Invocation.setter(#window, _window), - returnValueForMissingStub: null, - ); - - @override - _i2.JsUtil get jsUtil => - (super.noSuchMethod( - Invocation.getter(#jsUtil), - returnValue: _FakeJsUtil_0(this, Invocation.getter(#jsUtil)), - returnValueForMissingStub: _FakeJsUtil_0( - this, - Invocation.getter(#jsUtil), - ), - ) - as _i2.JsUtil); - - @override - set jsUtil(_i2.JsUtil? _jsUtil) => super.noSuchMethod( - Invocation.setter(#jsUtil, _jsUtil), - returnValueForMissingStub: null, - ); - - @override - _i5.Future<_i6.MediaStream> getMediaStreamForOptions( - _i3.CameraOptions? options, { - int? cameraId = 0, - }) => - (super.noSuchMethod( - Invocation.method( - #getMediaStreamForOptions, - [options], - {#cameraId: cameraId}, - ), - returnValue: _i9.getMediaStreamForOptionsShim( - options, - cameraId: cameraId, - ), - returnValueForMissingStub: _i9.getMediaStreamForOptionsShim( - options, - cameraId: cameraId, - ), - ) - as _i5.Future<_i6.MediaStream>); - - @override - _i3.ZoomLevelCapability getZoomLevelCapabilityForCamera( - _i10.Camera? camera, - ) => - (super.noSuchMethod( - Invocation.method(#getZoomLevelCapabilityForCamera, [camera]), - returnValue: _FakeZoomLevelCapability_1( - this, - Invocation.method(#getZoomLevelCapabilityForCamera, [camera]), - ), - returnValueForMissingStub: _FakeZoomLevelCapability_1( - this, - Invocation.method(#getZoomLevelCapabilityForCamera, [camera]), - ), - ) - as _i3.ZoomLevelCapability); - - @override - String? getFacingModeForVideoTrack(_i6.MediaStreamTrack? videoTrack) => - (super.noSuchMethod( - Invocation.method(#getFacingModeForVideoTrack, [videoTrack]), - returnValueForMissingStub: null, - ) - as String?); - - @override - _i7.CameraLensDirection mapFacingModeToLensDirection(String? facingMode) => - (super.noSuchMethod( - Invocation.method(#mapFacingModeToLensDirection, [facingMode]), - returnValue: _i7.CameraLensDirection.front, - returnValueForMissingStub: _i7.CameraLensDirection.front, - ) - as _i7.CameraLensDirection); - - @override - _i3.CameraType mapFacingModeToCameraType(String? facingMode) => - (super.noSuchMethod( - Invocation.method(#mapFacingModeToCameraType, [facingMode]), - returnValue: _i3.CameraType.environment, - returnValueForMissingStub: _i3.CameraType.environment, - ) - as _i3.CameraType); - - @override - _i4.Size mapResolutionPresetToSize(_i7.ResolutionPreset? resolutionPreset) => - (super.noSuchMethod( - Invocation.method(#mapResolutionPresetToSize, [resolutionPreset]), - returnValue: _FakeSize_2( - this, - Invocation.method(#mapResolutionPresetToSize, [resolutionPreset]), - ), - returnValueForMissingStub: _FakeSize_2( - this, - Invocation.method(#mapResolutionPresetToSize, [resolutionPreset]), - ), - ) - as _i4.Size); - - @override - int mapResolutionPresetToVideoBitrate( - _i7.ResolutionPreset? resolutionPreset, - ) => - (super.noSuchMethod( - Invocation.method(#mapResolutionPresetToVideoBitrate, [ - resolutionPreset, - ]), - returnValue: 0, - returnValueForMissingStub: 0, - ) - as int); - - @override - int mapResolutionPresetToAudioBitrate( - _i7.ResolutionPreset? resolutionPreset, - ) => - (super.noSuchMethod( - Invocation.method(#mapResolutionPresetToAudioBitrate, [ - resolutionPreset, - ]), - returnValue: 0, - returnValueForMissingStub: 0, - ) - as int); - - @override - String mapDeviceOrientationToOrientationType( - _i11.DeviceOrientation? deviceOrientation, - ) => - (super.noSuchMethod( - Invocation.method(#mapDeviceOrientationToOrientationType, [ - deviceOrientation, - ]), - returnValue: _i12.dummyValue( - this, - Invocation.method(#mapDeviceOrientationToOrientationType, [ - deviceOrientation, - ]), - ), - returnValueForMissingStub: _i12.dummyValue( - this, - Invocation.method(#mapDeviceOrientationToOrientationType, [ - deviceOrientation, - ]), - ), - ) - as String); - - @override - _i11.DeviceOrientation mapOrientationTypeToDeviceOrientation( - String? orientationType, - ) => - (super.noSuchMethod( - Invocation.method(#mapOrientationTypeToDeviceOrientation, [ - orientationType, - ]), - returnValue: _i11.DeviceOrientation.portraitUp, - returnValueForMissingStub: _i11.DeviceOrientation.portraitUp, - ) - as _i11.DeviceOrientation); -} - -/// A class which mocks [JsUtil]. -/// -/// See the documentation for Mockito's code generation for more information. -class MockJsUtil extends _i1.Mock implements _i2.JsUtil { - @override - bool hasProperty(_i13.JSObject? o, _i13.JSAny? name) => - (super.noSuchMethod( - Invocation.method(#hasProperty, [o, name]), - returnValue: false, - returnValueForMissingStub: false, - ) - as bool); - - @override - _i13.JSAny? getProperty(_i13.JSObject? o, _i13.JSAny? name) => - (super.noSuchMethod( - Invocation.method(#getProperty, [o, name]), - returnValueForMissingStub: null, - ) - as _i13.JSAny?); -} - -/// A class which mocks [Camera]. -/// -/// See the documentation for Mockito's code generation for more information. -class MockCamera extends _i1.Mock implements _i10.Camera { - @override - int get textureId => - (super.noSuchMethod( - Invocation.getter(#textureId), - returnValue: 0, - returnValueForMissingStub: 0, - ) - as int); - - @override - _i3.CameraOptions get options => - (super.noSuchMethod( - Invocation.getter(#options), - returnValue: _FakeCameraOptions_3( - this, - Invocation.getter(#options), - ), - returnValueForMissingStub: _FakeCameraOptions_3( - this, - Invocation.getter(#options), - ), - ) - as _i3.CameraOptions); - - @override - ({int? audioBitrate, int? videoBitrate}) get recorderOptions => - (super.noSuchMethod( - Invocation.getter(#recorderOptions), - returnValue: (audioBitrate: null, videoBitrate: null), - returnValueForMissingStub: (audioBitrate: null, videoBitrate: null), - ) - as ({int? audioBitrate, int? videoBitrate})); - - @override - _i6.HTMLVideoElement get videoElement => - (super.noSuchMethod( - Invocation.getter(#videoElement), - returnValue: _i9.videoElementShim(), - returnValueForMissingStub: _i9.videoElementShim(), - ) - as _i6.HTMLVideoElement); - - @override - set videoElement(_i6.HTMLVideoElement? _videoElement) => super.noSuchMethod( - Invocation.setter(#videoElement, _videoElement), - returnValueForMissingStub: null, - ); - - @override - _i6.HTMLDivElement get divElement => - (super.noSuchMethod( - Invocation.getter(#divElement), - returnValue: _i9.divElementShim(), - returnValueForMissingStub: _i9.divElementShim(), - ) - as _i6.HTMLDivElement); - - @override - set divElement(_i6.HTMLDivElement? _divElement) => super.noSuchMethod( - Invocation.setter(#divElement, _divElement), - returnValueForMissingStub: null, - ); - - @override - set stream(_i6.MediaStream? _stream) => super.noSuchMethod( - Invocation.setter(#stream, _stream), - returnValueForMissingStub: null, - ); - - @override - _i5.StreamController<_i6.MediaStreamTrack> get onEndedController => - (super.noSuchMethod( - Invocation.getter(#onEndedController), - returnValue: _FakeStreamController_4<_i6.MediaStreamTrack>( - this, - Invocation.getter(#onEndedController), - ), - returnValueForMissingStub: - _FakeStreamController_4<_i6.MediaStreamTrack>( - this, - Invocation.getter(#onEndedController), - ), - ) - as _i5.StreamController<_i6.MediaStreamTrack>); - - @override - _i6.EventStreamProvider<_i6.Event> get mediaRecorderOnErrorProvider => - (super.noSuchMethod( - Invocation.getter(#mediaRecorderOnErrorProvider), - returnValue: _FakeEventStreamProvider_5<_i6.Event>( - this, - Invocation.getter(#mediaRecorderOnErrorProvider), - ), - returnValueForMissingStub: _FakeEventStreamProvider_5<_i6.Event>( - this, - Invocation.getter(#mediaRecorderOnErrorProvider), - ), - ) - as _i6.EventStreamProvider<_i6.Event>); - - @override - set mediaRecorderOnErrorProvider( - _i6.EventStreamProvider<_i6.Event>? _mediaRecorderOnErrorProvider, - ) => super.noSuchMethod( - Invocation.setter( - #mediaRecorderOnErrorProvider, - _mediaRecorderOnErrorProvider, - ), - returnValueForMissingStub: null, - ); - - @override - _i5.StreamController<_i6.ErrorEvent> get videoRecordingErrorController => - (super.noSuchMethod( - Invocation.getter(#videoRecordingErrorController), - returnValue: _FakeStreamController_4<_i6.ErrorEvent>( - this, - Invocation.getter(#videoRecordingErrorController), - ), - returnValueForMissingStub: _FakeStreamController_4<_i6.ErrorEvent>( - this, - Invocation.getter(#videoRecordingErrorController), - ), - ) - as _i5.StreamController<_i6.ErrorEvent>); - - @override - set flashMode(_i7.FlashMode? _flashMode) => super.noSuchMethod( - Invocation.setter(#flashMode, _flashMode), - returnValueForMissingStub: null, - ); - - @override - _i6.Window get window => - (super.noSuchMethod( - Invocation.getter(#window), - returnValue: _i9.windowShim(), - returnValueForMissingStub: _i9.windowShim(), - ) - as _i6.Window); - - @override - set window(_i6.Window? _window) => super.noSuchMethod( - Invocation.setter(#window, _window), - returnValueForMissingStub: null, - ); - - @override - set mediaRecorder(_i6.MediaRecorder? _mediaRecorder) => super.noSuchMethod( - Invocation.setter(#mediaRecorder, _mediaRecorder), - returnValueForMissingStub: null, - ); - - @override - bool Function(String) get isVideoTypeSupported => - (super.noSuchMethod( - Invocation.getter(#isVideoTypeSupported), - returnValue: (String __p0) => false, - returnValueForMissingStub: (String __p0) => false, - ) - as bool Function(String)); - - @override - set isVideoTypeSupported(bool Function(String)? _isVideoTypeSupported) => - super.noSuchMethod( - Invocation.setter(#isVideoTypeSupported, _isVideoTypeSupported), - returnValueForMissingStub: null, - ); - - @override - _i6.Blob Function(List<_i6.Blob>, String) get blobBuilder => - (super.noSuchMethod( - Invocation.getter(#blobBuilder), - returnValue: _i9.blobBuilderShim(), - returnValueForMissingStub: _i9.blobBuilderShim(), - ) - as _i6.Blob Function(List<_i6.Blob>, String)); - - @override - set blobBuilder(_i6.Blob Function(List<_i6.Blob>, String)? _blobBuilder) => - super.noSuchMethod( - Invocation.setter(#blobBuilder, _blobBuilder), - returnValueForMissingStub: null, - ); - - @override - _i5.StreamController<_i7.VideoRecordedEvent> get videoRecorderController => - (super.noSuchMethod( - Invocation.getter(#videoRecorderController), - returnValue: _FakeStreamController_4<_i7.VideoRecordedEvent>( - this, - Invocation.getter(#videoRecorderController), - ), - returnValueForMissingStub: - _FakeStreamController_4<_i7.VideoRecordedEvent>( - this, - Invocation.getter(#videoRecorderController), - ), - ) - as _i5.StreamController<_i7.VideoRecordedEvent>); - - @override - _i5.Stream<_i6.MediaStreamTrack> get onEnded => - (super.noSuchMethod( - Invocation.getter(#onEnded), - returnValue: _i5.Stream<_i6.MediaStreamTrack>.empty(), - returnValueForMissingStub: _i5.Stream<_i6.MediaStreamTrack>.empty(), - ) - as _i5.Stream<_i6.MediaStreamTrack>); - - @override - _i5.Stream<_i6.ErrorEvent> get onVideoRecordingError => - (super.noSuchMethod( - Invocation.getter(#onVideoRecordingError), - returnValue: _i5.Stream<_i6.ErrorEvent>.empty(), - returnValueForMissingStub: _i5.Stream<_i6.ErrorEvent>.empty(), - ) - as _i5.Stream<_i6.ErrorEvent>); - - @override - _i5.Stream<_i7.VideoRecordedEvent> get onVideoRecordedEvent => - (super.noSuchMethod( - Invocation.getter(#onVideoRecordedEvent), - returnValue: _i5.Stream<_i7.VideoRecordedEvent>.empty(), - returnValueForMissingStub: - _i5.Stream<_i7.VideoRecordedEvent>.empty(), - ) - as _i5.Stream<_i7.VideoRecordedEvent>); - - @override - _i5.Future initialize() => - (super.noSuchMethod( - Invocation.method(#initialize, []), - returnValue: _i5.Future.value(), - returnValueForMissingStub: _i5.Future.value(), - ) - as _i5.Future); - - @override - _i5.Future play() => - (super.noSuchMethod( - Invocation.method(#play, []), - returnValue: _i5.Future.value(), - returnValueForMissingStub: _i5.Future.value(), - ) - as _i5.Future); - - @override - void pause() => super.noSuchMethod( - Invocation.method(#pause, []), - returnValueForMissingStub: null, - ); - - @override - void stop() => super.noSuchMethod( - Invocation.method(#stop, []), - returnValueForMissingStub: null, - ); - - @override - _i5.Future<_i7.XFile> takePicture() => - (super.noSuchMethod( - Invocation.method(#takePicture, []), - returnValue: _i5.Future<_i7.XFile>.value( - _FakeXFile_6(this, Invocation.method(#takePicture, [])), - ), - returnValueForMissingStub: _i5.Future<_i7.XFile>.value( - _FakeXFile_6(this, Invocation.method(#takePicture, [])), - ), - ) - as _i5.Future<_i7.XFile>); - - @override - _i4.Size getVideoSize() => - (super.noSuchMethod( - Invocation.method(#getVideoSize, []), - returnValue: _FakeSize_2( - this, - Invocation.method(#getVideoSize, []), - ), - returnValueForMissingStub: _FakeSize_2( - this, - Invocation.method(#getVideoSize, []), - ), - ) - as _i4.Size); - - @override - void setFlashMode(_i7.FlashMode? mode) => super.noSuchMethod( - Invocation.method(#setFlashMode, [mode]), - returnValueForMissingStub: null, - ); - - @override - double getMaxZoomLevel() => - (super.noSuchMethod( - Invocation.method(#getMaxZoomLevel, []), - returnValue: 0.0, - returnValueForMissingStub: 0.0, - ) - as double); - - @override - double getMinZoomLevel() => - (super.noSuchMethod( - Invocation.method(#getMinZoomLevel, []), - returnValue: 0.0, - returnValueForMissingStub: 0.0, - ) - as double); - - @override - void setZoomLevel(double? zoom) => super.noSuchMethod( - Invocation.method(#setZoomLevel, [zoom]), - returnValueForMissingStub: null, - ); - - @override - String getViewType() => - (super.noSuchMethod( - Invocation.method(#getViewType, []), - returnValue: _i12.dummyValue( - this, - Invocation.method(#getViewType, []), - ), - returnValueForMissingStub: _i12.dummyValue( - this, - Invocation.method(#getViewType, []), - ), - ) - as String); - - @override - _i5.Future startVideoRecording() => - (super.noSuchMethod( - Invocation.method(#startVideoRecording, []), - returnValue: _i5.Future.value(), - returnValueForMissingStub: _i5.Future.value(), - ) - as _i5.Future); - - @override - _i5.Future pauseVideoRecording() => - (super.noSuchMethod( - Invocation.method(#pauseVideoRecording, []), - returnValue: _i5.Future.value(), - returnValueForMissingStub: _i5.Future.value(), - ) - as _i5.Future); - - @override - _i5.Future resumeVideoRecording() => - (super.noSuchMethod( - Invocation.method(#resumeVideoRecording, []), - returnValue: _i5.Future.value(), - returnValueForMissingStub: _i5.Future.value(), - ) - as _i5.Future); - - @override - _i5.Future<_i7.XFile> stopVideoRecording() => - (super.noSuchMethod( - Invocation.method(#stopVideoRecording, []), - returnValue: _i5.Future<_i7.XFile>.value( - _FakeXFile_6(this, Invocation.method(#stopVideoRecording, [])), - ), - returnValueForMissingStub: _i5.Future<_i7.XFile>.value( - _FakeXFile_6(this, Invocation.method(#stopVideoRecording, [])), - ), - ) - as _i5.Future<_i7.XFile>); - - @override - _i5.Future dispose() => - (super.noSuchMethod( - Invocation.method(#dispose, []), - returnValue: _i5.Future.value(), - returnValueForMissingStub: _i5.Future.value(), - ) - as _i5.Future); -} - -/// A class which mocks [CameraOptions]. -/// -/// See the documentation for Mockito's code generation for more information. -// ignore: must_be_immutable -class MockCameraOptions extends _i1.Mock implements _i3.CameraOptions { - @override - _i3.AudioConstraints get audio => - (super.noSuchMethod( - Invocation.getter(#audio), - returnValue: _FakeAudioConstraints_7( - this, - Invocation.getter(#audio), - ), - returnValueForMissingStub: _FakeAudioConstraints_7( - this, - Invocation.getter(#audio), - ), - ) - as _i3.AudioConstraints); - - @override - _i3.VideoConstraints get video => - (super.noSuchMethod( - Invocation.getter(#video), - returnValue: _FakeVideoConstraints_8( - this, - Invocation.getter(#video), - ), - returnValueForMissingStub: _FakeVideoConstraints_8( - this, - Invocation.getter(#video), - ), - ) - as _i3.VideoConstraints); - - @override - _i6.MediaStreamConstraints toMediaStreamConstraints() => - (super.noSuchMethod( - Invocation.method(#toMediaStreamConstraints, []), - returnValue: _i9.toMediaStreamConstraintsShim(), - returnValueForMissingStub: _i9.toMediaStreamConstraintsShim(), - ) - as _i6.MediaStreamConstraints); -} diff --git a/packages/camera/camera_web/example/pubspec.yaml b/packages/camera/camera_web/example/pubspec.yaml index ef786ec3cb1f..3181840cf109 100644 --- a/packages/camera/camera_web/example/pubspec.yaml +++ b/packages/camera/camera_web/example/pubspec.yaml @@ -27,3 +27,7 @@ dev_dependencies: integration_test: sdk: flutter mockito: ^5.4.4 +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_web/lib/src/camera.dart b/packages/camera/camera_web/lib/src/camera.dart index dd773d380c73..a59924c0ec55 100644 --- a/packages/camera/camera_web/lib/src/camera.dart +++ b/packages/camera/camera_web/lib/src/camera.dart @@ -144,6 +144,9 @@ class Camera { /// A listener fired when a video recording is stopped. void Function(web.Event)? _videoRecordingStoppedListener; + /// The output path for the video recording. + String? _videoOutputPath; + /// A builder to merge a list of blobs into a single blob. @visibleForTesting web.Blob Function(List blobs, String type) blobBuilder = @@ -455,7 +458,8 @@ class Camera { /// /// Throws a [CameraWebException] if the browser does not support any of the /// available video mime types from [_videoMimeType]. - Future startVideoRecording() async { + Future startVideoRecording({String? videoOutputPath}) async { + _videoOutputPath = videoOutputPath; final options = web.MediaRecorderOptions(mimeType: _videoMimeType); if (recorderOptions.audioBitrate != null) { options.audioBitsPerSecond = recorderOptions.audioBitrate!; @@ -512,7 +516,7 @@ class Camera { final file = XFile( web.URL.createObjectURL(videoBlob), mimeType: _videoMimeType, - name: videoBlob.hashCode.toString(), + name: _videoOutputPath ?? videoBlob.hashCode.toString(), ); // Emit an event containing the recorded video file. diff --git a/packages/camera/camera_web/lib/src/camera_web.dart b/packages/camera/camera_web/lib/src/camera_web.dart index 90033681d28a..72a67237c1cf 100644 --- a/packages/camera/camera_web/lib/src/camera_web.dart +++ b/packages/camera/camera_web/lib/src/camera_web.dart @@ -490,7 +490,9 @@ class CameraPlugin extends CameraPlatform { ); }); - return camera.startVideoRecording(); + return camera.startVideoRecording( + videoOutputPath: options.videoOutputPath, + ); } on web.DOMException catch (e) { throw PlatformException(code: e.name, message: e.message); } on CameraWebException catch (e) { diff --git a/packages/camera/camera_web/pubspec.yaml b/packages/camera/camera_web/pubspec.yaml index 4b3603756387..3eb9440e3bb1 100644 --- a/packages/camera/camera_web/pubspec.yaml +++ b/packages/camera/camera_web/pubspec.yaml @@ -2,7 +2,7 @@ name: camera_web description: A Flutter plugin for getting information about and controlling the camera on Web. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera_web issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.3.5+3 +version: 0.3.5+4 environment: sdk: ^3.9.0 @@ -31,3 +31,7 @@ dev_dependencies: topics: - camera +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_windows/example/pubspec.yaml b/packages/camera/camera_windows/example/pubspec.yaml index de8fa54b7a90..76030cc15399 100644 --- a/packages/camera/camera_windows/example/pubspec.yaml +++ b/packages/camera/camera_windows/example/pubspec.yaml @@ -27,3 +27,7 @@ dev_dependencies: flutter: uses-material-design: true +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_windows/lib/camera_windows.dart b/packages/camera/camera_windows/lib/camera_windows.dart index 80005024b143..8520fd0a324d 100644 --- a/packages/camera/camera_windows/lib/camera_windows.dart +++ b/packages/camera/camera_windows/lib/camera_windows.dart @@ -213,7 +213,10 @@ class CameraWindows extends CameraPlatform { } // Currently none of `options` is supported on Windows, so it's not passed. - await _hostApi.startVideoRecording(options.cameraId); + await _hostApi.startVideoRecording( + options.cameraId, + options.videoOutputPath, + ); } @override diff --git a/packages/camera/camera_windows/lib/src/messages.g.dart b/packages/camera/camera_windows/lib/src/messages.g.dart index 79407a5f97e2..031c23308d12 100644 --- a/packages/camera/camera_windows/lib/src/messages.g.dart +++ b/packages/camera/camera_windows/lib/src/messages.g.dart @@ -1,21 +1,40 @@ // Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Autogenerated from Pigeon (v26.1.0), do not edit directly. +// Autogenerated from Pigeon (v26.3.4), do not edit directly. // See also: https://pub.dev/packages/pigeon -// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import, no_leading_underscores_for_local_identifiers +// ignore_for_file: unused_import, unused_shown_name +// ignore_for_file: type=lint import 'dart:async'; -import 'dart:typed_data' show Float64List, Int32List, Int64List, Uint8List; +import 'dart:typed_data' show Float64List, Int32List, Int64List; -import 'package:flutter/foundation.dart' show ReadBuffer, WriteBuffer; import 'package:flutter/services.dart'; +import 'package:meta/meta.dart' show immutable, protected, visibleForTesting; -PlatformException _createConnectionError(String channelName) { - return PlatformException( - code: 'channel-error', - message: 'Unable to establish connection on channel: "$channelName".', - ); +Object? _extractReplyValueOrThrow( + List? replyList, + String channelName, { + required bool isNullValid, +}) { + if (replyList == null) { + throw PlatformException( + code: 'channel-error', + message: 'Unable to establish connection on channel: "$channelName".', + ); + } else if (replyList.length > 1) { + throw PlatformException( + code: replyList[0]! as String, + message: replyList[1] as String?, + details: replyList[2], + ); + } else if (!isNullValid && (replyList.isNotEmpty && replyList[0] == null)) { + throw PlatformException( + code: 'null-error', + message: 'Host platform returned null value for non-null return value.', + ); + } + return replyList.firstOrNull; } List wrapResponse({ @@ -33,6 +52,15 @@ List wrapResponse({ } bool _deepEquals(Object? a, Object? b) { + if (identical(a, b)) { + return true; + } + if (a is double && b is double) { + if (a.isNaN && b.isNaN) { + return true; + } + return a == b; + } if (a is List && b is List) { return a.length == b.length && a.indexed.every( @@ -40,16 +68,52 @@ bool _deepEquals(Object? a, Object? b) { ); } if (a is Map && b is Map) { - return a.length == b.length && - a.entries.every( - (MapEntry entry) => - (b as Map).containsKey(entry.key) && - _deepEquals(entry.value, b[entry.key]), - ); + if (a.length != b.length) { + return false; + } + for (final MapEntry entryA in a.entries) { + bool found = false; + for (final MapEntry entryB in b.entries) { + if (_deepEquals(entryA.key, entryB.key)) { + if (_deepEquals(entryA.value, entryB.value)) { + found = true; + break; + } else { + return false; + } + } + } + if (!found) { + return false; + } + } + return true; } return a == b; } +int _deepHash(Object? value) { + if (value is List) { + return Object.hashAll(value.map(_deepHash)); + } + if (value is Map) { + int result = 0; + for (final MapEntry entry in value.entries) { + result += (_deepHash(entry.key) * 31) ^ _deepHash(entry.value); + } + return result; + } + if (value is double && value.isNaN) { + // Normalize NaN to a consistent hash. + return 0x7FF8000000000000.hashCode; + } + if (value is double && value == 0.0) { + // Normalize -0.0 to 0.0 so they have the same hash code. + return 0.0.hashCode; + } + return value.hashCode; +} + /// Pigeon version of platform interface's ResolutionPreset. enum PlatformResolutionPreset { low, medium, high, veryHigh, ultraHigh, max } @@ -107,12 +171,16 @@ class PlatformMediaSettings { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(resolutionPreset, other.resolutionPreset) && + _deepEquals(framesPerSecond, other.framesPerSecond) && + _deepEquals(videoBitrate, other.videoBitrate) && + _deepEquals(audioBitrate, other.audioBitrate) && + _deepEquals(enableAudio, other.enableAudio); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } /// A representation of a size from the native camera APIs. @@ -148,12 +216,12 @@ class PlatformSize { if (identical(this, other)) { return true; } - return _deepEquals(encode(), other.encode()); + return _deepEquals(width, other.width) && _deepEquals(height, other.height); } @override // ignore: avoid_equals_and_hash_code_on_mutable_classes - int get hashCode => Object.hashAll(_toList()); + int get hashCode => _deepHash([runtimeType, ..._toList()]); } class _PigeonCodec extends StandardMessageCodec { @@ -181,7 +249,7 @@ class _PigeonCodec extends StandardMessageCodec { Object? readValueOfType(int type, ReadBuffer buffer) { switch (type) { case 129: - final int? value = readValue(buffer) as int?; + final value = readValue(buffer) as int?; return value == null ? null : PlatformResolutionPreset.values[value]; case 130: return PlatformMediaSettings.decode(readValue(buffer)!); @@ -212,279 +280,199 @@ class CameraApi { /// Returns the names of all of the available capture devices. Future> getAvailableCameras() async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_windows.CameraApi.getAvailableCameras$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as List?)!.cast(); - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return (pigeonVar_replyValue! as List).cast(); } /// Creates a camera instance for the given device name and settings. Future create(String cameraName, PlatformMediaSettings settings) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_windows.CameraApi.create$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [cameraName, settings], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as int?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as int; } /// Initializes a camera, and returns the size of its preview. Future initialize(int cameraId) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_windows.CameraApi.initialize$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [cameraId], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as PlatformSize?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as PlatformSize; } /// Disposes a camera that is no longer in use. Future dispose(int cameraId) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_windows.CameraApi.dispose$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [cameraId], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Takes a picture with the given camera, and returns the path to the /// resulting file. Future takePicture(int cameraId) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_windows.CameraApi.takePicture$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [cameraId], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as String?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as String; } /// Starts recording video with the given camera. - Future startVideoRecording(int cameraId) async { - final String pigeonVar_channelName = + Future startVideoRecording( + int cameraId, + String? videoOutputPath, + ) async { + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_windows.CameraApi.startVideoRecording$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [cameraId], + [cameraId, videoOutputPath], + ); + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } } /// Finishes recording video with the given camera, and returns the path to /// the resulting file. Future stopVideoRecording(int cameraId) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_windows.CameraApi.stopVideoRecording$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [cameraId], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as String?)!; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as String; } /// Starts the preview stream for the given camera. Future pausePreview(int cameraId) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_windows.CameraApi.pausePreview$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [cameraId], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Resumes the preview stream for the given camera. Future resumePreview(int cameraId) async { - final String pigeonVar_channelName = + final pigeonVar_channelName = 'dev.flutter.pigeon.camera_windows.CameraApi.resumePreview$pigeonVar_messageChannelSuffix'; - final BasicMessageChannel pigeonVar_channel = - BasicMessageChannel( - pigeonVar_channelName, - pigeonChannelCodec, - binaryMessenger: pigeonVar_binaryMessenger, - ); + final pigeonVar_channel = BasicMessageChannel( + pigeonVar_channelName, + pigeonChannelCodec, + binaryMessenger: pigeonVar_binaryMessenger, + ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( [cameraId], ); - final List? pigeonVar_replyList = - await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + final pigeonVar_replyList = await pigeonVar_sendFuture as List?; + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } } @@ -506,8 +494,7 @@ abstract class CameraEventApi { ? '.$messageChannelSuffix' : ''; { - final BasicMessageChannel - pigeonVar_channel = BasicMessageChannel( + final pigeonVar_channel = BasicMessageChannel( 'dev.flutter.pigeon.camera_windows.CameraEventApi.cameraClosing$messageChannelSuffix', pigeonChannelCodec, binaryMessenger: binaryMessenger, @@ -530,8 +517,7 @@ abstract class CameraEventApi { } } { - final BasicMessageChannel - pigeonVar_channel = BasicMessageChannel( + final pigeonVar_channel = BasicMessageChannel( 'dev.flutter.pigeon.camera_windows.CameraEventApi.error$messageChannelSuffix', pigeonChannelCodec, binaryMessenger: binaryMessenger, @@ -540,18 +526,10 @@ abstract class CameraEventApi { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_windows.CameraEventApi.error was null.', - ); - final List args = (message as List?)!; - final String? arg_errorMessage = (args[0] as String?); - assert( - arg_errorMessage != null, - 'Argument for dev.flutter.pigeon.camera_windows.CameraEventApi.error was null, expected non-null String.', - ); + final List args = message! as List; + final String arg_errorMessage = args[0]! as String; try { - api.error(arg_errorMessage!); + api.error(arg_errorMessage); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); diff --git a/packages/camera/camera_windows/pigeons/messages.dart b/packages/camera/camera_windows/pigeons/messages.dart index eadc11c52bb2..e03cf11ef021 100644 --- a/packages/camera/camera_windows/pigeons/messages.dart +++ b/packages/camera/camera_windows/pigeons/messages.dart @@ -64,7 +64,7 @@ abstract class CameraApi { /// Starts recording video with the given camera. @async - void startVideoRecording(int cameraId); + void startVideoRecording(int cameraId, String? videoOutputPath); /// Finishes recording video with the given camera, and returns the path to /// the resulting file. diff --git a/packages/camera/camera_windows/pubspec.yaml b/packages/camera/camera_windows/pubspec.yaml index bb0cffda6756..fa424f4ec363 100644 --- a/packages/camera/camera_windows/pubspec.yaml +++ b/packages/camera/camera_windows/pubspec.yaml @@ -34,3 +34,7 @@ dev_dependencies: topics: - camera +# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. +# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins +dependency_overrides: + camera_platform_interface: {path: ../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_windows/test/camera_windows_test.dart b/packages/camera/camera_windows/test/camera_windows_test.dart index dcd35d3d3fa2..162e44c6a94a 100644 --- a/packages/camera/camera_windows/test/camera_windows_test.dart +++ b/packages/camera/camera_windows/test/camera_windows_test.dart @@ -380,7 +380,20 @@ void main() { await plugin.startVideoRecording(cameraId); // Assert - verify(mockApi.startVideoRecording(any)); + verify(mockApi.startVideoRecording(any, any)); + }); + + test('Should start recording a video with a custom path', () async { + // Arrange + const path = '/test/video.mp4'; + + // Act + await plugin.startVideoCapturing( + const VideoCaptureOptions(1, videoOutputPath: path), + ); + + // Assert + verify(mockApi.startVideoRecording(1, path)); }); test('capturing fails if trying to stream', () async { diff --git a/packages/camera/camera_windows/test/camera_windows_test.mocks.dart b/packages/camera/camera_windows/test/camera_windows_test.mocks.dart index c81dceca765f..98629e624074 100644 --- a/packages/camera/camera_windows/test/camera_windows_test.mocks.dart +++ b/packages/camera/camera_windows/test/camera_windows_test.mocks.dart @@ -1,4 +1,4 @@ -// Mocks generated by Mockito 5.4.4 from annotations +// Mocks generated by Mockito 5.4.6 from annotations // in camera_windows/test/camera_windows_test.dart. // Do not manually edit this file. @@ -17,10 +17,12 @@ import 'package:mockito/src/dummies.dart' as _i3; // ignore_for_file: deprecated_member_use_from_same_package // ignore_for_file: implementation_imports // ignore_for_file: invalid_use_of_visible_for_testing_member +// ignore_for_file: must_be_immutable // ignore_for_file: prefer_const_constructors // ignore_for_file: unnecessary_parenthesis // ignore_for_file: camel_case_types // ignore_for_file: subtype_of_sealed_class +// ignore_for_file: invalid_use_of_internal_member class _FakePlatformSize_0 extends _i1.SmartFake implements _i2.PlatformSize { _FakePlatformSize_0(Object parent, Invocation parentInvocation) @@ -117,9 +119,15 @@ class MockCameraApi extends _i1.Mock implements _i2.CameraApi { as _i4.Future); @override - _i4.Future startVideoRecording(int? cameraId) => + _i4.Future startVideoRecording( + int? cameraId, + String? videoOutputPath, + ) => (super.noSuchMethod( - Invocation.method(#startVideoRecording, [cameraId]), + Invocation.method(#startVideoRecording, [ + cameraId, + videoOutputPath, + ]), returnValue: _i4.Future.value(), returnValueForMissingStub: _i4.Future.value(), ) @@ -144,24 +152,6 @@ class MockCameraApi extends _i1.Mock implements _i2.CameraApi { ) as _i4.Future); - @override - _i4.Future startImageStream(int? cameraId) => - (super.noSuchMethod( - Invocation.method(#startImageStream, [cameraId]), - returnValue: _i4.Future.value(), - returnValueForMissingStub: _i4.Future.value(), - ) - as _i4.Future); - - @override - _i4.Future stopImageStream(int? cameraId) => - (super.noSuchMethod( - Invocation.method(#stopImageStream, [cameraId]), - returnValue: _i4.Future.value(), - returnValueForMissingStub: _i4.Future.value(), - ) - as _i4.Future); - @override _i4.Future pausePreview(int? cameraId) => (super.noSuchMethod( diff --git a/packages/camera/camera_windows/windows/camera_plugin.cpp b/packages/camera/camera_windows/windows/camera_plugin.cpp index c01db2603caa..f7348158c738 100644 --- a/packages/camera/camera_windows/windows/camera_plugin.cpp +++ b/packages/camera/camera_windows/windows/camera_plugin.cpp @@ -295,7 +295,7 @@ void CameraPlugin::ResumePreview( } void CameraPlugin::StartVideoRecording( - int64_t camera_id, + int64_t camera_id, const std::string* video_output_path, std::function reply)> result) { auto camera = GetCameraByCameraId(camera_id); if (!camera) { @@ -307,7 +307,13 @@ void CameraPlugin::StartVideoRecording( FlutterError("camera_error", "Pending start recording request exists")); } - std::optional path = GetFilePathForVideo(); + std::optional path; + if (video_output_path && !video_output_path->empty()) { + path = *video_output_path; + } else { + path = GetFilePathForVideo(); + } + if (path) { if (camera->AddPendingVoidResult(PendingResultType::kStartRecord, std::move(result))) { diff --git a/packages/camera/camera_windows/windows/camera_plugin.h b/packages/camera/camera_windows/windows/camera_plugin.h index 27eeba325682..942b16d5443d 100644 --- a/packages/camera/camera_windows/windows/camera_plugin.h +++ b/packages/camera/camera_windows/windows/camera_plugin.h @@ -63,7 +63,7 @@ class CameraPlugin : public flutter::Plugin, int64_t camera_id, std::function reply)> result) override; void StartVideoRecording( - int64_t camera_id, + int64_t camera_id, const std::string* video_output_path, std::function reply)> result) override; void StopVideoRecording( int64_t camera_id, diff --git a/packages/camera/camera_windows/windows/capture_controller.cpp b/packages/camera/camera_windows/windows/capture_controller.cpp index 1afa5c0a8c45..a36bf472eb4b 100644 --- a/packages/camera/camera_windows/windows/capture_controller.cpp +++ b/packages/camera/camera_windows/windows/capture_controller.cpp @@ -501,6 +501,43 @@ void CaptureControllerImpl::StartRecord(const std::string& file_path) { "disposed and reinitialized."); } + if (!file_path.empty()) { + std::wstring wpath = Utf16FromUtf8(file_path); + DWORD dwAttrib = GetFileAttributesW(wpath.c_str()); + if (dwAttrib != INVALID_FILE_ATTRIBUTES && + (dwAttrib & FILE_ATTRIBUTE_DIRECTORY)) { + return OnRecordStarted(CameraResult::kError, + "The output path is a directory."); + } + + size_t last_slash = file_path.find_last_of("\\/"); + if (last_slash != std::string::npos) { + std::string parent_path = file_path.substr(0, last_slash); + if (!parent_path.empty()) { + DWORD dwParentAttrib = + GetFileAttributesW(Utf16FromUtf8(parent_path).c_str()); + if (dwParentAttrib == INVALID_FILE_ATTRIBUTES || + !(dwParentAttrib & FILE_ATTRIBUTE_DIRECTORY)) { + return OnRecordStarted(CameraResult::kError, + "The parent directory does not exist."); + } + } + } + + size_t last_dot = file_path.find_last_of("."); + if (last_dot == std::string::npos) { + return OnRecordStarted(CameraResult::kError, + "The output path has no extension."); + } + std::string ext = file_path.substr(last_dot); + for (auto& c : ext) c = (char)tolower(c); + if (ext != ".mp4" && ext != ".mov" && ext != ".wmv" && ext != ".avi") { + return OnRecordStarted( + CameraResult::kError, + "Invalid video extension. Supported: .mp4, .mov, .wmv, .avi"); + } + } + HRESULT hr = S_OK; if (!base_capture_media_type_) { diff --git a/packages/camera/camera_windows/windows/messages.g.cpp b/packages/camera/camera_windows/windows/messages.g.cpp index 7133d7cd2504..59f032a38ce7 100644 --- a/packages/camera/camera_windows/windows/messages.g.cpp +++ b/packages/camera/camera_windows/windows/messages.g.cpp @@ -1,7 +1,7 @@ // Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Autogenerated from Pigeon (v26.1.0), do not edit directly. +// Autogenerated from Pigeon (v26.3.4), do not edit directly. // See also: https://pub.dev/packages/pigeon #undef _HAS_EXCEPTIONS @@ -13,16 +13,18 @@ #include #include +#include +#include #include #include #include namespace camera_windows { -using flutter::BasicMessageChannel; -using flutter::CustomEncodableValue; -using flutter::EncodableList; -using flutter::EncodableMap; -using flutter::EncodableValue; +using ::flutter::BasicMessageChannel; +using ::flutter::CustomEncodableValue; +using ::flutter::EncodableList; +using ::flutter::EncodableMap; +using ::flutter::EncodableValue; FlutterError CreateConnectionError(const std::string channel_name) { return FlutterError( @@ -31,6 +33,212 @@ FlutterError CreateConnectionError(const std::string channel_name) { EncodableValue("")); } +namespace { +template +bool PigeonInternalDeepEquals(const T& a, const T& b); + +bool PigeonInternalDeepEquals(const double& a, const double& b); + +template +bool PigeonInternalDeepEquals(const std::vector& a, const std::vector& b); + +template +bool PigeonInternalDeepEquals(const std::map& a, const std::map& b); + +template +bool PigeonInternalDeepEquals(const std::optional& a, + const std::optional& b); + +template +bool PigeonInternalDeepEquals(const std::unique_ptr& a, + const std::unique_ptr& b); + +bool PigeonInternalDeepEquals(const ::flutter::EncodableValue& a, + const ::flutter::EncodableValue& b); + +template +bool PigeonInternalDeepEquals(const T& a, const T& b) { + return a == b; +} + +template +bool PigeonInternalDeepEquals(const std::vector& a, + const std::vector& b) { + if (a.size() != b.size()) { + return false; + } + for (size_t i = 0; i < a.size(); ++i) { + if (!PigeonInternalDeepEquals(a[i], b[i])) { + return false; + } + } + return true; +} + +template +bool PigeonInternalDeepEquals(const std::map& a, + const std::map& b) { + if (a.size() != b.size()) { + return false; + } + for (const auto& kv : a) { + bool found = false; + for (const auto& b_kv : b) { + if (PigeonInternalDeepEquals(kv.first, b_kv.first)) { + if (PigeonInternalDeepEquals(kv.second, b_kv.second)) { + found = true; + break; + } else { + return false; + } + } + } + if (!found) { + return false; + } + } + return true; +} + +bool PigeonInternalDeepEquals(const double& a, const double& b) { + // Normalize -0.0 to 0.0 and handle NaN equality. + return (a == b) || (std::isnan(a) && std::isnan(b)); +} + +template +bool PigeonInternalDeepEquals(const std::optional& a, + const std::optional& b) { + if (!a && !b) { + return true; + } + if (!a || !b) { + return false; + } + return PigeonInternalDeepEquals(*a, *b); +} + +template +bool PigeonInternalDeepEquals(const std::unique_ptr& a, + const std::unique_ptr& b) { + if (a.get() == b.get()) { + return true; + } + if (!a || !b) { + return false; + } + return PigeonInternalDeepEquals(*a, *b); +} + +bool PigeonInternalDeepEquals(const ::flutter::EncodableValue& a, + const ::flutter::EncodableValue& b) { + if (a.index() != b.index()) { + return false; + } + if (const double* da = std::get_if(&a)) { + return PigeonInternalDeepEquals(*da, std::get(b)); + } else if (const ::flutter::EncodableList* la = + std::get_if<::flutter::EncodableList>(&a)) { + return PigeonInternalDeepEquals(*la, std::get<::flutter::EncodableList>(b)); + } else if (const ::flutter::EncodableMap* ma = + std::get_if<::flutter::EncodableMap>(&a)) { + return PigeonInternalDeepEquals(*ma, std::get<::flutter::EncodableMap>(b)); + } + return a == b; +} + +template +size_t PigeonInternalDeepHash(const T& v); + +size_t PigeonInternalDeepHash(const double& v); + +template +size_t PigeonInternalDeepHash(const std::vector& v); + +template +size_t PigeonInternalDeepHash(const std::map& v); + +template +size_t PigeonInternalDeepHash(const std::optional& v); + +template +size_t PigeonInternalDeepHash(const std::unique_ptr& v); + +size_t PigeonInternalDeepHash(const ::flutter::EncodableValue& v); + +template +size_t PigeonInternalDeepHash(const T& v) { + return std::hash()(v); +} + +template +size_t PigeonInternalDeepHash(const std::vector& v) { + size_t result = 1; + for (const auto& item : v) { + result = result * 31 + PigeonInternalDeepHash(item); + } + return result; +} + +template +size_t PigeonInternalDeepHash(const std::map& v) { + size_t result = 0; + for (const auto& kv : v) { + result += ((PigeonInternalDeepHash(kv.first) * 31) ^ + PigeonInternalDeepHash(kv.second)); + } + return result; +} + +size_t PigeonInternalDeepHash(const double& v) { + if (std::isnan(v)) { + // Normalize NaN to a consistent hash. + return std::hash()(std::numeric_limits::quiet_NaN()); + } + if (v == 0.0) { + // Normalize -0.0 to 0.0 so they have the same hash code. + return std::hash()(0.0); + } + return std::hash()(v); +} + +template +size_t PigeonInternalDeepHash(const std::optional& v) { + return v ? PigeonInternalDeepHash(*v) : 0; +} + +template +size_t PigeonInternalDeepHash(const std::unique_ptr& v) { + return v ? PigeonInternalDeepHash(*v) : 0; +} + +size_t PigeonInternalDeepHash(const ::flutter::EncodableValue& v) { + size_t result = v.index(); + if (const double* dv = std::get_if(&v)) { + result = result * 31 + PigeonInternalDeepHash(*dv); + } else if (const ::flutter::EncodableList* lv = + std::get_if<::flutter::EncodableList>(&v)) { + result = result * 31 + PigeonInternalDeepHash(*lv); + } else if (const ::flutter::EncodableMap* mv = + std::get_if<::flutter::EncodableMap>(&v)) { + result = result * 31 + PigeonInternalDeepHash(*mv); + } else { + std::visit( + [&result](const auto& val) { + using T = std::decay_t; + if constexpr (!std::is_same_v && + !std::is_same_v && + !std::is_same_v && + !std::is_same_v && + !std::is_same_v) { + result = result * 31 + PigeonInternalDeepHash(val); + } + }, + v); + } + return result; +} + +} // namespace // PlatformMediaSettings PlatformMediaSettings::PlatformMediaSettings( @@ -141,6 +349,36 @@ PlatformMediaSettings PlatformMediaSettings::FromEncodableList( return decoded; } +bool PlatformMediaSettings::operator==( + const PlatformMediaSettings& other) const { + return PigeonInternalDeepEquals(resolution_preset_, + other.resolution_preset_) && + PigeonInternalDeepEquals(frames_per_second_, + other.frames_per_second_) && + PigeonInternalDeepEquals(video_bitrate_, other.video_bitrate_) && + PigeonInternalDeepEquals(audio_bitrate_, other.audio_bitrate_) && + PigeonInternalDeepEquals(enable_audio_, other.enable_audio_); +} + +bool PlatformMediaSettings::operator!=( + const PlatformMediaSettings& other) const { + return !(*this == other); +} + +size_t PlatformMediaSettings::Hash() const { + size_t result = 1; + result = result * 31 + PigeonInternalDeepHash(resolution_preset_); + result = result * 31 + PigeonInternalDeepHash(frames_per_second_); + result = result * 31 + PigeonInternalDeepHash(video_bitrate_); + result = result * 31 + PigeonInternalDeepHash(audio_bitrate_); + result = result * 31 + PigeonInternalDeepHash(enable_audio_); + return result; +} + +size_t PigeonInternalDeepHash(const PlatformMediaSettings& v) { + return v.Hash(); +} + // PlatformSize PlatformSize::PlatformSize(double width, double height) @@ -167,10 +405,28 @@ PlatformSize PlatformSize::FromEncodableList(const EncodableList& list) { return decoded; } +bool PlatformSize::operator==(const PlatformSize& other) const { + return PigeonInternalDeepEquals(width_, other.width_) && + PigeonInternalDeepEquals(height_, other.height_); +} + +bool PlatformSize::operator!=(const PlatformSize& other) const { + return !(*this == other); +} + +size_t PlatformSize::Hash() const { + size_t result = 1; + result = result * 31 + PigeonInternalDeepHash(width_); + result = result * 31 + PigeonInternalDeepHash(height_); + return result; +} + +size_t PigeonInternalDeepHash(const PlatformSize& v) { return v.Hash(); } + PigeonInternalCodecSerializer::PigeonInternalCodecSerializer() {} EncodableValue PigeonInternalCodecSerializer::ReadValueOfType( - uint8_t type, flutter::ByteStreamReader* stream) const { + uint8_t type, ::flutter::ByteStreamReader* stream) const { switch (type) { case 129: { const auto& encodable_enum_arg = ReadValue(stream); @@ -190,12 +446,12 @@ EncodableValue PigeonInternalCodecSerializer::ReadValueOfType( std::get(ReadValue(stream)))); } default: - return flutter::StandardCodecSerializer::ReadValueOfType(type, stream); + return ::flutter::StandardCodecSerializer::ReadValueOfType(type, stream); } } void PigeonInternalCodecSerializer::WriteValue( - const EncodableValue& value, flutter::ByteStreamWriter* stream) const { + const EncodableValue& value, ::flutter::ByteStreamWriter* stream) const { if (const CustomEncodableValue* custom_value = std::get_if(&value)) { if (custom_value->type() == typeid(PlatformResolutionPreset)) { @@ -222,23 +478,23 @@ void PigeonInternalCodecSerializer::WriteValue( return; } } - flutter::StandardCodecSerializer::WriteValue(value, stream); + ::flutter::StandardCodecSerializer::WriteValue(value, stream); } /// The codec used by CameraApi. -const flutter::StandardMessageCodec& CameraApi::GetCodec() { - return flutter::StandardMessageCodec::GetInstance( +const ::flutter::StandardMessageCodec& CameraApi::GetCodec() { + return ::flutter::StandardMessageCodec::GetInstance( &PigeonInternalCodecSerializer::GetInstance()); } // Sets up an instance of `CameraApi` to handle messages through the // `binary_messenger`. -void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, +void CameraApi::SetUp(::flutter::BinaryMessenger* binary_messenger, CameraApi* api) { CameraApi::SetUp(binary_messenger, api, ""); } -void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, +void CameraApi::SetUp(::flutter::BinaryMessenger* binary_messenger, CameraApi* api, const std::string& message_channel_suffix) { const std::string prepended_suffix = @@ -254,7 +510,7 @@ void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, if (api != nullptr) { channel.SetMessageHandler( [api](const EncodableValue& message, - const flutter::MessageReply& reply) { + const ::flutter::MessageReply& reply) { try { ErrorOr output = api->GetAvailableCameras(); if (output.has_error()) { @@ -280,7 +536,7 @@ void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, if (api != nullptr) { channel.SetMessageHandler( [api](const EncodableValue& message, - const flutter::MessageReply& reply) { + const ::flutter::MessageReply& reply) { try { const auto& args = std::get(message); const auto& encodable_camera_name_arg = args.at(0); @@ -326,7 +582,7 @@ void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, if (api != nullptr) { channel.SetMessageHandler( [api](const EncodableValue& message, - const flutter::MessageReply& reply) { + const ::flutter::MessageReply& reply) { try { const auto& args = std::get(message); const auto& encodable_camera_id_arg = args.at(0); @@ -363,7 +619,7 @@ void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, if (api != nullptr) { channel.SetMessageHandler( [api](const EncodableValue& message, - const flutter::MessageReply& reply) { + const ::flutter::MessageReply& reply) { try { const auto& args = std::get(message); const auto& encodable_camera_id_arg = args.at(0); @@ -397,7 +653,7 @@ void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, if (api != nullptr) { channel.SetMessageHandler( [api](const EncodableValue& message, - const flutter::MessageReply& reply) { + const ::flutter::MessageReply& reply) { try { const auto& args = std::get(message); const auto& encodable_camera_id_arg = args.at(0); @@ -434,7 +690,7 @@ void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, if (api != nullptr) { channel.SetMessageHandler( [api](const EncodableValue& message, - const flutter::MessageReply& reply) { + const ::flutter::MessageReply& reply) { try { const auto& args = std::get(message); const auto& encodable_camera_id_arg = args.at(0); @@ -443,8 +699,12 @@ void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, return; } const int64_t camera_id_arg = encodable_camera_id_arg.LongValue(); + const auto& encodable_video_output_path_arg = args.at(1); + const auto* video_output_path_arg = + std::get_if(&encodable_video_output_path_arg); api->StartVideoRecording( - camera_id_arg, [reply](std::optional&& output) { + camera_id_arg, video_output_path_arg, + [reply](std::optional&& output) { if (output.has_value()) { reply(WrapError(output.value())); return; @@ -470,7 +730,7 @@ void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, if (api != nullptr) { channel.SetMessageHandler( [api](const EncodableValue& message, - const flutter::MessageReply& reply) { + const ::flutter::MessageReply& reply) { try { const auto& args = std::get(message); const auto& encodable_camera_id_arg = args.at(0); @@ -507,7 +767,7 @@ void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, if (api != nullptr) { channel.SetMessageHandler( [api](const EncodableValue& message, - const flutter::MessageReply& reply) { + const ::flutter::MessageReply& reply) { try { const auto& args = std::get(message); const auto& encodable_camera_id_arg = args.at(0); @@ -543,7 +803,7 @@ void CameraApi::SetUp(flutter::BinaryMessenger* binary_messenger, if (api != nullptr) { channel.SetMessageHandler( [api](const EncodableValue& message, - const flutter::MessageReply& reply) { + const ::flutter::MessageReply& reply) { try { const auto& args = std::get(message); const auto& encodable_camera_id_arg = args.at(0); @@ -586,18 +846,18 @@ EncodableValue CameraApi::WrapError(const FlutterError& error) { // Generated class from Pigeon that represents Flutter messages that can be // called from C++. -CameraEventApi::CameraEventApi(flutter::BinaryMessenger* binary_messenger) +CameraEventApi::CameraEventApi(::flutter::BinaryMessenger* binary_messenger) : binary_messenger_(binary_messenger), message_channel_suffix_("") {} -CameraEventApi::CameraEventApi(flutter::BinaryMessenger* binary_messenger, +CameraEventApi::CameraEventApi(::flutter::BinaryMessenger* binary_messenger, const std::string& message_channel_suffix) : binary_messenger_(binary_messenger), message_channel_suffix_(message_channel_suffix.length() > 0 ? std::string(".") + message_channel_suffix : "") {} -const flutter::StandardMessageCodec& CameraEventApi::GetCodec() { - return flutter::StandardMessageCodec::GetInstance( +const ::flutter::StandardMessageCodec& CameraEventApi::GetCodec() { + return ::flutter::StandardMessageCodec::GetInstance( &PigeonInternalCodecSerializer::GetInstance()); } diff --git a/packages/camera/camera_windows/windows/messages.g.h b/packages/camera/camera_windows/windows/messages.g.h index ebce11993b98..a04b3d5d945d 100644 --- a/packages/camera/camera_windows/windows/messages.g.h +++ b/packages/camera/camera_windows/windows/messages.g.h @@ -1,7 +1,7 @@ // Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Autogenerated from Pigeon (v26.1.0), do not edit directly. +// Autogenerated from Pigeon (v26.3.4), do not edit directly. // See also: https://pub.dev/packages/pigeon #ifndef PIGEON_MESSAGES_G_H_ @@ -25,17 +25,17 @@ class FlutterError { explicit FlutterError(const std::string& code, const std::string& message) : code_(code), message_(message) {} explicit FlutterError(const std::string& code, const std::string& message, - const flutter::EncodableValue& details) + const ::flutter::EncodableValue& details) : code_(code), message_(message), details_(details) {} const std::string& code() const { return code_; } const std::string& message() const { return message_; } - const flutter::EncodableValue& details() const { return details_; } + const ::flutter::EncodableValue& details() const { return details_; } private: std::string code_; std::string message_; - flutter::EncodableValue details_; + ::flutter::EncodableValue details_; }; template @@ -102,10 +102,16 @@ class PlatformMediaSettings { bool enable_audio() const; void set_enable_audio(bool value_arg); + bool operator==(const PlatformMediaSettings& other) const; + bool operator!=(const PlatformMediaSettings& other) const; + /// Returns a hash code value for the object. This method is supported for the + /// benefit of hash tables. + size_t Hash() const; + private: static PlatformMediaSettings FromEncodableList( - const flutter::EncodableList& list); - flutter::EncodableList ToEncodableList() const; + const ::flutter::EncodableList& list); + ::flutter::EncodableList ToEncodableList() const; friend class CameraApi; friend class CameraEventApi; friend class PigeonInternalCodecSerializer; @@ -130,9 +136,15 @@ class PlatformSize { double height() const; void set_height(double value_arg); + bool operator==(const PlatformSize& other) const; + bool operator!=(const PlatformSize& other) const; + /// Returns a hash code value for the object. This method is supported for the + /// benefit of hash tables. + size_t Hash() const; + private: - static PlatformSize FromEncodableList(const flutter::EncodableList& list); - flutter::EncodableList ToEncodableList() const; + static PlatformSize FromEncodableList(const ::flutter::EncodableList& list); + ::flutter::EncodableList ToEncodableList() const; friend class CameraApi; friend class CameraEventApi; friend class PigeonInternalCodecSerializer; @@ -140,7 +152,8 @@ class PlatformSize { double height_; }; -class PigeonInternalCodecSerializer : public flutter::StandardCodecSerializer { +class PigeonInternalCodecSerializer + : public ::flutter::StandardCodecSerializer { public: PigeonInternalCodecSerializer(); inline static PigeonInternalCodecSerializer& GetInstance() { @@ -148,12 +161,12 @@ class PigeonInternalCodecSerializer : public flutter::StandardCodecSerializer { return sInstance; } - void WriteValue(const flutter::EncodableValue& value, - flutter::ByteStreamWriter* stream) const override; + void WriteValue(const ::flutter::EncodableValue& value, + ::flutter::ByteStreamWriter* stream) const override; protected: - flutter::EncodableValue ReadValueOfType( - uint8_t type, flutter::ByteStreamReader* stream) const override; + ::flutter::EncodableValue ReadValueOfType( + uint8_t type, ::flutter::ByteStreamReader* stream) const override; }; // Generated interface from Pigeon that represents a handler of messages from @@ -164,7 +177,7 @@ class CameraApi { CameraApi& operator=(const CameraApi&) = delete; virtual ~CameraApi() {} // Returns the names of all of the available capture devices. - virtual ErrorOr GetAvailableCameras() = 0; + virtual ErrorOr<::flutter::EncodableList> GetAvailableCameras() = 0; // Creates a camera instance for the given device name and settings. virtual void Create(const std::string& camera_name, const PlatformMediaSettings& settings, @@ -182,7 +195,7 @@ class CameraApi { std::function reply)> result) = 0; // Starts recording video with the given camera. virtual void StartVideoRecording( - int64_t camera_id, + int64_t camera_id, const std::string* video_output_path, std::function reply)> result) = 0; // Finishes recording video with the given camera, and returns the path to // the resulting file. @@ -199,14 +212,15 @@ class CameraApi { std::function reply)> result) = 0; // The codec used by CameraApi. - static const flutter::StandardMessageCodec& GetCodec(); + static const ::flutter::StandardMessageCodec& GetCodec(); // Sets up an instance of `CameraApi` to handle messages through the // `binary_messenger`. - static void SetUp(flutter::BinaryMessenger* binary_messenger, CameraApi* api); - static void SetUp(flutter::BinaryMessenger* binary_messenger, CameraApi* api, - const std::string& message_channel_suffix); - static flutter::EncodableValue WrapError(std::string_view error_message); - static flutter::EncodableValue WrapError(const FlutterError& error); + static void SetUp(::flutter::BinaryMessenger* binary_messenger, + CameraApi* api); + static void SetUp(::flutter::BinaryMessenger* binary_messenger, + CameraApi* api, const std::string& message_channel_suffix); + static ::flutter::EncodableValue WrapError(std::string_view error_message); + static ::flutter::EncodableValue WrapError(const FlutterError& error); protected: CameraApi() = default; @@ -215,10 +229,10 @@ class CameraApi { // called from C++. class CameraEventApi { public: - CameraEventApi(flutter::BinaryMessenger* binary_messenger); - CameraEventApi(flutter::BinaryMessenger* binary_messenger, + CameraEventApi(::flutter::BinaryMessenger* binary_messenger); + CameraEventApi(::flutter::BinaryMessenger* binary_messenger, const std::string& message_channel_suffix); - static const flutter::StandardMessageCodec& GetCodec(); + static const ::flutter::StandardMessageCodec& GetCodec(); // Called when the camera instance is closing on the native side. void CameraClosing(std::function&& on_success, std::function&& on_error); @@ -228,7 +242,7 @@ class CameraEventApi { std::function&& on_error); private: - flutter::BinaryMessenger* binary_messenger_; + ::flutter::BinaryMessenger* binary_messenger_; std::string message_channel_suffix_; }; diff --git a/packages/camera/camera_windows/windows/test/camera_plugin_test.cpp b/packages/camera/camera_windows/windows/test/camera_plugin_test.cpp index 1072f9b5609a..9cbacdefee99 100644 --- a/packages/camera/camera_windows/windows/test/camera_plugin_test.cpp +++ b/packages/camera/camera_windows/windows/test/camera_plugin_test.cpp @@ -566,7 +566,77 @@ TEST(CameraPlugin, StartVideoRecordingHandlerCallsStartRecordWithPath) { EXPECT_FALSE(reply); }; - plugin.StartVideoRecording(mock_camera_id, std::move(start_video_result)); + plugin.StartVideoRecording(mock_camera_id, nullptr, + std::move(start_video_result)); + + EXPECT_TRUE(result_called); +} + +TEST(CameraPlugin, StartVideoRecordingHandlerCallsStartRecordWithCustomPath) { + int64_t mock_camera_id = 1234; + std::string custom_path = "C:\\test\\video.mp4"; + + std::unique_ptr camera = + std::make_unique(MOCK_DEVICE_ID); + + std::unique_ptr capture_controller = + std::make_unique(); + + EXPECT_CALL(*camera, HasCameraId(Eq(mock_camera_id))) + .Times(1) + .WillOnce([cam = camera.get()](int64_t camera_id) { + return cam->camera_id_ == camera_id; + }); + + EXPECT_CALL(*camera, + HasPendingResultByType(Eq(PendingResultType::kStartRecord))) + .Times(1) + .WillOnce(Return(false)); + + EXPECT_CALL(*camera, + AddPendingVoidResult(Eq(PendingResultType::kStartRecord), _)) + .Times(1) + .WillOnce([cam = camera.get()]( + PendingResultType type, + std::function)> result) { + cam->pending_void_result_ = std::move(result); + return true; + }); + + EXPECT_CALL(*camera, GetCaptureController) + .Times(1) + .WillOnce([cam = camera.get()]() { + assert(cam->pending_void_result_); + return cam->capture_controller_.get(); + }); + + EXPECT_CALL(*capture_controller, StartRecord(Eq(custom_path))) + .Times(1) + .WillOnce([cam = camera.get()](const std::string& file_path) { + assert(cam->pending_void_result_); + return cam->pending_void_result_(std::nullopt); + }); + + camera->camera_id_ = mock_camera_id; + camera->capture_controller_ = std::move(capture_controller); + + MockCameraPlugin plugin(std::make_unique().get(), + std::make_unique().get(), + std::make_unique()); + + // Add mocked camera to plugins camera list. + plugin.AddCamera(std::move(camera)); + + bool result_called = false; + std::function)> start_video_result = + [&result_called](std::optional reply) { + EXPECT_FALSE(result_called); // Ensure only one reply call. + result_called = true; + EXPECT_FALSE(reply); + }; + + plugin.StartVideoRecording(mock_camera_id, &custom_path, + std::move(start_video_result)); EXPECT_TRUE(result_called); } @@ -609,7 +679,68 @@ TEST(CameraPlugin, StartVideoRecordingHandlerErrorOnInvalidCameraId) { EXPECT_TRUE(reply); }; - plugin.StartVideoRecording(missing_camera_id, std::move(start_video_result)); + plugin.StartVideoRecording(missing_camera_id, nullptr, + std::move(start_video_result)); + + EXPECT_TRUE(result_called); +} + +TEST(CameraPlugin, StartVideoRecordingHandlerReturnsErrorOnStartRecordFailure) { + int64_t mock_camera_id = 1234; + std::string custom_path = "C:\\invalid\\video.mp4"; + + std::unique_ptr camera = + std::make_unique(MOCK_DEVICE_ID); + + std::unique_ptr capture_controller = + std::make_unique(); + + EXPECT_CALL(*camera, HasCameraId(Eq(mock_camera_id))) + .Times(1) + .WillOnce(Return(true)); + + EXPECT_CALL(*camera, + AddPendingVoidResult(Eq(PendingResultType::kStartRecord), _)) + .Times(1) + .WillOnce([cam = camera.get()]( + PendingResultType type, + std::function)> result) { + cam->pending_void_result_ = std::move(result); + return true; + }); + + EXPECT_CALL(*camera, GetCaptureController) + .Times(1) + .WillOnce(Return(capture_controller.get())); + + EXPECT_CALL(*capture_controller, StartRecord(Eq(custom_path))) + .Times(1) + .WillOnce([cam = camera.get()](const std::string& file_path) { + assert(cam->pending_void_result_); + cam->pending_void_result_(FlutterError("error", "Invalid path")); + }); + + camera->camera_id_ = mock_camera_id; + camera->capture_controller_ = std::move(capture_controller); + + MockCameraPlugin plugin(std::make_unique().get(), + std::make_unique().get(), + std::make_unique()); + + // Add mocked camera to plugins camera list. + plugin.AddCamera(std::move(camera)); + + bool result_called = false; + std::function)> start_video_result = + [&result_called](std::optional reply) { + EXPECT_FALSE(result_called); // Ensure only one reply call. + result_called = true; + EXPECT_TRUE(reply); + EXPECT_EQ(reply->message(), "Invalid path"); + }; + + plugin.StartVideoRecording(mock_camera_id, &custom_path, + std::move(start_video_result)); EXPECT_TRUE(result_called); } From ab84efa82606b1faaf0404bd3d0585cad846046e Mon Sep 17 00:00:00 2001 From: Mairramer Date: Wed, 6 May 2026 11:02:56 -0300 Subject: [PATCH 02/30] more work --- .../io/flutter/plugins/camera/Camera.java | 4 +- .../io/flutter/plugins/camera/CameraTest.java | 53 +- .../plugins/camerax/CameraXLibrary.g.kt | 4807 +++++-------- .../plugins/camerax/RecorderProxyApi.java | 12 +- .../flutter/plugins/camerax/RecorderTest.java | 31 +- .../lib/src/camerax_library.g.dart | 5984 ++++++----------- .../test/android_camera_camerax_test.dart | 6 + .../ios/RunnerTests/CameraSettingsTests.swift | 64 +- .../camera_avfoundation/DefaultCamera.swift | 43 +- .../example/integration_test/camera_test.dart | 51 + .../integration_test/camera_web_test.dart | 21 + .../integration_test/helpers/mocks.mocks.dart | 718 ++ 12 files changed, 4963 insertions(+), 6831 deletions(-) create mode 100644 packages/camera/camera_web/example/integration_test/helpers/mocks.mocks.dart diff --git a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java index 8cb586a04023..b34ac0c71549 100644 --- a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java +++ b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java @@ -1298,9 +1298,7 @@ private void validateOutputPath(String path) { && !lowerPath.endsWith(".m4v") && !lowerPath.endsWith(".webm")) { throw new Messages.FlutterError( - "IOError", - "Invalid video extension. Supported: .mp4, .mov, .3gp, .m4v, .webm", - null); + "IOError", "Invalid video extension. Supported: .mp4, .mov, .3gp, .m4v, .webm", null); } try { prepareMediaRecorder(captureFile.getAbsolutePath()); diff --git a/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java b/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java index 00ba01bf2682..762dd6b2ab41 100644 --- a/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java +++ b/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java @@ -738,8 +738,6 @@ public void startVideoRecording_usesCustomPath() throws IOException, CameraAcces @Test public void startVideoRecording_errorsOnInvalidPath() throws IOException, CameraAccessException { final String invalidPath = "/non/existent/path.mp4"; - @SuppressWarnings("unchecked") - final Messages.Result mockResult = mock(Messages.Result.class); try (MockedConstruction mockedBuilder = Mockito.mockConstruction( @@ -750,15 +748,54 @@ public void startVideoRecording_errorsOnInvalidPath() throws IOException, Camera when(mock.build()).thenThrow(new IOException("Invalid path")); })) { - camera.startVideoRecording(mockResult, invalidPath); - - ArgumentCaptor errorCaptor = - ArgumentCaptor.forClass(Messages.FlutterError.class); - verify(mockResult).error(errorCaptor.capture()); - assertEquals("Invalid path", errorCaptor.getValue().getMessage()); + Messages.FlutterError error = + assertThrows( + Messages.FlutterError.class, + () -> { + camera.startVideoRecording(null, invalidPath); + }); + // The old test asserted "Invalid path" message. Wait, validateOutputPath will throw first! + // Actually, if validateOutputPath throws, it will throw IOError before building. + // So this test as originally written was flawed because validateOutputPath catches the + // invalidPath before build(). + // Let's just assert the IOError from validateOutputPath for this test. + assertEquals("IOError", error.code); } } + @Test + public void startVideoRecording_errorsOnDirectoryPath() { + Messages.FlutterError error = + assertThrows( + Messages.FlutterError.class, + () -> { + camera.startVideoRecording(null, "/"); + }); + assertEquals("IOError", error.code); + } + + @Test + public void startVideoRecording_errorsOnNonExistentParentPath() { + Messages.FlutterError error = + assertThrows( + Messages.FlutterError.class, + () -> { + camera.startVideoRecording(null, "/non/existent/parent/file.mp4"); + }); + assertEquals("IOError", error.code); + } + + @Test + public void startVideoRecording_errorsOnInvalidExtension() { + Messages.FlutterError error = + assertThrows( + Messages.FlutterError.class, + () -> { + camera.startVideoRecording(null, "file.txt"); + }); + assertEquals("IOError", error.code); + } + @Test public void setDescriptionWhileRecording_errorsWhenUnsupported() { MediaRecorder mockMediaRecorder = mock(MediaRecorder.class); diff --git a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/CameraXLibrary.g.kt b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/CameraXLibrary.g.kt index 2bdf4371dfed..a21dd1e7945c 100644 --- a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/CameraXLibrary.g.kt +++ b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/CameraXLibrary.g.kt @@ -1,7 +1,7 @@ // Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Autogenerated from Pigeon (v26.1.7), do not edit directly. +// Autogenerated from Pigeon (v26.3.2), do not edit directly. // See also: https://pub.dev/packages/pigeon @file:Suppress("UNCHECKED_CAST", "ArrayInDataClass") @@ -10,17 +10,16 @@ package io.flutter.plugins.camerax import android.util.Log import io.flutter.plugin.common.BasicMessageChannel import io.flutter.plugin.common.BinaryMessenger +import io.flutter.plugin.common.EventChannel import io.flutter.plugin.common.MessageCodec +import io.flutter.plugin.common.StandardMethodCodec import io.flutter.plugin.common.StandardMessageCodec import java.io.ByteArrayOutputStream import java.nio.ByteBuffer - private object CameraXLibraryPigeonUtils { fun createConnectionError(channelName: String): CameraXError { - return CameraXError( - "channel-error", "Unable to establish connection on channel: '$channelName'.", "") - } + return CameraXError("channel-error", "Unable to establish connection on channel: '$channelName'.", "") } fun wrapResult(result: Any?): List { return listOf(result) @@ -28,48 +27,50 @@ private object CameraXLibraryPigeonUtils { fun wrapError(exception: Throwable): List { return if (exception is CameraXError) { - listOf(exception.code, exception.message, exception.details) + listOf( + exception.code, + exception.message, + exception.details + ) } else { listOf( - exception.javaClass.simpleName, - exception.toString(), - "Cause: " + exception.cause + ", Stacktrace: " + Log.getStackTraceString(exception)) + exception.javaClass.simpleName, + exception.toString(), + "Cause: " + exception.cause + ", Stacktrace: " + Log.getStackTraceString(exception) + ) } } } /** * Error class for passing custom error details to Flutter via a thrown PlatformException. - * * @property code The error code. * @property message The error message. * @property details The error details. Must be a datatype supported by the api codec. */ -class CameraXError( - val code: String, - override val message: String? = null, - val details: Any? = null +class CameraXError ( + val code: String, + override val message: String? = null, + val details: Any? = null ) : Throwable() /** * Maintains instances used to communicate with the corresponding objects in Dart. * - * Objects stored in this container are represented by an object in Dart that is also stored in an - * InstanceManager with the same identifier. + * Objects stored in this container are represented by an object in Dart that is also stored in + * an InstanceManager with the same identifier. * * When an instance is added with an identifier, either can be used to retrieve the other. * - * Added instances are added as a weak reference and a strong reference. When the strong reference - * is removed with [remove] and the weak reference is deallocated, the - * `finalizationListener.onFinalize` is called with the instance's identifier. However, if the - * strong reference is removed and then the identifier is retrieved with the intention to pass the - * identifier to Dart (e.g. calling [getIdentifierForStrongReference]), the strong reference to the - * instance is recreated. The strong reference will then need to be removed manually again. + * Added instances are added as a weak reference and a strong reference. When the strong + * reference is removed with [remove] and the weak reference is deallocated, the + * `finalizationListener.onFinalize` is called with the instance's identifier. However, if the strong + * reference is removed and then the identifier is retrieved with the intention to pass the identifier + * to Dart (e.g. calling [getIdentifierForStrongReference]), the strong reference to the instance + * is recreated. The strong reference will then need to be removed manually again. */ @Suppress("UNCHECKED_CAST", "MemberVisibilityCanBePrivate") -class CameraXLibraryPigeonInstanceManager( - private val finalizationListener: PigeonFinalizationListener -) { - /** Interface for listening when a weak reference of an instance is removed from the manager. */ +class CameraXLibraryPigeonInstanceManager(private val finalizationListener: PigeonFinalizationListener) { + /** Interface for listening when a weak reference of an instance is removed from the manager. */ interface PigeonFinalizationListener { fun onFinalize(identifier: Long) } @@ -138,20 +139,19 @@ class CameraXLibraryPigeonInstanceManager( private const val tag = "PigeonInstanceManager" /** - * Instantiate a new manager with a listener for garbage collected weak references. + * Instantiate a new manager with a listener for garbage collected weak + * references. * * When the manager is no longer needed, [stopFinalizationListener] must be called. */ - fun create( - finalizationListener: PigeonFinalizationListener - ): CameraXLibraryPigeonInstanceManager { + fun create(finalizationListener: PigeonFinalizationListener): CameraXLibraryPigeonInstanceManager { return CameraXLibraryPigeonInstanceManager(finalizationListener) } } /** - * Removes `identifier` and return its associated strongly referenced instance, if present, from - * the manager. + * Removes `identifier` and return its associated strongly referenced instance, if present, + * from the manager. */ fun remove(identifier: Long): T? { logWarningIfFinalizationListenerHasStopped() @@ -161,13 +161,15 @@ class CameraXLibraryPigeonInstanceManager( /** * Retrieves the identifier paired with an instance, if present, otherwise `null`. * + * * If the manager contains a strong reference to `instance`, it will return the identifier * associated with `instance`. If the manager contains only a weak reference to `instance`, a new * strong reference to `instance` will be added and will need to be removed again with [remove]. * + * * If this method returns a nonnull identifier, this method also expects the Dart - * `CameraXLibraryPigeonInstanceManager` to have, or recreate, a weak reference to the Dart - * instance the identifier is associated with. + * `CameraXLibraryPigeonInstanceManager` to have, or recreate, a weak reference to the Dart instance the + * identifier is associated with. */ fun getIdentifierForStrongReference(instance: Any?): Long? { logWarningIfFinalizationListenerHasStopped() @@ -184,9 +186,9 @@ class CameraXLibraryPigeonInstanceManager( /** * Adds a new instance that was instantiated from Dart. * - * The same instance can be added multiple times, but each identifier must be unique. This allows - * two objects that are equivalent (e.g. the `equals` method returns true and their hashcodes are - * equal) to both be added. + * The same instance can be added multiple times, but each identifier must be unique. This + * allows two objects that are equivalent (e.g. the `equals` method returns true and their + * hashcodes are equal) to both be added. * * [identifier] must be >= 0 and unique. */ @@ -198,15 +200,13 @@ class CameraXLibraryPigeonInstanceManager( /** * Adds a new unique instance that was instantiated from the host platform. * - * If the manager contains [instance], this returns the corresponding identifier. If the manager - * does not contain [instance], this adds the instance and returns a unique identifier for that - * [instance]. + * If the manager contains [instance], this returns the corresponding identifier. If the + * manager does not contain [instance], this adds the instance and returns a unique + * identifier for that [instance]. */ fun addHostCreatedInstance(instance: Any): Long { logWarningIfFinalizationListenerHasStopped() - require(!containsInstance(instance)) { - "Instance of ${instance.javaClass} has already been added." - } + require(!containsInstance(instance)) { "Instance of ${instance.javaClass} has already been added." } val identifier = nextIdentifier++ addInstance(instance, identifier) return identifier @@ -290,43 +290,39 @@ class CameraXLibraryPigeonInstanceManager( private fun logWarningIfFinalizationListenerHasStopped() { if (hasFinalizationListenerStopped()) { Log.w( - tag, - "The manager was used after calls to the PigeonFinalizationListener has been stopped.") + tag, + "The manager was used after calls to the PigeonFinalizationListener has been stopped." + ) } } } + /** Generated API for managing the Dart and native `InstanceManager`s. */ private class CameraXLibraryPigeonInstanceManagerApi(val binaryMessenger: BinaryMessenger) { companion object { /** The codec used by CameraXLibraryPigeonInstanceManagerApi. */ - val codec: MessageCodec by lazy { CameraXLibraryPigeonCodec() } + val codec: MessageCodec by lazy { + CameraXLibraryPigeonCodec() + } /** * Sets up an instance of `CameraXLibraryPigeonInstanceManagerApi` to handle messages from the * `binaryMessenger`. */ - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - instanceManager: CameraXLibraryPigeonInstanceManager? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, instanceManager: CameraXLibraryPigeonInstanceManager?) { run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference", codec) if (instanceManager != null) { channel.setMessageHandler { message, reply -> val args = message as List val identifierArg = args[0] as Long - val wrapped: List = - try { - instanceManager.remove(identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + instanceManager.remove(identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -334,20 +330,15 @@ private class CameraXLibraryPigeonInstanceManagerApi(val binaryMessenger: Binary } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.clear", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.clear", codec) if (instanceManager != null) { channel.setMessageHandler { _, reply -> - val wrapped: List = - try { - instanceManager.clear() - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + instanceManager.clear() + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -357,9 +348,9 @@ private class CameraXLibraryPigeonInstanceManagerApi(val binaryMessenger: Binary } } - fun removeStrongReference(identifierArg: Long, callback: (Result) -> Unit) { - val channelName = - "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference" + fun removeStrongReference(identifierArg: Long, callback: (Result) -> Unit) +{ + val channelName = "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(identifierArg)) { if (it is List<*>) { @@ -370,13 +361,13 @@ private class CameraXLibraryPigeonInstanceManagerApi(val binaryMessenger: Binary } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } /** - * Provides implementations for each ProxyApi implementation and provides access to resources needed - * by any implementation. + * Provides implementations for each ProxyApi implementation and provides access to resources + * needed by any implementation. */ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: BinaryMessenger) { /** Whether APIs should ignore calling to Dart. */ @@ -393,23 +384,24 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary init { val api = CameraXLibraryPigeonInstanceManagerApi(binaryMessenger) - instanceManager = - CameraXLibraryPigeonInstanceManager.create( - object : CameraXLibraryPigeonInstanceManager.PigeonFinalizationListener { - override fun onFinalize(identifier: Long) { - api.removeStrongReference(identifier) { - if (it.isFailure) { - Log.e( - "PigeonProxyApiRegistrar", - "Failed to remove Dart strong reference with identifier: $identifier") - } - } - } - }) + instanceManager = CameraXLibraryPigeonInstanceManager.create( + object : CameraXLibraryPigeonInstanceManager.PigeonFinalizationListener { + override fun onFinalize(identifier: Long) { + api.removeStrongReference(identifier) { + if (it.isFailure) { + Log.e( + "PigeonProxyApiRegistrar", + "Failed to remove Dart strong reference with identifier: $identifier" + ) + } + } + } + } + ) } /** - * An implementation of [PigeonApiCameraSize] used to add a new Dart instance of `CameraSize` to - * the Dart `InstanceManager`. + * An implementation of [PigeonApiCameraSize] used to add a new Dart instance of + * `CameraSize` to the Dart `InstanceManager`. */ abstract fun getPigeonApiCameraSize(): PigeonApiCameraSize @@ -429,7 +421,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary * An implementation of [PigeonApiVideoRecordEvent] used to add a new Dart instance of * `VideoRecordEvent` to the Dart `InstanceManager`. */ - open fun getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent { + open fun getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent + { return PigeonApiVideoRecordEvent(this) } @@ -437,7 +430,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary * An implementation of [PigeonApiVideoRecordEventStart] used to add a new Dart instance of * `VideoRecordEventStart` to the Dart `InstanceManager`. */ - open fun getPigeonApiVideoRecordEventStart(): PigeonApiVideoRecordEventStart { + open fun getPigeonApiVideoRecordEventStart(): PigeonApiVideoRecordEventStart + { return PigeonApiVideoRecordEventStart(this) } @@ -445,7 +439,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary * An implementation of [PigeonApiVideoRecordEventFinalize] used to add a new Dart instance of * `VideoRecordEventFinalize` to the Dart `InstanceManager`. */ - open fun getPigeonApiVideoRecordEventFinalize(): PigeonApiVideoRecordEventFinalize { + open fun getPigeonApiVideoRecordEventFinalize(): PigeonApiVideoRecordEventFinalize + { return PigeonApiVideoRecordEventFinalize(this) } @@ -456,14 +451,14 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiMeteringPoint(): PigeonApiMeteringPoint /** - * An implementation of [PigeonApiObserver] used to add a new Dart instance of `Observer` to the - * Dart `InstanceManager`. + * An implementation of [PigeonApiObserver] used to add a new Dart instance of + * `Observer` to the Dart `InstanceManager`. */ abstract fun getPigeonApiObserver(): PigeonApiObserver /** - * An implementation of [PigeonApiCameraInfo] used to add a new Dart instance of `CameraInfo` to - * the Dart `InstanceManager`. + * An implementation of [PigeonApiCameraInfo] used to add a new Dart instance of + * `CameraInfo` to the Dart `InstanceManager`. */ abstract fun getPigeonApiCameraInfo(): PigeonApiCameraInfo @@ -480,16 +475,17 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiProcessCameraProvider(): PigeonApiProcessCameraProvider /** - * An implementation of [PigeonApiUseCase] used to add a new Dart instance of `UseCase` to the - * Dart `InstanceManager`. + * An implementation of [PigeonApiUseCase] used to add a new Dart instance of + * `UseCase` to the Dart `InstanceManager`. */ - open fun getPigeonApiUseCase(): PigeonApiUseCase { + open fun getPigeonApiUseCase(): PigeonApiUseCase + { return PigeonApiUseCase(this) } /** - * An implementation of [PigeonApiCamera] used to add a new Dart instance of `Camera` to the Dart - * `InstanceManager`. + * An implementation of [PigeonApiCamera] used to add a new Dart instance of + * `Camera` to the Dart `InstanceManager`. */ abstract fun getPigeonApiCamera(): PigeonApiCamera @@ -512,28 +508,29 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiDeviceOrientationManager(): PigeonApiDeviceOrientationManager /** - * An implementation of [PigeonApiPreview] used to add a new Dart instance of `Preview` to the - * Dart `InstanceManager`. + * An implementation of [PigeonApiPreview] used to add a new Dart instance of + * `Preview` to the Dart `InstanceManager`. */ abstract fun getPigeonApiPreview(): PigeonApiPreview /** - * An implementation of [PigeonApiVideoCapture] used to add a new Dart instance of `VideoCapture` - * to the Dart `InstanceManager`. + * An implementation of [PigeonApiVideoCapture] used to add a new Dart instance of + * `VideoCapture` to the Dart `InstanceManager`. */ abstract fun getPigeonApiVideoCapture(): PigeonApiVideoCapture /** - * An implementation of [PigeonApiVideoOutput] used to add a new Dart instance of `VideoOutput` to - * the Dart `InstanceManager`. + * An implementation of [PigeonApiVideoOutput] used to add a new Dart instance of + * `VideoOutput` to the Dart `InstanceManager`. */ - open fun getPigeonApiVideoOutput(): PigeonApiVideoOutput { + open fun getPigeonApiVideoOutput(): PigeonApiVideoOutput + { return PigeonApiVideoOutput(this) } /** - * An implementation of [PigeonApiRecorder] used to add a new Dart instance of `Recorder` to the - * Dart `InstanceManager`. + * An implementation of [PigeonApiRecorder] used to add a new Dart instance of + * `Recorder` to the Dart `InstanceManager`. */ abstract fun getPigeonApiRecorder(): PigeonApiRecorder @@ -550,14 +547,14 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiPendingRecording(): PigeonApiPendingRecording /** - * An implementation of [PigeonApiRecording] used to add a new Dart instance of `Recording` to the - * Dart `InstanceManager`. + * An implementation of [PigeonApiRecording] used to add a new Dart instance of + * `Recording` to the Dart `InstanceManager`. */ abstract fun getPigeonApiRecording(): PigeonApiRecording /** - * An implementation of [PigeonApiImageCapture] used to add a new Dart instance of `ImageCapture` - * to the Dart `InstanceManager`. + * An implementation of [PigeonApiImageCapture] used to add a new Dart instance of + * `ImageCapture` to the Dart `InstanceManager`. */ abstract fun getPigeonApiImageCapture(): PigeonApiImageCapture @@ -580,8 +577,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiAspectRatioStrategy(): PigeonApiAspectRatioStrategy /** - * An implementation of [PigeonApiCameraState] used to add a new Dart instance of `CameraState` to - * the Dart `InstanceManager`. + * An implementation of [PigeonApiCameraState] used to add a new Dart instance of + * `CameraState` to the Dart `InstanceManager`. */ abstract fun getPigeonApiCameraState(): PigeonApiCameraState @@ -592,8 +589,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiExposureState(): PigeonApiExposureState /** - * An implementation of [PigeonApiZoomState] used to add a new Dart instance of `ZoomState` to the - * Dart `InstanceManager`. + * An implementation of [PigeonApiZoomState] used to add a new Dart instance of + * `ZoomState` to the Dart `InstanceManager`. */ abstract fun getPigeonApiZoomState(): PigeonApiZoomState @@ -604,8 +601,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiImageAnalysis(): PigeonApiImageAnalysis /** - * An implementation of [PigeonApiAnalyzer] used to add a new Dart instance of `Analyzer` to the - * Dart `InstanceManager`. + * An implementation of [PigeonApiAnalyzer] used to add a new Dart instance of + * `Analyzer` to the Dart `InstanceManager`. */ abstract fun getPigeonApiAnalyzer(): PigeonApiAnalyzer @@ -616,14 +613,14 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiCameraStateStateError(): PigeonApiCameraStateStateError /** - * An implementation of [PigeonApiLiveData] used to add a new Dart instance of `LiveData` to the - * Dart `InstanceManager`. + * An implementation of [PigeonApiLiveData] used to add a new Dart instance of + * `LiveData` to the Dart `InstanceManager`. */ abstract fun getPigeonApiLiveData(): PigeonApiLiveData /** - * An implementation of [PigeonApiImageProxy] used to add a new Dart instance of `ImageProxy` to - * the Dart `InstanceManager`. + * An implementation of [PigeonApiImageProxy] used to add a new Dart instance of + * `ImageProxy` to the Dart `InstanceManager`. */ abstract fun getPigeonApiImageProxy(): PigeonApiImageProxy @@ -634,8 +631,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiImageProxyUtils(): PigeonApiImageProxyUtils /** - * An implementation of [PigeonApiPlaneProxy] used to add a new Dart instance of `PlaneProxy` to - * the Dart `InstanceManager`. + * An implementation of [PigeonApiPlaneProxy] used to add a new Dart instance of + * `PlaneProxy` to the Dart `InstanceManager`. */ abstract fun getPigeonApiPlaneProxy(): PigeonApiPlaneProxy @@ -685,7 +682,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary * An implementation of [PigeonApiCaptureRequestKey] used to add a new Dart instance of * `CaptureRequestKey` to the Dart `InstanceManager`. */ - open fun getPigeonApiCaptureRequestKey(): PigeonApiCaptureRequestKey { + open fun getPigeonApiCaptureRequestKey(): PigeonApiCaptureRequestKey + { return PigeonApiCaptureRequestKey(this) } @@ -711,7 +709,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary * An implementation of [PigeonApiCameraCharacteristicsKey] used to add a new Dart instance of * `CameraCharacteristicsKey` to the Dart `InstanceManager`. */ - open fun getPigeonApiCameraCharacteristicsKey(): PigeonApiCameraCharacteristicsKey { + open fun getPigeonApiCameraCharacteristicsKey(): PigeonApiCameraCharacteristicsKey + { return PigeonApiCameraCharacteristicsKey(this) } @@ -734,42 +733,33 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiMeteringPointFactory(): PigeonApiMeteringPointFactory /** - * An implementation of [PigeonApiDisplayOrientedMeteringPointFactory] used to add a new Dart - * instance of `DisplayOrientedMeteringPointFactory` to the Dart `InstanceManager`. + * An implementation of [PigeonApiDisplayOrientedMeteringPointFactory] used to add a new Dart instance of + * `DisplayOrientedMeteringPointFactory` to the Dart `InstanceManager`. */ - abstract fun getPigeonApiDisplayOrientedMeteringPointFactory(): - PigeonApiDisplayOrientedMeteringPointFactory + abstract fun getPigeonApiDisplayOrientedMeteringPointFactory(): PigeonApiDisplayOrientedMeteringPointFactory fun setUp() { CameraXLibraryPigeonInstanceManagerApi.setUpMessageHandlers(binaryMessenger, instanceManager) PigeonApiCameraSize.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraSize()) - PigeonApiCameraIntegerRange.setUpMessageHandlers( - binaryMessenger, getPigeonApiCameraIntegerRange()) + PigeonApiCameraIntegerRange.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraIntegerRange()) PigeonApiMeteringPoint.setUpMessageHandlers(binaryMessenger, getPigeonApiMeteringPoint()) PigeonApiObserver.setUpMessageHandlers(binaryMessenger, getPigeonApiObserver()) PigeonApiCameraInfo.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraInfo()) PigeonApiCameraSelector.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraSelector()) - PigeonApiProcessCameraProvider.setUpMessageHandlers( - binaryMessenger, getPigeonApiProcessCameraProvider()) + PigeonApiProcessCameraProvider.setUpMessageHandlers(binaryMessenger, getPigeonApiProcessCameraProvider()) PigeonApiCamera.setUpMessageHandlers(binaryMessenger, getPigeonApiCamera()) - PigeonApiSystemServicesManager.setUpMessageHandlers( - binaryMessenger, getPigeonApiSystemServicesManager()) - PigeonApiDeviceOrientationManager.setUpMessageHandlers( - binaryMessenger, getPigeonApiDeviceOrientationManager()) + PigeonApiSystemServicesManager.setUpMessageHandlers(binaryMessenger, getPigeonApiSystemServicesManager()) + PigeonApiDeviceOrientationManager.setUpMessageHandlers(binaryMessenger, getPigeonApiDeviceOrientationManager()) PigeonApiPreview.setUpMessageHandlers(binaryMessenger, getPigeonApiPreview()) PigeonApiVideoCapture.setUpMessageHandlers(binaryMessenger, getPigeonApiVideoCapture()) PigeonApiRecorder.setUpMessageHandlers(binaryMessenger, getPigeonApiRecorder()) - PigeonApiVideoRecordEventListener.setUpMessageHandlers( - binaryMessenger, getPigeonApiVideoRecordEventListener()) + PigeonApiVideoRecordEventListener.setUpMessageHandlers(binaryMessenger, getPigeonApiVideoRecordEventListener()) PigeonApiPendingRecording.setUpMessageHandlers(binaryMessenger, getPigeonApiPendingRecording()) PigeonApiRecording.setUpMessageHandlers(binaryMessenger, getPigeonApiRecording()) PigeonApiImageCapture.setUpMessageHandlers(binaryMessenger, getPigeonApiImageCapture()) - PigeonApiResolutionStrategy.setUpMessageHandlers( - binaryMessenger, getPigeonApiResolutionStrategy()) - PigeonApiResolutionSelector.setUpMessageHandlers( - binaryMessenger, getPigeonApiResolutionSelector()) - PigeonApiAspectRatioStrategy.setUpMessageHandlers( - binaryMessenger, getPigeonApiAspectRatioStrategy()) + PigeonApiResolutionStrategy.setUpMessageHandlers(binaryMessenger, getPigeonApiResolutionStrategy()) + PigeonApiResolutionSelector.setUpMessageHandlers(binaryMessenger, getPigeonApiResolutionSelector()) + PigeonApiAspectRatioStrategy.setUpMessageHandlers(binaryMessenger, getPigeonApiAspectRatioStrategy()) PigeonApiImageAnalysis.setUpMessageHandlers(binaryMessenger, getPigeonApiImageAnalysis()) PigeonApiAnalyzer.setUpMessageHandlers(binaryMessenger, getPigeonApiAnalyzer()) PigeonApiLiveData.setUpMessageHandlers(binaryMessenger, getPigeonApiLiveData()) @@ -778,24 +768,16 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary PigeonApiQualitySelector.setUpMessageHandlers(binaryMessenger, getPigeonApiQualitySelector()) PigeonApiFallbackStrategy.setUpMessageHandlers(binaryMessenger, getPigeonApiFallbackStrategy()) PigeonApiCameraControl.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraControl()) - PigeonApiFocusMeteringActionBuilder.setUpMessageHandlers( - binaryMessenger, getPigeonApiFocusMeteringActionBuilder()) + PigeonApiFocusMeteringActionBuilder.setUpMessageHandlers(binaryMessenger, getPigeonApiFocusMeteringActionBuilder()) PigeonApiCaptureRequest.setUpMessageHandlers(binaryMessenger, getPigeonApiCaptureRequest()) - PigeonApiCaptureRequestOptions.setUpMessageHandlers( - binaryMessenger, getPigeonApiCaptureRequestOptions()) - PigeonApiCamera2CameraControl.setUpMessageHandlers( - binaryMessenger, getPigeonApiCamera2CameraControl()) + PigeonApiCaptureRequestOptions.setUpMessageHandlers(binaryMessenger, getPigeonApiCaptureRequestOptions()) + PigeonApiCamera2CameraControl.setUpMessageHandlers(binaryMessenger, getPigeonApiCamera2CameraControl()) PigeonApiResolutionFilter.setUpMessageHandlers(binaryMessenger, getPigeonApiResolutionFilter()) - PigeonApiCameraCharacteristics.setUpMessageHandlers( - binaryMessenger, getPigeonApiCameraCharacteristics()) - PigeonApiCamera2CameraInfo.setUpMessageHandlers( - binaryMessenger, getPigeonApiCamera2CameraInfo()) - PigeonApiMeteringPointFactory.setUpMessageHandlers( - binaryMessenger, getPigeonApiMeteringPointFactory()) - PigeonApiDisplayOrientedMeteringPointFactory.setUpMessageHandlers( - binaryMessenger, getPigeonApiDisplayOrientedMeteringPointFactory()) + PigeonApiCameraCharacteristics.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraCharacteristics()) + PigeonApiCamera2CameraInfo.setUpMessageHandlers(binaryMessenger, getPigeonApiCamera2CameraInfo()) + PigeonApiMeteringPointFactory.setUpMessageHandlers(binaryMessenger, getPigeonApiMeteringPointFactory()) + PigeonApiDisplayOrientedMeteringPointFactory.setUpMessageHandlers(binaryMessenger, getPigeonApiDisplayOrientedMeteringPointFactory()) } - fun tearDown() { CameraXLibraryPigeonInstanceManagerApi.setUpMessageHandlers(binaryMessenger, null) PigeonApiCameraSize.setUpMessageHandlers(binaryMessenger, null) @@ -837,17 +819,17 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary PigeonApiDisplayOrientedMeteringPointFactory.setUpMessageHandlers(binaryMessenger, null) } } - -private class CameraXLibraryPigeonProxyApiBaseCodec( - val registrar: CameraXLibraryPigeonProxyApiRegistrar -) : CameraXLibraryPigeonCodec() { +private class CameraXLibraryPigeonProxyApiBaseCodec(val registrar: CameraXLibraryPigeonProxyApiRegistrar) : CameraXLibraryPigeonCodec() { override fun readValueOfType(type: Byte, buffer: ByteBuffer): Any? { return when (type) { 128.toByte() -> { val identifier: Long = readValue(buffer) as Long val instance: Any? = registrar.instanceManager.getInstance(identifier) if (instance == null) { - Log.e("PigeonProxyApiBaseCodec", "Failed to find instance with identifier: $identifier") + Log.e( + "PigeonProxyApiBaseCodec", + "Failed to find instance with identifier: $identifier" + ) } return instance } @@ -856,38 +838,16 @@ private class CameraXLibraryPigeonProxyApiBaseCodec( } override fun writeValue(stream: ByteArrayOutputStream, value: Any?) { - if (value is Boolean || - value is ByteArray || - value is Double || - value is DoubleArray || - value is FloatArray || - value is Int || - value is IntArray || - value is List<*> || - value is Long || - value is LongArray || - value is Map<*, *> || - value is String || - value is InfoSupportedHardwareLevel || - value is AspectRatio || - value is CameraStateType || - value is LiveDataSupportedType || - value is VideoQuality || - value is MeteringMode || - value is LensFacing || - value is CameraXFlashMode || - value is ResolutionStrategyFallbackRule || - value is AspectRatioStrategyFallbackRule || - value is CameraStateErrorCode || - value == null) { + if (value is Boolean || value is ByteArray || value is Double || value is DoubleArray || value is FloatArray || value is Int || value is IntArray || value is List<*> || value is Long || value is LongArray || value is Map<*, *> || value is String || value is InfoSupportedHardwareLevel || value is AspectRatio || value is CameraStateType || value is LiveDataSupportedType || value is VideoQuality || value is MeteringMode || value is LensFacing || value is CameraXFlashMode || value is ResolutionStrategyFallbackRule || value is AspectRatioStrategyFallbackRule || value is CameraStateErrorCode || value == null) { super.writeValue(stream, value) return } fun logNewInstanceFailure(apiName: String, value: Any, exception: Throwable?) { Log.w( - "PigeonProxyApiBaseCodec", - "Failed to create new Dart proxy instance of $apiName: $value. $exception") + "PigeonProxyApiBaseCodec", + "Failed to create new Dart proxy instance of $apiName: $value. $exception" + ) } if (value is android.util.Size) { @@ -896,313 +856,365 @@ private class CameraXLibraryPigeonProxyApiBaseCodec( logNewInstanceFailure("CameraSize", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.ResolutionInfo) { + } + else if (value is androidx.camera.core.ResolutionInfo) { registrar.getPigeonApiResolutionInfo().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ResolutionInfo", value, it.exceptionOrNull()) } } - } else if (value is android.util.Range<*>) { + } + else if (value is android.util.Range<*>) { registrar.getPigeonApiCameraIntegerRange().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraIntegerRange", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.video.VideoRecordEvent.Start) { + } + else if (value is androidx.camera.video.VideoRecordEvent.Start) { registrar.getPigeonApiVideoRecordEventStart().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoRecordEventStart", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.video.VideoRecordEvent.Finalize) { + } + else if (value is androidx.camera.video.VideoRecordEvent.Finalize) { registrar.getPigeonApiVideoRecordEventFinalize().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoRecordEventFinalize", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.video.VideoRecordEvent) { + } + else if (value is androidx.camera.video.VideoRecordEvent) { registrar.getPigeonApiVideoRecordEvent().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoRecordEvent", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.MeteringPoint) { + } + else if (value is androidx.camera.core.MeteringPoint) { registrar.getPigeonApiMeteringPoint().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("MeteringPoint", value, it.exceptionOrNull()) } } - } else if (value is androidx.lifecycle.Observer<*>) { + } + else if (value is androidx.lifecycle.Observer<*>) { registrar.getPigeonApiObserver().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Observer", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.CameraInfo) { + } + else if (value is androidx.camera.core.CameraInfo) { registrar.getPigeonApiCameraInfo().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraInfo", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.CameraSelector) { + } + else if (value is androidx.camera.core.CameraSelector) { registrar.getPigeonApiCameraSelector().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraSelector", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.lifecycle.ProcessCameraProvider) { + } + else if (value is androidx.camera.lifecycle.ProcessCameraProvider) { registrar.getPigeonApiProcessCameraProvider().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ProcessCameraProvider", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.Camera) { + } + else if (value is androidx.camera.core.Camera) { registrar.getPigeonApiCamera().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Camera", value, it.exceptionOrNull()) } } - } else if (value is SystemServicesManager) { + } + else if (value is SystemServicesManager) { registrar.getPigeonApiSystemServicesManager().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("SystemServicesManager", value, it.exceptionOrNull()) } } - } else if (value is CameraPermissionsError) { + } + else if (value is CameraPermissionsError) { registrar.getPigeonApiCameraPermissionsError().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraPermissionsError", value, it.exceptionOrNull()) } } - } else if (value is DeviceOrientationManager) { + } + else if (value is DeviceOrientationManager) { registrar.getPigeonApiDeviceOrientationManager().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("DeviceOrientationManager", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.Preview) { + } + else if (value is androidx.camera.core.Preview) { registrar.getPigeonApiPreview().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Preview", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.video.VideoCapture<*>) { + } + else if (value is androidx.camera.video.VideoCapture<*>) { registrar.getPigeonApiVideoCapture().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoCapture", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.video.Recorder) { + } + else if (value is androidx.camera.video.Recorder) { registrar.getPigeonApiRecorder().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Recorder", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.video.VideoOutput) { + } + else if (value is androidx.camera.video.VideoOutput) { registrar.getPigeonApiVideoOutput().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoOutput", value, it.exceptionOrNull()) } } - } else if (value is VideoRecordEventListener) { + } + else if (value is VideoRecordEventListener) { registrar.getPigeonApiVideoRecordEventListener().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoRecordEventListener", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.video.PendingRecording) { + } + else if (value is androidx.camera.video.PendingRecording) { registrar.getPigeonApiPendingRecording().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("PendingRecording", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.video.Recording) { + } + else if (value is androidx.camera.video.Recording) { registrar.getPigeonApiRecording().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Recording", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.ImageCapture) { + } + else if (value is androidx.camera.core.ImageCapture) { registrar.getPigeonApiImageCapture().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ImageCapture", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.resolutionselector.ResolutionStrategy) { + } + else if (value is androidx.camera.core.resolutionselector.ResolutionStrategy) { registrar.getPigeonApiResolutionStrategy().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ResolutionStrategy", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.resolutionselector.ResolutionSelector) { + } + else if (value is androidx.camera.core.resolutionselector.ResolutionSelector) { registrar.getPigeonApiResolutionSelector().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ResolutionSelector", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.resolutionselector.AspectRatioStrategy) { + } + else if (value is androidx.camera.core.resolutionselector.AspectRatioStrategy) { registrar.getPigeonApiAspectRatioStrategy().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("AspectRatioStrategy", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.CameraState) { + } + else if (value is androidx.camera.core.CameraState) { registrar.getPigeonApiCameraState().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraState", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.ExposureState) { + } + else if (value is androidx.camera.core.ExposureState) { registrar.getPigeonApiExposureState().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ExposureState", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.ZoomState) { + } + else if (value is androidx.camera.core.ZoomState) { registrar.getPigeonApiZoomState().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ZoomState", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.ImageAnalysis) { + } + else if (value is androidx.camera.core.ImageAnalysis) { registrar.getPigeonApiImageAnalysis().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ImageAnalysis", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.UseCase) { + } + else if (value is androidx.camera.core.UseCase) { registrar.getPigeonApiUseCase().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("UseCase", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.ImageAnalysis.Analyzer) { + } + else if (value is androidx.camera.core.ImageAnalysis.Analyzer) { registrar.getPigeonApiAnalyzer().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Analyzer", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.CameraState.StateError) { + } + else if (value is androidx.camera.core.CameraState.StateError) { registrar.getPigeonApiCameraStateStateError().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraStateStateError", value, it.exceptionOrNull()) } } - } else if (value is io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper) { + } + else if (value is io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper) { registrar.getPigeonApiLiveData().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("LiveData", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.ImageProxy) { + } + else if (value is androidx.camera.core.ImageProxy) { registrar.getPigeonApiImageProxy().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ImageProxy", value, it.exceptionOrNull()) } } - } else if (value is ImageProxyUtils) { + } + else if (value is ImageProxyUtils) { registrar.getPigeonApiImageProxyUtils().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ImageProxyUtils", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.ImageProxy.PlaneProxy) { + } + else if (value is androidx.camera.core.ImageProxy.PlaneProxy) { registrar.getPigeonApiPlaneProxy().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("PlaneProxy", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.video.QualitySelector) { + } + else if (value is androidx.camera.video.QualitySelector) { registrar.getPigeonApiQualitySelector().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("QualitySelector", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.video.FallbackStrategy) { + } + else if (value is androidx.camera.video.FallbackStrategy) { registrar.getPigeonApiFallbackStrategy().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("FallbackStrategy", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.CameraControl) { + } + else if (value is androidx.camera.core.CameraControl) { registrar.getPigeonApiCameraControl().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraControl", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.FocusMeteringAction.Builder) { + } + else if (value is androidx.camera.core.FocusMeteringAction.Builder) { registrar.getPigeonApiFocusMeteringActionBuilder().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("FocusMeteringActionBuilder", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.FocusMeteringAction) { + } + else if (value is androidx.camera.core.FocusMeteringAction) { registrar.getPigeonApiFocusMeteringAction().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("FocusMeteringAction", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.FocusMeteringResult) { + } + else if (value is androidx.camera.core.FocusMeteringResult) { registrar.getPigeonApiFocusMeteringResult().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("FocusMeteringResult", value, it.exceptionOrNull()) } } - } else if (value is android.hardware.camera2.CaptureRequest) { + } + else if (value is android.hardware.camera2.CaptureRequest) { registrar.getPigeonApiCaptureRequest().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CaptureRequest", value, it.exceptionOrNull()) } } - } else if (value is android.hardware.camera2.CaptureRequest.Key<*>) { + } + else if (value is android.hardware.camera2.CaptureRequest.Key<*>) { registrar.getPigeonApiCaptureRequestKey().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CaptureRequestKey", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.camera2.interop.CaptureRequestOptions) { + } + else if (value is androidx.camera.camera2.interop.CaptureRequestOptions) { registrar.getPigeonApiCaptureRequestOptions().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CaptureRequestOptions", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.camera2.interop.Camera2CameraControl) { + } + else if (value is androidx.camera.camera2.interop.Camera2CameraControl) { registrar.getPigeonApiCamera2CameraControl().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Camera2CameraControl", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.resolutionselector.ResolutionFilter) { + } + else if (value is androidx.camera.core.resolutionselector.ResolutionFilter) { registrar.getPigeonApiResolutionFilter().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ResolutionFilter", value, it.exceptionOrNull()) } } - } else if (value is android.hardware.camera2.CameraCharacteristics.Key<*>) { + } + else if (value is android.hardware.camera2.CameraCharacteristics.Key<*>) { registrar.getPigeonApiCameraCharacteristicsKey().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraCharacteristicsKey", value, it.exceptionOrNull()) } } - } else if (value is android.hardware.camera2.CameraCharacteristics) { + } + else if (value is android.hardware.camera2.CameraCharacteristics) { registrar.getPigeonApiCameraCharacteristics().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraCharacteristics", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.camera2.interop.Camera2CameraInfo) { + } + else if (value is androidx.camera.camera2.interop.Camera2CameraInfo) { registrar.getPigeonApiCamera2CameraInfo().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Camera2CameraInfo", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.DisplayOrientedMeteringPointFactory) { + } + else if (value is androidx.camera.core.DisplayOrientedMeteringPointFactory) { registrar.getPigeonApiDisplayOrientedMeteringPointFactory().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("DisplayOrientedMeteringPointFactory", value, it.exceptionOrNull()) } } - } else if (value is androidx.camera.core.MeteringPointFactory) { + } + else if (value is androidx.camera.core.MeteringPointFactory) { registrar.getPigeonApiMeteringPointFactory().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("MeteringPointFactory", value, it.exceptionOrNull()) @@ -1215,9 +1227,7 @@ private class CameraXLibraryPigeonProxyApiBaseCodec( stream.write(128) writeValue(stream, registrar.instanceManager.getIdentifierForStrongReference(value)) } - else -> - throw IllegalArgumentException( - "Unsupported value: '$value' of type '${value.javaClass.name}'") + else -> throw IllegalArgumentException("Unsupported value: '$value' of type '${value.javaClass.name}'") } } } @@ -1225,22 +1235,27 @@ private class CameraXLibraryPigeonProxyApiBaseCodec( /** * Generally classifies the overall set of the camera device functionality. * - * See - * https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_3. + * See https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_3. */ enum class InfoSupportedHardwareLevel(val raw: Int) { /** - * This camera device is capable of YUV reprocessing and RAW data capture, in addition to - * FULL-level capabilities. + * This camera device is capable of YUV reprocessing and RAW data capture, in + * addition to FULL-level capabilities. */ LEVEL3(0), - /** This camera device is backed by an external camera connected to this Android device. */ + /** + * This camera device is backed by an external camera connected to this + * Android device. + */ EXTERNAL(1), /** This camera device is capable of supporting advanced imaging applications. */ FULL(2), /** This camera device is running in backward compatibility mode. */ LEGACY(3), - /** This camera device does not have enough capabilities to qualify as a FULL device or better. */ + /** + * This camera device does not have enough capabilities to qualify as a FULL + * device or better. + */ LIMITED(4); companion object { @@ -1287,8 +1302,8 @@ enum class CameraStateType(val raw: Int) { /** Represents a state where the camera device is currently opening. */ OPENING(3), /** - * Represents a state where the camera is waiting for a signal to attempt to open the camera - * device. + * Represents a state where the camera is waiting for a signal to attempt to + * open the camera device. */ PENDING_OPEN(4), /** This value is not recognized by this wrapper. */ @@ -1301,7 +1316,7 @@ enum class CameraStateType(val raw: Int) { } } -/** The types (T) properly wrapped to be used as a LiveData. */ +/** The types (T) properly wrapped to be used as a `LiveData`. */ enum class LiveDataSupportedType(val raw: Int) { CAMERA_STATE(0), ZOOM_STATE(1); @@ -1314,8 +1329,8 @@ enum class LiveDataSupportedType(val raw: Int) { } /** - * Video quality constraints that will be used by a QualitySelector to choose an appropriate video - * resolution. + * Video quality constraints that will be used by a QualitySelector to choose + * an appropriate video resolution. * * These are pre-defined quality constants that are universally used for video. * @@ -1345,15 +1360,23 @@ enum class VideoQuality(val raw: Int) { /** * A flag used for indicating metering mode regions. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/core/FocusMeteringAction#FLAG_AF(). + * See https://developer.android.com/reference/kotlin/androidx/camera/core/FocusMeteringAction#FLAG_AF(). */ enum class MeteringMode(val raw: Int) { - /** A flag used in metering mode indicating the AE (Auto Exposure) region is enabled. */ + /** + * A flag used in metering mode indicating the AE (Auto Exposure) region is + * enabled. + */ AE(0), - /** A flag used in metering mode indicating the AF (Auto Focus) region is enabled. */ + /** + * A flag used in metering mode indicating the AF (Auto Focus) region is + * enabled. + */ AF(1), - /** A flag used in metering mode indicating the AWB (Auto White Balance) region is enabled. */ + /** + * A flag used in metering mode indicating the AWB (Auto White Balance) + * region is enabled. + */ AWB(2); companion object { @@ -1366,15 +1389,20 @@ enum class MeteringMode(val raw: Int) { /** * Direction of lens of a camera. * - * See - * https://developer.android.com/reference/androidx/camera/core/CameraSelector#LENS_FACING_BACK(). + * See https://developer.android.com/reference/androidx/camera/core/CameraSelector#LENS_FACING_BACK(). */ enum class LensFacing(val raw: Int) { /** A camera on the device facing the same direction as the device's screen. */ FRONT(0), - /** A camera on the device facing the opposite direction as the device's screen. */ + /** + * A camera on the device facing the opposite direction as the device's + * screen. + */ BACK(1), - /** An external camera that has no fixed facing relative to the device's screen. */ + /** + * An external camera that has no fixed facing relative to the device's + * screen. + */ EXTERNAL(2), /** A camera on the devices that its lens facing is resolved. */ UNKNOWN(3); @@ -1389,14 +1417,14 @@ enum class LensFacing(val raw: Int) { /** * FlashModes for image capture. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/core/ImageCapture#FLASH_MODE_AUTO(). + * See https://developer.android.com/reference/kotlin/androidx/camera/core/ImageCapture#FLASH_MODE_AUTO(). */ enum class CameraXFlashMode(val raw: Int) { /** * Auto flash. * - * The flash will be used according to the camera system's determination when taking a picture. + * The flash will be used according to the camera system's determination when + * taking a picture. */ AUTO(0), /** @@ -1420,36 +1448,39 @@ enum class CameraXFlashMode(val raw: Int) { } /** - * Fallback rule for choosing an alternate size when the specified bound size is unavailable. + * Fallback rule for choosing an alternate size when the specified bound size + * is unavailable. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionStrategy. + * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionStrategy. */ enum class ResolutionStrategyFallbackRule(val raw: Int) { /** - * When the specified bound size is unavailable, CameraX falls back to the closest higher - * resolution size. + * When the specified bound size is unavailable, CameraX falls back to the + * closest higher resolution size. */ CLOSEST_HIGHER(0), /** - * When the specified bound size is unavailable, CameraX falls back to select the closest higher - * resolution size. + * When the specified bound size is unavailable, CameraX falls back to select + * the closest higher resolution size. */ CLOSEST_HIGHER_THEN_LOWER(1), /** - * When the specified bound size is unavailable, CameraX falls back to the closest lower - * resolution size. + * When the specified bound size is unavailable, CameraX falls back to the + * closest lower resolution size. */ CLOSEST_LOWER(2), /** - * When the specified bound size is unavailable, CameraX falls back to select the closest lower - * resolution size. + * When the specified bound size is unavailable, CameraX falls back to select + * the closest lower resolution size. * - * If CameraX still cannot find any available resolution, it will fallback to select other higher - * resolutions. + * If CameraX still cannot find any available resolution, it will fallback to + * select other higher resolutions. */ CLOSEST_LOWER_THEN_HIGHER(3), - /** CameraX doesn't select an alternate size when the specified bound size is unavailable. */ + /** + * CameraX doesn't select an alternate size when the specified bound size is + * unavailable. + */ NONE(4), /** The value is not recognized by the wrapper. */ UNKNOWN(5); @@ -1462,20 +1493,21 @@ enum class ResolutionStrategyFallbackRule(val raw: Int) { } /** - * Fallback rule for choosing the aspect ratio when the preferred aspect ratio is not available. + * Fallback rule for choosing the aspect ratio when the preferred aspect ratio + * is not available. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/AspectRatioStrategy#FALLBACK_RULE_AUTO(). + * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/AspectRatioStrategy#FALLBACK_RULE_AUTO(). */ enum class AspectRatioStrategyFallbackRule(val raw: Int) { /** - * CameraX automatically chooses the next best aspect ratio which contains the closest field of - * view (FOV) of the camera sensor, from the remaining options. + * CameraX automatically chooses the next best aspect ratio which contains + * the closest field of view (FOV) of the camera sensor, from the remaining + * options. */ AUTO(0), /** - * CameraX doesn't fall back to select sizes of any other aspect ratio when this fallback rule is - * used. + * CameraX doesn't fall back to select sizes of any other aspect ratio when + * this fallback rule is used. */ NONE(1), /** The value is not recognized by the wrapper. */ @@ -1494,23 +1526,34 @@ enum class AspectRatioStrategyFallbackRule(val raw: Int) { * https://developer.android.com/reference/androidx/camera/core/CameraState#ERROR_CAMERA_DISABLED() */ enum class CameraStateErrorCode(val raw: Int) { - /** An error indicating that the camera device could not be opened due to a device policy. */ + /** + * An error indicating that the camera device could not be opened due to a + * device policy. + */ CAMERA_DISABLED(0), - /** An error indicating that the camera device was closed due to a fatal error. */ + /** + * An error indicating that the camera device was closed due to a fatal + * error. + */ CAMERA_FATAL_ERROR(1), /** An error indicating that the camera device is already in use. */ CAMERA_IN_USE(2), /** - * An error indicating that the camera could not be opened because "Do Not Disturb" mode is - * enabled on devices affected by a bug in Android 9 (API level 28). + * An error indicating that the camera could not be opened because "Do Not + * Disturb" mode is enabled on devices affected by a bug in Android 9 (API + * level 28). */ DO_NOT_DISTURB_MODE_ENABLED(3), /** - * An error indicating that the limit number of open cameras has been reached, and more cameras - * cannot be opened until other instances are closed. + * An error indicating that the limit number of open cameras has been + * reached, and more cameras cannot be opened until other instances are + * closed. */ MAX_CAMERAS_IN_USE(4), - /** An error indicating that the camera device has encountered a recoverable error. */ + /** + * An error indicating that the camera device has encountered a recoverable + * error. + */ OTHER_RECOVERABLE_ERROR(5), /** An error indicating that configuring the camera has failed. */ STREAM_CONFIG(6), @@ -1523,33 +1566,48 @@ enum class CameraStateErrorCode(val raw: Int) { } } } - private open class CameraXLibraryPigeonCodec : StandardMessageCodec() { override fun readValueOfType(type: Byte, buffer: ByteBuffer): Any? { return when (type) { 129.toByte() -> { - return (readValue(buffer) as Long?)?.let { InfoSupportedHardwareLevel.ofRaw(it.toInt()) } + return (readValue(buffer) as Long?)?.let { + InfoSupportedHardwareLevel.ofRaw(it.toInt()) + } } 130.toByte() -> { - return (readValue(buffer) as Long?)?.let { AspectRatio.ofRaw(it.toInt()) } + return (readValue(buffer) as Long?)?.let { + AspectRatio.ofRaw(it.toInt()) + } } 131.toByte() -> { - return (readValue(buffer) as Long?)?.let { CameraStateType.ofRaw(it.toInt()) } + return (readValue(buffer) as Long?)?.let { + CameraStateType.ofRaw(it.toInt()) + } } 132.toByte() -> { - return (readValue(buffer) as Long?)?.let { LiveDataSupportedType.ofRaw(it.toInt()) } + return (readValue(buffer) as Long?)?.let { + LiveDataSupportedType.ofRaw(it.toInt()) + } } 133.toByte() -> { - return (readValue(buffer) as Long?)?.let { VideoQuality.ofRaw(it.toInt()) } + return (readValue(buffer) as Long?)?.let { + VideoQuality.ofRaw(it.toInt()) + } } 134.toByte() -> { - return (readValue(buffer) as Long?)?.let { MeteringMode.ofRaw(it.toInt()) } + return (readValue(buffer) as Long?)?.let { + MeteringMode.ofRaw(it.toInt()) + } } 135.toByte() -> { - return (readValue(buffer) as Long?)?.let { LensFacing.ofRaw(it.toInt()) } + return (readValue(buffer) as Long?)?.let { + LensFacing.ofRaw(it.toInt()) + } } 136.toByte() -> { - return (readValue(buffer) as Long?)?.let { CameraXFlashMode.ofRaw(it.toInt()) } + return (readValue(buffer) as Long?)?.let { + CameraXFlashMode.ofRaw(it.toInt()) + } } 137.toByte() -> { return (readValue(buffer) as Long?)?.let { @@ -1562,13 +1620,14 @@ private open class CameraXLibraryPigeonCodec : StandardMessageCodec() { } } 139.toByte() -> { - return (readValue(buffer) as Long?)?.let { CameraStateErrorCode.ofRaw(it.toInt()) } + return (readValue(buffer) as Long?)?.let { + CameraStateErrorCode.ofRaw(it.toInt()) + } } else -> super.readValueOfType(type, buffer) } } - - override fun writeValue(stream: ByteArrayOutputStream, value: Any?) { + override fun writeValue(stream: ByteArrayOutputStream, value: Any?) { when (value) { is InfoSupportedHardwareLevel -> { stream.write(129) @@ -1625,9 +1684,7 @@ private open class CameraXLibraryPigeonCodec : StandardMessageCodec() { * See https://developer.android.com/reference/android/util/Size.html. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraSize( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCameraSize(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { abstract fun pigeon_defaultConstructor(width: Long, height: Long): android.util.Size /** The width of the size (in pixels). */ @@ -1641,25 +1698,19 @@ abstract class PigeonApiCameraSize( fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraSize?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val widthArg = args[1] as Long val heightArg = args[2] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(widthArg, heightArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(widthArg,heightArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -1671,16 +1722,16 @@ abstract class PigeonApiCameraSize( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraSize and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: android.util.Size, callback: (Result) -> Unit) { + fun pigeon_newInstance(pigeon_instanceArg: android.util.Size, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val widthArg = width(pigeon_instanceArg) val heightArg = height(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -1690,66 +1741,60 @@ abstract class PigeonApiCameraSize( channel.send(listOf(pigeon_identifierArg, widthArg, heightArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * A `ResolutionInfo` allows the application to know the resolution information of a specific use - * case. + * A `ResolutionInfo` allows the application to know the resolution information + * of a specific use case. * * See https://developer.android.com/reference/androidx/camera/core/ResolutionInfo. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiResolutionInfo( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiResolutionInfo(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** Returns the output resolution used for the use case. */ abstract fun resolution(pigeon_instance: androidx.camera.core.ResolutionInfo): android.util.Size @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ResolutionInfo and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.ResolutionInfo, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ResolutionInfo, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val resolutionArg = resolution(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, resolutionArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * Immutable class for describing the range of two integer values. @@ -1759,9 +1804,7 @@ abstract class PigeonApiResolutionInfo( * See https://developer.android.com/reference/android/util/Range.html. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraIntegerRange( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCameraIntegerRange(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { abstract fun pigeon_defaultConstructor(lower: Long, upper: Long): android.util.Range<*> /** The lower endpoint. */ @@ -1775,25 +1818,19 @@ abstract class PigeonApiCameraIntegerRange( fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraIntegerRange?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val lowerArg = args[1] as Long val upperArg = args[2] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(lowerArg, upperArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(lowerArg,upperArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -1805,40 +1842,36 @@ abstract class PigeonApiCameraIntegerRange( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraIntegerRange and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: android.util.Range<*>, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: android.util.Range<*>, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val lowerArg = lower(pigeon_instanceArg) val upperArg = upper(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, lowerArg, upperArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * VideoRecordEvent is used to report video recording events and status. @@ -1846,43 +1879,37 @@ abstract class PigeonApiCameraIntegerRange( * See https://developer.android.com/reference/androidx/camera/video/VideoRecordEvent. */ @Suppress("UNCHECKED_CAST") -open class PigeonApiVideoRecordEvent( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +open class PigeonApiVideoRecordEvent(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of VideoRecordEvent and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.video.VideoRecordEvent, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.VideoRecordEvent, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.VideoRecordEvent.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.VideoRecordEvent.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * Indicates the start of recording. @@ -1890,49 +1917,44 @@ open class PigeonApiVideoRecordEvent( * See https://developer.android.com/reference/androidx/camera/video/VideoRecordEvent.Start. */ @Suppress("UNCHECKED_CAST") -open class PigeonApiVideoRecordEventStart( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +open class PigeonApiVideoRecordEventStart(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of VideoRecordEventStart and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.video.VideoRecordEvent.Start, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.VideoRecordEvent.Start, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventStart.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventStart.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiVideoRecordEvent] used to access callback methods */ - fun pigeon_getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent { + fun pigeon_getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent + { return pigeonRegistrar.getPigeonApiVideoRecordEvent() } + } /** * Indicates the finalization of recording. @@ -1940,67 +1962,58 @@ open class PigeonApiVideoRecordEventStart( * See https://developer.android.com/reference/androidx/camera/video/VideoRecordEvent.Finalize. */ @Suppress("UNCHECKED_CAST") -open class PigeonApiVideoRecordEventFinalize( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +open class PigeonApiVideoRecordEventFinalize(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { @Suppress("LocalVariableName", "FunctionName") - /** - * Creates a Dart instance of VideoRecordEventFinalize and attaches it to [pigeon_instanceArg]. - */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.video.VideoRecordEvent.Finalize, - callback: (Result) -> Unit - ) { + /** Creates a Dart instance of VideoRecordEventFinalize and attaches it to [pigeon_instanceArg]. */ + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.VideoRecordEvent.Finalize, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventFinalize.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventFinalize.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiVideoRecordEvent] used to access callback methods */ - fun pigeon_getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent { + fun pigeon_getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent + { return pigeonRegistrar.getPigeonApiVideoRecordEvent() } + } /** - * A MeteringPoint is used to specify a region which can then be converted to sensor coordinate - * system for focus and metering purpose. + * A MeteringPoint is used to specify a region which can then be converted to + * sensor coordinate system for focus and metering purpose. * * See https://developer.android.com/reference/androidx/camera/core/MeteringPoint. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiMeteringPoint( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiMeteringPoint(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** * Size of the MeteringPoint width and height (ranging from 0 to 1). * - * It is the percentage of the sensor width/height (or crop region width/height if crop region is - * set). + * It is the percentage of the sensor width/height (or crop region + * width/height if crop region is set). */ abstract fun getSize(pigeon_instance: androidx.camera.core.MeteringPoint): Double @@ -2009,21 +2022,16 @@ abstract class PigeonApiMeteringPoint( fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiMeteringPoint?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.MeteringPoint.getSize", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.MeteringPoint.getSize", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.MeteringPoint - val wrapped: List = - try { - listOf(api.getSize(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getSize(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2035,19 +2043,16 @@ abstract class PigeonApiMeteringPoint( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of MeteringPoint and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.MeteringPoint, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.MeteringPoint, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.MeteringPoint.pigeon_newInstance" @@ -2055,17 +2060,17 @@ abstract class PigeonApiMeteringPoint( channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * A simple callback that can receive from LiveData. @@ -2081,23 +2086,17 @@ abstract class PigeonApiObserver(open val pigeonRegistrar: CameraXLibraryPigeonP fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiObserver?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Observer.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Observer.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2109,44 +2108,33 @@ abstract class PigeonApiObserver(open val pigeonRegistrar: CameraXLibraryPigeonP @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Observer and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.lifecycle.Observer<*>, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.lifecycle.Observer<*>, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { + } else { callback( Result.failure( - CameraXError( - "new-instance-error", - "Attempting to create a new Dart instance of Observer, but the class has a nonnull callback method.", - ""))) + CameraXError("new-instance-error", "Attempting to create a new Dart instance of Observer, but the class has a nonnull callback method.", ""))) } } /** Called when the data is changed to value. */ - fun onChanged( - pigeon_instanceArg: androidx.lifecycle.Observer<*>, - valueArg: Any, - callback: (Result) -> Unit - ) { + fun onChanged(pigeon_instanceArg: androidx.lifecycle.Observer<*>, valueArg: Any, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) return - } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback( Result.failure( - CameraXError( - "missing-instance-error", - "Callback to `Observer.onChanged` failed because native instance was not in the instance manager.", - ""))) + CameraXError("missing-instance-error", "Callback to `Observer.onChanged` failed because native instance was not in the instance manager.", ""))) return } val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -2162,9 +2150,10 @@ abstract class PigeonApiObserver(open val pigeonRegistrar: CameraXLibraryPigeonP } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } + } /** * An interface for retrieving camera information. @@ -2172,12 +2161,10 @@ abstract class PigeonApiObserver(open val pigeonRegistrar: CameraXLibraryPigeonP * See https://developer.android.com/reference/androidx/camera/core/CameraInfo. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraInfo( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCameraInfo(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** - * Returns the sensor rotation in degrees, relative to the device's "natural" (default) - * orientation. + * Returns the sensor rotation in degrees, relative to the device's "natural" + * (default) orientation. */ abstract fun sensorRotationDegrees(pigeon_instance: androidx.camera.core.CameraInfo): Long @@ -2185,40 +2172,29 @@ abstract class PigeonApiCameraInfo( abstract fun lensFacing(pigeon_instance: androidx.camera.core.CameraInfo): LensFacing /** Returns a ExposureState. */ - abstract fun exposureState( - pigeon_instance: androidx.camera.core.CameraInfo - ): androidx.camera.core.ExposureState + abstract fun exposureState(pigeon_instance: androidx.camera.core.CameraInfo): androidx.camera.core.ExposureState /** A LiveData of the camera's state. */ - abstract fun getCameraState( - pigeon_instance: androidx.camera.core.CameraInfo - ): io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + abstract fun getCameraState(pigeon_instance: androidx.camera.core.CameraInfo): io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper /** A LiveData of ZoomState. */ - abstract fun getZoomState( - pigeon_instance: androidx.camera.core.CameraInfo - ): io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + abstract fun getZoomState(pigeon_instance: androidx.camera.core.CameraInfo): io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraInfo?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraInfo.getCameraState", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraInfo.getCameraState", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.CameraInfo - val wrapped: List = - try { - listOf(api.getCameraState(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getCameraState(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2226,21 +2202,16 @@ abstract class PigeonApiCameraInfo( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraInfo.getZoomState", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraInfo.getZoomState", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.CameraInfo - val wrapped: List = - try { - listOf(api.getZoomState(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getZoomState(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2252,19 +2223,16 @@ abstract class PigeonApiCameraInfo( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraInfo and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.CameraInfo, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.CameraInfo, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val sensorRotationDegreesArg = sensorRotationDegrees(pigeon_instanceArg) val lensFacingArg = lensFacing(pigeon_instanceArg) val exposureStateArg = exposureState(pigeon_instanceArg) @@ -2272,36 +2240,30 @@ abstract class PigeonApiCameraInfo( val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) - channel.send( - listOf(pigeon_identifierArg, sensorRotationDegreesArg, lensFacingArg, exposureStateArg)) { - if (it is List<*>) { - if (it.size > 1) { - callback( - Result.failure( - CameraXError(it[0] as String, it[1] as String, it[2] as String?))) - } else { - callback(Result.success(Unit)) - } - } else { - callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + channel.send(listOf(pigeon_identifierArg, sensorRotationDegreesArg, lensFacingArg, exposureStateArg)) { + if (it is List<*>) { + if (it.size > 1) { + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + } else { + callback(Result.success(Unit)) } + } else { + callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) + } + } } } + } /** - * A set of requirements and priorities used to select a camera or return a filtered set of cameras. + * A set of requirements and priorities used to select a camera or return a + * filtered set of cameras. * * See https://developer.android.com/reference/androidx/camera/core/CameraSelector. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraSelector( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { - abstract fun pigeon_defaultConstructor( - requireLensFacing: LensFacing?, - cameraInfoForFilter: androidx.camera.core.CameraInfo? - ): androidx.camera.core.CameraSelector +abstract class PigeonApiCameraSelector(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { + abstract fun pigeon_defaultConstructor(requireLensFacing: LensFacing?, cameraInfoForFilter: androidx.camera.core.CameraInfo?): androidx.camera.core.CameraSelector /** A static `CameraSelector` that selects the default back facing camera. */ abstract fun defaultBackCamera(): androidx.camera.core.CameraSelector @@ -2309,37 +2271,30 @@ abstract class PigeonApiCameraSelector( /** A static `CameraSelector` that selects the default front facing camera. */ abstract fun defaultFrontCamera(): androidx.camera.core.CameraSelector - /** Filters the input `CameraInfo`s using the `CameraFilter`s assigned to the selector. */ - abstract fun filter( - pigeon_instance: androidx.camera.core.CameraSelector, - cameraInfos: List - ): List + /** + * Filters the input `CameraInfo`s using the `CameraFilter`s assigned to the + * selector. + */ + abstract fun filter(pigeon_instance: androidx.camera.core.CameraSelector, cameraInfos: List): List companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraSelector?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val requireLensFacingArg = args[1] as LensFacing? val cameraInfoForFilterArg = args[2] as androidx.camera.core.CameraInfo? - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(requireLensFacingArg, cameraInfoForFilterArg), - pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(requireLensFacingArg,cameraInfoForFilterArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2347,23 +2302,17 @@ abstract class PigeonApiCameraSelector( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraSelector.defaultBackCamera", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraSelector.defaultBackCamera", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.defaultBackCamera(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.defaultBackCamera(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2371,23 +2320,17 @@ abstract class PigeonApiCameraSelector( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraSelector.defaultFrontCamera", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraSelector.defaultFrontCamera", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.defaultFrontCamera(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.defaultFrontCamera(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2395,22 +2338,17 @@ abstract class PigeonApiCameraSelector( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraSelector.filter", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraSelector.filter", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.CameraSelector val cameraInfosArg = args[1] as List - val wrapped: List = - try { - listOf(api.filter(pigeon_instanceArg, cameraInfosArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.filter(pigeon_instanceArg, cameraInfosArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2422,97 +2360,73 @@ abstract class PigeonApiCameraSelector( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraSelector and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.CameraSelector, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.CameraSelector, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * A singleton which can be used to bind the lifecycle of cameras to any `LifecycleOwner` within an - * application's process. + * A singleton which can be used to bind the lifecycle of cameras to any + * `LifecycleOwner` within an application's process. * * See https://developer.android.com/reference/androidx/camera/lifecycle/ProcessCameraProvider. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiProcessCameraProvider( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiProcessCameraProvider(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** Retrieves the ProcessCameraProvider associated with the current process. */ - abstract fun getInstance( - callback: (Result) -> Unit - ) + abstract fun getInstance(callback: (Result) -> Unit) /** The `CameraInfo` instances of the available cameras. */ - abstract fun getAvailableCameraInfos( - pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider - ): List + abstract fun getAvailableCameraInfos(pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider): List /** Binds the collection of `UseCase` to a `LifecycleOwner`. */ - abstract fun bindToLifecycle( - pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, - cameraSelector: androidx.camera.core.CameraSelector, - useCases: List - ): androidx.camera.core.Camera + abstract fun bindToLifecycle(pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, cameraSelector: androidx.camera.core.CameraSelector, useCases: List): androidx.camera.core.Camera /** Returns true if the `UseCase` is bound to a lifecycle. */ - abstract fun isBound( - pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, - useCase: androidx.camera.core.UseCase - ): Boolean + abstract fun isBound(pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, useCase: androidx.camera.core.UseCase): Boolean /** Unbinds all specified use cases from the lifecycle provider. */ - abstract fun unbind( - pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, - useCases: List - ) + abstract fun unbind(pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, useCases: List) - /** Unbinds all use cases from the lifecycle provider and removes them from CameraX. */ + /** + * Unbinds all use cases from the lifecycle provider and removes them from + * CameraX. + */ abstract fun unbindAll(pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider) companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - api: PigeonApiProcessCameraProvider? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiProcessCameraProvider?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.getInstance", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.getInstance", codec) if (api != null) { channel.setMessageHandler { _, reply -> - api.getInstance { result: Result -> + api.getInstance{ result: Result -> val error = result.exceptionOrNull() if (error != null) { reply.reply(CameraXLibraryPigeonUtils.wrapError(error)) @@ -2527,21 +2441,16 @@ abstract class PigeonApiProcessCameraProvider( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.getAvailableCameraInfos", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.getAvailableCameraInfos", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.lifecycle.ProcessCameraProvider - val wrapped: List = - try { - listOf(api.getAvailableCameraInfos(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getAvailableCameraInfos(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2549,23 +2458,18 @@ abstract class PigeonApiProcessCameraProvider( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.bindToLifecycle", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.bindToLifecycle", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.lifecycle.ProcessCameraProvider val cameraSelectorArg = args[1] as androidx.camera.core.CameraSelector val useCasesArg = args[2] as List - val wrapped: List = - try { - listOf(api.bindToLifecycle(pigeon_instanceArg, cameraSelectorArg, useCasesArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.bindToLifecycle(pigeon_instanceArg, cameraSelectorArg, useCasesArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2573,22 +2477,17 @@ abstract class PigeonApiProcessCameraProvider( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.isBound", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.isBound", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.lifecycle.ProcessCameraProvider val useCaseArg = args[1] as androidx.camera.core.UseCase - val wrapped: List = - try { - listOf(api.isBound(pigeon_instanceArg, useCaseArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.isBound(pigeon_instanceArg, useCaseArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2596,23 +2495,18 @@ abstract class PigeonApiProcessCameraProvider( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.unbind", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.unbind", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.lifecycle.ProcessCameraProvider val useCasesArg = args[1] as List - val wrapped: List = - try { - api.unbind(pigeon_instanceArg, useCasesArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.unbind(pigeon_instanceArg, useCasesArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2620,22 +2514,17 @@ abstract class PigeonApiProcessCameraProvider( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.unbindAll", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.unbindAll", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.lifecycle.ProcessCameraProvider - val wrapped: List = - try { - api.unbindAll(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.unbindAll(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2647,38 +2536,34 @@ abstract class PigeonApiProcessCameraProvider( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ProcessCameraProvider and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.lifecycle.ProcessCameraProvider, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.lifecycle.ProcessCameraProvider, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * The use case which all other use cases are built on top of. @@ -2689,19 +2574,16 @@ abstract class PigeonApiProcessCameraProvider( open class PigeonApiUseCase(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of UseCase and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.UseCase, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.UseCase, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.UseCase.pigeon_newInstance" @@ -2709,56 +2591,48 @@ open class PigeonApiUseCase(open val pigeonRegistrar: CameraXLibraryPigeonProxyA channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * The camera interface is used to control the flow of data to use cases, control the camera via the - * `CameraControl`, and publish the state of the camera via CameraInfo. + * The camera interface is used to control the flow of data to use cases, + * control the camera via the `CameraControl`, and publish the state of the + * camera via CameraInfo. * * See https://developer.android.com/reference/kotlin/androidx/camera/core/Camera. */ @Suppress("UNCHECKED_CAST") abstract class PigeonApiCamera(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** The `CameraControl` for the Camera. */ - abstract fun cameraControl( - pigeon_instance: androidx.camera.core.Camera - ): androidx.camera.core.CameraControl + abstract fun cameraControl(pigeon_instance: androidx.camera.core.Camera): androidx.camera.core.CameraControl /** Returns information about this camera. */ - abstract fun getCameraInfo( - pigeon_instance: androidx.camera.core.Camera - ): androidx.camera.core.CameraInfo + abstract fun getCameraInfo(pigeon_instance: androidx.camera.core.Camera): androidx.camera.core.CameraInfo companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCamera?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Camera.getCameraInfo", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera.getCameraInfo", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Camera - val wrapped: List = - try { - listOf(api.getCameraInfo(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getCameraInfo(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2770,19 +2644,16 @@ abstract class PigeonApiCamera(open val pigeonRegistrar: CameraXLibraryPigeonPro @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Camera and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.Camera, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.Camera, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val cameraControlArg = cameraControl(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec @@ -2791,63 +2662,47 @@ abstract class PigeonApiCamera(open val pigeonRegistrar: CameraXLibraryPigeonPro channel.send(listOf(pigeon_identifierArg, cameraControlArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** Convenience class for accessing system resources. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiSystemServicesManager( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiSystemServicesManager(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { abstract fun pigeon_defaultConstructor(): SystemServicesManager - abstract fun requestCameraPermissions( - pigeon_instance: SystemServicesManager, - enableAudio: Boolean, - callback: (Result) -> Unit - ) + abstract fun requestCameraPermissions(pigeon_instance: SystemServicesManager, enableAudio: Boolean, callback: (Result) -> Unit) - /** Returns a path to be used to create a temp file in the current cache directory. */ - abstract fun getTempFilePath( - pigeon_instance: SystemServicesManager, - prefix: String, - suffix: String - ): String + /** + * Returns a path to be used to create a temp file in the current cache + * directory. + */ + abstract fun getTempFilePath(pigeon_instance: SystemServicesManager, prefix: String, suffix: String): String companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - api: PigeonApiSystemServicesManager? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiSystemServicesManager?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2855,18 +2710,13 @@ abstract class PigeonApiSystemServicesManager( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.requestCameraPermissions", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.requestCameraPermissions", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as SystemServicesManager val enableAudioArg = args[1] as Boolean - api.requestCameraPermissions(pigeon_instanceArg, enableAudioArg) { - result: Result -> + api.requestCameraPermissions(pigeon_instanceArg, enableAudioArg) { result: Result -> val error = result.exceptionOrNull() if (error != null) { reply.reply(CameraXLibraryPigeonUtils.wrapError(error)) @@ -2881,23 +2731,18 @@ abstract class PigeonApiSystemServicesManager( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.getTempFilePath", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.getTempFilePath", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as SystemServicesManager val prefixArg = args[1] as String val suffixArg = args[2] as String - val wrapped: List = - try { - listOf(api.getTempFilePath(pigeon_instanceArg, prefixArg, suffixArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getTempFilePath(pigeon_instanceArg, prefixArg, suffixArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2909,49 +2754,37 @@ abstract class PigeonApiSystemServicesManager( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of SystemServicesManager and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: SystemServicesManager, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: SystemServicesManager, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { + } else { callback( Result.failure( - CameraXError( - "new-instance-error", - "Attempting to create a new Dart instance of SystemServicesManager, but the class has a nonnull callback method.", - ""))) + CameraXError("new-instance-error", "Attempting to create a new Dart instance of SystemServicesManager, but the class has a nonnull callback method.", ""))) } } - fun onCameraError( - pigeon_instanceArg: SystemServicesManager, - errorDescriptionArg: String, - callback: (Result) -> Unit - ) { + fun onCameraError(pigeon_instanceArg: SystemServicesManager, errorDescriptionArg: String, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) return - } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback( Result.failure( - CameraXError( - "missing-instance-error", - "Callback to `SystemServicesManager.onCameraError` failed because native instance was not in the instance manager.", - ""))) + CameraXError("missing-instance-error", "Callback to `SystemServicesManager.onCameraError` failed because native instance was not in the instance manager.", ""))) return } val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError" + val channelName = "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_instanceArg, errorDescriptionArg)) { if (it is List<*>) { @@ -2962,63 +2795,57 @@ abstract class PigeonApiSystemServicesManager( } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } + } /** Contains data when an attempt to retrieve camera permissions fails. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraPermissionsError( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCameraPermissionsError(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { abstract fun errorCode(pigeon_instance: CameraPermissionsError): String abstract fun description(pigeon_instance: CameraPermissionsError): String @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraPermissionsError and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: CameraPermissionsError, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: CameraPermissionsError, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val errorCodeArg = errorCode(pigeon_instanceArg) val descriptionArg = description(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, errorCodeArg, descriptionArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * Support class to help to determine the media orientation based on the orientation of the device. + * Support class to help to determine the media orientation based on the + * orientation of the device. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiDeviceOrientationManager( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiDeviceOrientationManager(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { abstract fun pigeon_defaultConstructor(): DeviceOrientationManager abstract fun startListeningForDeviceOrientationChange(pigeon_instance: DeviceOrientationManager) @@ -3031,29 +2858,20 @@ abstract class PigeonApiDeviceOrientationManager( companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - api: PigeonApiDeviceOrientationManager? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiDeviceOrientationManager?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3061,22 +2879,17 @@ abstract class PigeonApiDeviceOrientationManager( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.startListeningForDeviceOrientationChange", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.startListeningForDeviceOrientationChange", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as DeviceOrientationManager - val wrapped: List = - try { - api.startListeningForDeviceOrientationChange(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.startListeningForDeviceOrientationChange(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3084,22 +2897,17 @@ abstract class PigeonApiDeviceOrientationManager( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.stopListeningForDeviceOrientationChange", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.stopListeningForDeviceOrientationChange", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as DeviceOrientationManager - val wrapped: List = - try { - api.stopListeningForDeviceOrientationChange(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.stopListeningForDeviceOrientationChange(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3107,21 +2915,16 @@ abstract class PigeonApiDeviceOrientationManager( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.getDefaultDisplayRotation", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.getDefaultDisplayRotation", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as DeviceOrientationManager - val wrapped: List = - try { - listOf(api.getDefaultDisplayRotation(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getDefaultDisplayRotation(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3129,21 +2932,16 @@ abstract class PigeonApiDeviceOrientationManager( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.getUiOrientation", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.getUiOrientation", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as DeviceOrientationManager - val wrapped: List = - try { - listOf(api.getUiOrientation(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getUiOrientation(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3154,52 +2952,38 @@ abstract class PigeonApiDeviceOrientationManager( } @Suppress("LocalVariableName", "FunctionName") - /** - * Creates a Dart instance of DeviceOrientationManager and attaches it to [pigeon_instanceArg]. - */ - fun pigeon_newInstance( - pigeon_instanceArg: DeviceOrientationManager, - callback: (Result) -> Unit - ) { + /** Creates a Dart instance of DeviceOrientationManager and attaches it to [pigeon_instanceArg]. */ + fun pigeon_newInstance(pigeon_instanceArg: DeviceOrientationManager, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { + } else { callback( Result.failure( - CameraXError( - "new-instance-error", - "Attempting to create a new Dart instance of DeviceOrientationManager, but the class has a nonnull callback method.", - ""))) + CameraXError("new-instance-error", "Attempting to create a new Dart instance of DeviceOrientationManager, but the class has a nonnull callback method.", ""))) } } - fun onDeviceOrientationChanged( - pigeon_instanceArg: DeviceOrientationManager, - orientationArg: String, - callback: (Result) -> Unit - ) { + fun onDeviceOrientationChanged(pigeon_instanceArg: DeviceOrientationManager, orientationArg: String, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) return - } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback( Result.failure( - CameraXError( - "missing-instance-error", - "Callback to `DeviceOrientationManager.onDeviceOrientationChanged` failed because native instance was not in the instance manager.", - ""))) + CameraXError("missing-instance-error", "Callback to `DeviceOrientationManager.onDeviceOrientationChanged` failed because native instance was not in the instance manager.", ""))) return } val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged" + val channelName = "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_instanceArg, orientationArg)) { if (it is List<*>) { @@ -3210,9 +2994,10 @@ abstract class PigeonApiDeviceOrientationManager( } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } + } /** * A use case that provides a camera preview stream for displaying on-screen. @@ -3221,76 +3006,59 @@ abstract class PigeonApiDeviceOrientationManager( */ @Suppress("UNCHECKED_CAST") abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun pigeon_defaultConstructor( - resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, - targetRotation: Long?, - targetFpsRange: android.util.Range<*>? - ): androidx.camera.core.Preview + abstract fun pigeon_defaultConstructor(resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, targetRotation: Long?, targetFpsRange: android.util.Range<*>?): androidx.camera.core.Preview - abstract fun resolutionSelector( - pigeon_instance: androidx.camera.core.Preview - ): androidx.camera.core.resolutionselector.ResolutionSelector? + abstract fun resolutionSelector(pigeon_instance: androidx.camera.core.Preview): androidx.camera.core.resolutionselector.ResolutionSelector? /** * Sets a SurfaceProvider to provide a Surface for Preview. * * This is a convenience function that - * 1. Creates a `SurfaceProvider` using the `SurfaceProducer` provided by the Flutter engine. + * 1. Creates a `SurfaceProvider` using the `SurfaceProducer` provided by the + * Flutter engine. * 2. Sets this method with the created `SurfaceProvider`. - * 3. Returns the texture id of the `TextureEntry` that provided the `SurfaceProducer`. + * 3. Returns the texture id of the `TextureEntry` that provided the + * `SurfaceProducer`. */ - abstract fun setSurfaceProvider( - pigeon_instance: androidx.camera.core.Preview, - systemServicesManager: SystemServicesManager - ): Long + abstract fun setSurfaceProvider(pigeon_instance: androidx.camera.core.Preview, systemServicesManager: SystemServicesManager): Long - /** Releases the `SurfaceProducer` created in `setSurfaceProvider` if one was created. */ + /** + * Releases the `SurfaceProducer` created in `setSurfaceProvider` if one was + * created. + */ abstract fun releaseSurfaceProvider(pigeon_instance: androidx.camera.core.Preview) /** Gets selected resolution information of the `Preview`. */ - abstract fun getResolutionInfo( - pigeon_instance: androidx.camera.core.Preview - ): androidx.camera.core.ResolutionInfo? + abstract fun getResolutionInfo(pigeon_instance: androidx.camera.core.Preview): androidx.camera.core.ResolutionInfo? /** Sets the target rotation. */ abstract fun setTargetRotation(pigeon_instance: androidx.camera.core.Preview, rotation: Long) /** - * Returns whether or not the preview's surface producer handles correctly rotating the camera - * preview automatically. + * Returns whether or not the preview's surface producer handles correctly + * rotating the camera preview automatically. */ - abstract fun surfaceProducerHandlesCropAndRotation( - pigeon_instance: androidx.camera.core.Preview - ): Boolean + abstract fun surfaceProducerHandlesCropAndRotation(pigeon_instance: androidx.camera.core.Preview): Boolean companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiPreview?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Preview.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val resolutionSelectorArg = - args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? + val resolutionSelectorArg = args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? val targetRotationArg = args[2] as Long? val targetFpsRangeArg = args[3] as android.util.Range<*>? - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor( - resolutionSelectorArg, targetRotationArg, targetFpsRangeArg), - pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(resolutionSelectorArg,targetRotationArg,targetFpsRangeArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3298,22 +3066,17 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Preview.setSurfaceProvider", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.setSurfaceProvider", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Preview val systemServicesManagerArg = args[1] as SystemServicesManager - val wrapped: List = - try { - listOf(api.setSurfaceProvider(pigeon_instanceArg, systemServicesManagerArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.setSurfaceProvider(pigeon_instanceArg, systemServicesManagerArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3321,22 +3084,17 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Preview.releaseSurfaceProvider", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.releaseSurfaceProvider", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Preview - val wrapped: List = - try { - api.releaseSurfaceProvider(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.releaseSurfaceProvider(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3344,21 +3102,16 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Preview.getResolutionInfo", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.getResolutionInfo", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Preview - val wrapped: List = - try { - listOf(api.getResolutionInfo(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getResolutionInfo(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3366,23 +3119,18 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Preview.setTargetRotation", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.setTargetRotation", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Preview val rotationArg = args[1] as Long - val wrapped: List = - try { - api.setTargetRotation(pigeon_instanceArg, rotationArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.setTargetRotation(pigeon_instanceArg, rotationArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3390,21 +3138,16 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Preview.surfaceProducerHandlesCropAndRotation", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.surfaceProducerHandlesCropAndRotation", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Preview - val wrapped: List = - try { - listOf(api.surfaceProducerHandlesCropAndRotation(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.surfaceProducerHandlesCropAndRotation(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3416,19 +3159,16 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Preview and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.Preview, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.Preview, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val resolutionSelectorArg = resolutionSelector(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec @@ -3437,23 +3177,24 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr channel.send(listOf(pigeon_identifierArg, resolutionSelectorArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiUseCase] used to access callback methods */ - fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase { + fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase + { return pigeonRegistrar.getPigeonApiUseCase() } + } /** * A use case that provides camera stream suitable for video application. @@ -3461,50 +3202,34 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr * See https://developer.android.com/reference/kotlin/androidx/camera/video/VideoCapture. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiVideoCapture( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiVideoCapture(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** Create a `VideoCapture` associated with the given `VideoOutput`. */ - abstract fun withOutput( - videoOutput: androidx.camera.video.VideoOutput, - targetFpsRange: android.util.Range<*>? - ): androidx.camera.video.VideoCapture<*> + abstract fun withOutput(videoOutput: androidx.camera.video.VideoOutput, targetFpsRange: android.util.Range<*>?): androidx.camera.video.VideoCapture<*> /** Gets the VideoOutput associated with this VideoCapture. */ - abstract fun getOutput( - pigeon_instance: androidx.camera.video.VideoCapture<*> - ): androidx.camera.video.VideoOutput + abstract fun getOutput(pigeon_instance: androidx.camera.video.VideoCapture<*>): androidx.camera.video.VideoOutput /** Sets the desired rotation of the output video. */ - abstract fun setTargetRotation( - pigeon_instance: androidx.camera.video.VideoCapture<*>, - rotation: Long - ) + abstract fun setTargetRotation(pigeon_instance: androidx.camera.video.VideoCapture<*>, rotation: Long) companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiVideoCapture?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.VideoCapture.withOutput", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.VideoCapture.withOutput", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val videoOutputArg = args[1] as androidx.camera.video.VideoOutput val targetFpsRangeArg = args[2] as android.util.Range<*>? - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.withOutput(videoOutputArg, targetFpsRangeArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.withOutput(videoOutputArg,targetFpsRangeArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3512,21 +3237,16 @@ abstract class PigeonApiVideoCapture( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.VideoCapture.getOutput", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.VideoCapture.getOutput", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.VideoCapture<*> - val wrapped: List = - try { - listOf(api.getOutput(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getOutput(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3534,23 +3254,18 @@ abstract class PigeonApiVideoCapture( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.VideoCapture.setTargetRotation", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.VideoCapture.setTargetRotation", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.VideoCapture<*> val rotationArg = args[1] as Long - val wrapped: List = - try { - api.setTargetRotation(pigeon_instanceArg, rotationArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.setTargetRotation(pigeon_instanceArg, rotationArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3562,19 +3277,16 @@ abstract class PigeonApiVideoCapture( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of VideoCapture and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.video.VideoCapture<*>, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.VideoCapture<*>, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.VideoCapture.pigeon_newInstance" @@ -3582,23 +3294,24 @@ abstract class PigeonApiVideoCapture( channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiUseCase] used to access callback methods */ - fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase { + fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase + { return pigeonRegistrar.getPigeonApiUseCase() } + } /** * A class that will produce video data from a Surface. @@ -3609,19 +3322,16 @@ abstract class PigeonApiVideoCapture( open class PigeonApiVideoOutput(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of VideoOutput and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.video.VideoOutput, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.VideoOutput, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.VideoOutput.pigeon_newInstance" @@ -3629,31 +3339,27 @@ open class PigeonApiVideoOutput(open val pigeonRegistrar: CameraXLibraryPigeonPr channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * An implementation of `VideoOutput` for starting video recordings that are saved to a File, - * ParcelFileDescriptor, or MediaStore. + * An implementation of `VideoOutput` for starting video recordings that are + * saved to a File, ParcelFileDescriptor, or MediaStore. * * See https://developer.android.com/reference/kotlin/androidx/camera/video/Recorder. */ @Suppress("UNCHECKED_CAST") abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun pigeon_defaultConstructor( - aspectRatio: Long?, - targetVideoEncodingBitRate: Long?, - qualitySelector: androidx.camera.video.QualitySelector? - ): androidx.camera.video.Recorder + abstract fun pigeon_defaultConstructor(aspectRatio: Long?, targetVideoEncodingBitRate: Long?, qualitySelector: androidx.camera.video.QualitySelector?): androidx.camera.video.Recorder /** Gets the aspect ratio of this Recorder. */ abstract fun getAspectRatio(pigeon_instance: androidx.camera.video.Recorder): Long @@ -3662,26 +3368,17 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP abstract fun getTargetVideoEncodingBitRate(pigeon_instance: androidx.camera.video.Recorder): Long /** The quality selector of this Recorder. */ - abstract fun getQualitySelector( - pigeon_instance: androidx.camera.video.Recorder - ): androidx.camera.video.QualitySelector + abstract fun getQualitySelector(pigeon_instance: androidx.camera.video.Recorder): androidx.camera.video.QualitySelector /** Prepares a recording that will be saved to a File. */ - abstract fun prepareRecording( - pigeon_instance: androidx.camera.video.Recorder, - path: String - ): androidx.camera.video.PendingRecording + abstract fun prepareRecording(pigeon_instance: androidx.camera.video.Recorder, path: String): androidx.camera.video.PendingRecording companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiRecorder?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -3689,16 +3386,12 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP val aspectRatioArg = args[1] as Long? val targetVideoEncodingBitRateArg = args[2] as Long? val qualitySelectorArg = args[3] as androidx.camera.video.QualitySelector? - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor( - aspectRatioArg, targetVideoEncodingBitRateArg, qualitySelectorArg), - pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(aspectRatioArg,targetVideoEncodingBitRateArg,qualitySelectorArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3706,21 +3399,16 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Recorder.getAspectRatio", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recorder.getAspectRatio", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recorder - val wrapped: List = - try { - listOf(api.getAspectRatio(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getAspectRatio(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3728,21 +3416,16 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Recorder.getTargetVideoEncodingBitRate", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recorder.getTargetVideoEncodingBitRate", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recorder - val wrapped: List = - try { - listOf(api.getTargetVideoEncodingBitRate(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getTargetVideoEncodingBitRate(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3750,21 +3433,16 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Recorder.getQualitySelector", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recorder.getQualitySelector", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recorder - val wrapped: List = - try { - listOf(api.getQualitySelector(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getQualitySelector(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3772,22 +3450,17 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Recorder.prepareRecording", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recorder.prepareRecording", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recorder val pathArg = args[1] as String - val wrapped: List = - try { - listOf(api.prepareRecording(pigeon_instanceArg, pathArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.prepareRecording(pigeon_instanceArg, pathArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3799,19 +3472,16 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Recorder and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.video.Recorder, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.Recorder, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_newInstance" @@ -3819,56 +3489,46 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiVideoOutput] used to access callback methods */ - fun pigeon_getPigeonApiVideoOutput(): PigeonApiVideoOutput { + fun pigeon_getPigeonApiVideoOutput(): PigeonApiVideoOutput + { return pigeonRegistrar.getPigeonApiVideoOutput() } + } /** Listens for `VideoRecordEvent`s from a `PendingRecording`. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiVideoRecordEventListener( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiVideoRecordEventListener(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { abstract fun pigeon_defaultConstructor(): VideoRecordEventListener companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - api: PigeonApiVideoRecordEventListener? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiVideoRecordEventListener?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3879,46 +3539,33 @@ abstract class PigeonApiVideoRecordEventListener( } @Suppress("LocalVariableName", "FunctionName") - /** - * Creates a Dart instance of VideoRecordEventListener and attaches it to [pigeon_instanceArg]. - */ - fun pigeon_newInstance( - pigeon_instanceArg: VideoRecordEventListener, - callback: (Result) -> Unit - ) { + /** Creates a Dart instance of VideoRecordEventListener and attaches it to [pigeon_instanceArg]. */ + fun pigeon_newInstance(pigeon_instanceArg: VideoRecordEventListener, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { + } else { callback( Result.failure( - CameraXError( - "new-instance-error", - "Attempting to create a new Dart instance of VideoRecordEventListener, but the class has a nonnull callback method.", - ""))) + CameraXError("new-instance-error", "Attempting to create a new Dart instance of VideoRecordEventListener, but the class has a nonnull callback method.", ""))) } } - fun onEvent( - pigeon_instanceArg: VideoRecordEventListener, - eventArg: androidx.camera.video.VideoRecordEvent, - callback: (Result) -> Unit - ) { + fun onEvent(pigeon_instanceArg: VideoRecordEventListener, eventArg: androidx.camera.video.VideoRecordEvent, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) return - } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback( Result.failure( - CameraXError( - "missing-instance-error", - "Callback to `VideoRecordEventListener.onEvent` failed because native instance was not in the instance manager.", - ""))) + CameraXError("missing-instance-error", "Callback to `VideoRecordEventListener.onEvent` failed because native instance was not in the instance manager.", ""))) return } val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -3934,9 +3581,10 @@ abstract class PigeonApiVideoRecordEventListener( } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } + } /** * A recording that can be started at a future time. @@ -3944,58 +3592,42 @@ abstract class PigeonApiVideoRecordEventListener( * See https://developer.android.com/reference/kotlin/androidx/camera/video/PendingRecording. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiPendingRecording( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiPendingRecording(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** Enables/disables audio to be recorded for this recording. */ - abstract fun withAudioEnabled( - pigeon_instance: androidx.camera.video.PendingRecording, - initialMuted: Boolean - ): androidx.camera.video.PendingRecording + abstract fun withAudioEnabled(pigeon_instance: androidx.camera.video.PendingRecording, initialMuted: Boolean): androidx.camera.video.PendingRecording /** * Configures the recording to be a persistent recording. * - * A persistent recording will only be stopped by explicitly calling [Recording.stop] or - * [Recording.close] and will ignore events that would normally cause recording to stop, such as - * lifecycle events or explicit unbinding of a [VideoCapture] use case that the recording's - * Recorder is attached to. + * A persistent recording will only be stopped by explicitly calling [Recording.stop] or [Recording.close] + * and will ignore events that would normally cause recording to stop, such as lifecycle events + * or explicit unbinding of a [VideoCapture] use case that the recording's Recorder is attached to. * - * To switch to a different camera stream while a recording is in progress, first create the - * recording as persistent recording, then rebind the [VideoCapture] it's associated with to a - * different camera. + * To switch to a different camera stream while a recording is in progress, + * first create the recording as persistent recording, + * then rebind the [VideoCapture] it's associated with to a different camera. */ - abstract fun asPersistentRecording( - pigeon_instance: androidx.camera.video.PendingRecording - ): androidx.camera.video.PendingRecording + abstract fun asPersistentRecording(pigeon_instance: androidx.camera.video.PendingRecording): androidx.camera.video.PendingRecording /** Starts the recording, making it an active recording. */ - abstract fun start( - pigeon_instance: androidx.camera.video.PendingRecording, - listener: VideoRecordEventListener - ): androidx.camera.video.Recording + abstract fun start(pigeon_instance: androidx.camera.video.PendingRecording, listener: VideoRecordEventListener): androidx.camera.video.Recording companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiPendingRecording?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.PendingRecording.withAudioEnabled", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.PendingRecording.withAudioEnabled", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.PendingRecording val initialMutedArg = args[1] as Boolean - val wrapped: List = - try { - listOf(api.withAudioEnabled(pigeon_instanceArg, initialMutedArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.withAudioEnabled(pigeon_instanceArg, initialMutedArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4003,21 +3635,16 @@ abstract class PigeonApiPendingRecording( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.PendingRecording.asPersistentRecording", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.PendingRecording.asPersistentRecording", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.PendingRecording - val wrapped: List = - try { - listOf(api.asPersistentRecording(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.asPersistentRecording(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4025,22 +3652,17 @@ abstract class PigeonApiPendingRecording( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.PendingRecording.start", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.PendingRecording.start", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.PendingRecording val listenerArg = args[1] as VideoRecordEventListener - val wrapped: List = - try { - listOf(api.start(pigeon_instanceArg, listenerArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.start(pigeon_instanceArg, listenerArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4052,38 +3674,34 @@ abstract class PigeonApiPendingRecording( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of PendingRecording and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.video.PendingRecording, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.PendingRecording, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.PendingRecording.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.PendingRecording.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * Provides controls for the currently active recording. @@ -4113,20 +3731,17 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiRecording?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.close", codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.close", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recording - val wrapped: List = - try { - api.close(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.close(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4134,20 +3749,17 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon } } run { - val channel = - BasicMessageChannel( - binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.pause", codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.pause", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recording - val wrapped: List = - try { - api.pause(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pause(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4155,22 +3767,17 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Recording.resume", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.resume", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recording - val wrapped: List = - try { - api.resume(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.resume(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4178,20 +3785,17 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon } } run { - val channel = - BasicMessageChannel( - binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.stop", codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.stop", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recording - val wrapped: List = - try { - api.stop(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.stop(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4203,19 +3807,16 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Recording and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.video.Recording, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.Recording, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.Recording.pigeon_newInstance" @@ -4223,17 +3824,17 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * A use case for taking a picture. @@ -4241,31 +3842,16 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon * See https://developer.android.com/reference/kotlin/androidx/camera/core/ImageCapture. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiImageCapture( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { - abstract fun pigeon_defaultConstructor( - resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, - targetRotation: Long?, - flashMode: CameraXFlashMode? - ): androidx.camera.core.ImageCapture - - abstract fun resolutionSelector( - pigeon_instance: androidx.camera.core.ImageCapture - ): androidx.camera.core.resolutionselector.ResolutionSelector? +abstract class PigeonApiImageCapture(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { + abstract fun pigeon_defaultConstructor(resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, targetRotation: Long?, flashMode: CameraXFlashMode?): androidx.camera.core.ImageCapture + + abstract fun resolutionSelector(pigeon_instance: androidx.camera.core.ImageCapture): androidx.camera.core.resolutionselector.ResolutionSelector? /** Set the flash mode. */ - abstract fun setFlashMode( - pigeon_instance: androidx.camera.core.ImageCapture, - flashMode: CameraXFlashMode - ) + abstract fun setFlashMode(pigeon_instance: androidx.camera.core.ImageCapture, flashMode: CameraXFlashMode) /** Captures a new still image for in memory access. */ - abstract fun takePicture( - pigeon_instance: androidx.camera.core.ImageCapture, - systemServicesManager: SystemServicesManager, - callback: (Result) -> Unit - ) + abstract fun takePicture(pigeon_instance: androidx.camera.core.ImageCapture, systemServicesManager: SystemServicesManager, callback: (Result) -> Unit) /** Sets the desired rotation of the output image. */ abstract fun setTargetRotation(pigeon_instance: androidx.camera.core.ImageCapture, rotation: Long) @@ -4275,29 +3861,20 @@ abstract class PigeonApiImageCapture( fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiImageCapture?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageCapture.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageCapture.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val resolutionSelectorArg = - args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? + val resolutionSelectorArg = args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? val targetRotationArg = args[2] as Long? val flashModeArg = args[3] as CameraXFlashMode? - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor( - resolutionSelectorArg, targetRotationArg, flashModeArg), - pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(resolutionSelectorArg,targetRotationArg,flashModeArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4305,23 +3882,18 @@ abstract class PigeonApiImageCapture( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageCapture.setFlashMode", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageCapture.setFlashMode", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageCapture val flashModeArg = args[1] as CameraXFlashMode - val wrapped: List = - try { - api.setFlashMode(pigeon_instanceArg, flashModeArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.setFlashMode(pigeon_instanceArg, flashModeArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4329,18 +3901,13 @@ abstract class PigeonApiImageCapture( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageCapture.takePicture", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageCapture.takePicture", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageCapture val systemServicesManagerArg = args[1] as SystemServicesManager - api.takePicture(pigeon_instanceArg, systemServicesManagerArg) { result: Result - -> + api.takePicture(pigeon_instanceArg, systemServicesManagerArg) { result: Result -> val error = result.exceptionOrNull() if (error != null) { reply.reply(CameraXLibraryPigeonUtils.wrapError(error)) @@ -4355,23 +3922,18 @@ abstract class PigeonApiImageCapture( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageCapture.setTargetRotation", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageCapture.setTargetRotation", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageCapture val rotationArg = args[1] as Long - val wrapped: List = - try { - api.setTargetRotation(pigeon_instanceArg, rotationArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.setTargetRotation(pigeon_instanceArg, rotationArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4383,19 +3945,16 @@ abstract class PigeonApiImageCapture( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ImageCapture and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.ImageCapture, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ImageCapture, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val resolutionSelectorArg = resolutionSelector(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec @@ -4404,80 +3963,65 @@ abstract class PigeonApiImageCapture( channel.send(listOf(pigeon_identifierArg, resolutionSelectorArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiUseCase] used to access callback methods */ - fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase { + fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase + { return pigeonRegistrar.getPigeonApiUseCase() } + } /** - * The resolution strategy defines the resolution selection sequence to select the best size. + * The resolution strategy defines the resolution selection sequence to select + * the best size. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionStrategy. + * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionStrategy. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiResolutionStrategy( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { - abstract fun pigeon_defaultConstructor( - boundSize: android.util.Size, - fallbackRule: ResolutionStrategyFallbackRule - ): androidx.camera.core.resolutionselector.ResolutionStrategy +abstract class PigeonApiResolutionStrategy(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { + abstract fun pigeon_defaultConstructor(boundSize: android.util.Size, fallbackRule: ResolutionStrategyFallbackRule): androidx.camera.core.resolutionselector.ResolutionStrategy /** A resolution strategy chooses the highest available resolution. */ - abstract fun highestAvailableStrategy(): - androidx.camera.core.resolutionselector.ResolutionStrategy + abstract fun highestAvailableStrategy(): androidx.camera.core.resolutionselector.ResolutionStrategy /** The specified bound size. */ - abstract fun getBoundSize( - pigeon_instance: androidx.camera.core.resolutionselector.ResolutionStrategy - ): android.util.Size? + abstract fun getBoundSize(pigeon_instance: androidx.camera.core.resolutionselector.ResolutionStrategy): android.util.Size? /** - * The fallback rule for choosing an alternate size when the specified bound size is unavailable. + * The fallback rule for choosing an alternate size when the specified bound + * size is unavailable. */ - abstract fun getFallbackRule( - pigeon_instance: androidx.camera.core.resolutionselector.ResolutionStrategy - ): ResolutionStrategyFallbackRule + abstract fun getFallbackRule(pigeon_instance: androidx.camera.core.resolutionselector.ResolutionStrategy): ResolutionStrategyFallbackRule companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiResolutionStrategy?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val boundSizeArg = args[1] as android.util.Size val fallbackRuleArg = args[2] as ResolutionStrategyFallbackRule - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(boundSizeArg, fallbackRuleArg), - pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(boundSizeArg,fallbackRuleArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4485,23 +4029,17 @@ abstract class PigeonApiResolutionStrategy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.highestAvailableStrategy", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.highestAvailableStrategy", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.highestAvailableStrategy(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.highestAvailableStrategy(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4509,22 +4047,16 @@ abstract class PigeonApiResolutionStrategy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.getBoundSize", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.getBoundSize", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = - args[0] as androidx.camera.core.resolutionselector.ResolutionStrategy - val wrapped: List = - try { - listOf(api.getBoundSize(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = args[0] as androidx.camera.core.resolutionselector.ResolutionStrategy + val wrapped: List = try { + listOf(api.getBoundSize(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4532,22 +4064,16 @@ abstract class PigeonApiResolutionStrategy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.getFallbackRule", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.getFallbackRule", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = - args[0] as androidx.camera.core.resolutionselector.ResolutionStrategy - val wrapped: List = - try { - listOf(api.getFallbackRule(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = args[0] as androidx.camera.core.resolutionselector.ResolutionStrategy + val wrapped: List = try { + listOf(api.getFallbackRule(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4559,104 +4085,77 @@ abstract class PigeonApiResolutionStrategy( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ResolutionStrategy and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionStrategy, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionStrategy, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * A set of requirements and priorities used to select a resolution for the `UseCase`. + * A set of requirements and priorities used to select a resolution for the + * `UseCase`. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionSelector. + * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionSelector. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiResolutionSelector( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { - abstract fun pigeon_defaultConstructor( - resolutionFilter: androidx.camera.core.resolutionselector.ResolutionFilter?, - resolutionStrategy: androidx.camera.core.resolutionselector.ResolutionStrategy?, - aspectRatioStrategy: androidx.camera.core.resolutionselector.AspectRatioStrategy? - ): androidx.camera.core.resolutionselector.ResolutionSelector +abstract class PigeonApiResolutionSelector(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { + abstract fun pigeon_defaultConstructor(resolutionFilter: androidx.camera.core.resolutionselector.ResolutionFilter?, resolutionStrategy: androidx.camera.core.resolutionselector.ResolutionStrategy?, aspectRatioStrategy: androidx.camera.core.resolutionselector.AspectRatioStrategy?): androidx.camera.core.resolutionselector.ResolutionSelector /** The resolution filter to output the final desired sizes list. */ - abstract fun resolutionFilter( - pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector - ): androidx.camera.core.resolutionselector.ResolutionFilter? + abstract fun resolutionFilter(pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector): androidx.camera.core.resolutionselector.ResolutionFilter? /** The resolution selection strategy for the `UseCase`. */ - abstract fun resolutionStrategy( - pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector - ): androidx.camera.core.resolutionselector.ResolutionStrategy? + abstract fun resolutionStrategy(pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector): androidx.camera.core.resolutionselector.ResolutionStrategy? /** * Returns the specified `AspectRatioStrategy`, or - * `AspectRatioStrategy.ratio_4_3FallbackAutoStrategy` if none is specified when creating the - * ResolutionSelector. + * `AspectRatioStrategy.ratio_4_3FallbackAutoStrategy` if none is specified + * when creating the ResolutionSelector. */ - abstract fun getAspectRatioStrategy( - pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector - ): androidx.camera.core.resolutionselector.AspectRatioStrategy + abstract fun getAspectRatioStrategy(pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector): androidx.camera.core.resolutionselector.AspectRatioStrategy companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiResolutionSelector?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val resolutionFilterArg = - args[1] as androidx.camera.core.resolutionselector.ResolutionFilter? - val resolutionStrategyArg = - args[2] as androidx.camera.core.resolutionselector.ResolutionStrategy? - val aspectRatioStrategyArg = - args[3] as androidx.camera.core.resolutionselector.AspectRatioStrategy? - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor( - resolutionFilterArg, resolutionStrategyArg, aspectRatioStrategyArg), - pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val resolutionFilterArg = args[1] as androidx.camera.core.resolutionselector.ResolutionFilter? + val resolutionStrategyArg = args[2] as androidx.camera.core.resolutionselector.ResolutionStrategy? + val aspectRatioStrategyArg = args[3] as androidx.camera.core.resolutionselector.AspectRatioStrategy? + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(resolutionFilterArg,resolutionStrategyArg,aspectRatioStrategyArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4664,22 +4163,16 @@ abstract class PigeonApiResolutionSelector( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.getAspectRatioStrategy", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.getAspectRatioStrategy", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = - args[0] as androidx.camera.core.resolutionselector.ResolutionSelector - val wrapped: List = - try { - listOf(api.getAspectRatioStrategy(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = args[0] as androidx.camera.core.resolutionselector.ResolutionSelector + val wrapped: List = try { + listOf(api.getAspectRatioStrategy(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4691,109 +4184,90 @@ abstract class PigeonApiResolutionSelector( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ResolutionSelector and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionSelector, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionSelector, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val resolutionFilterArg = resolutionFilter(pigeon_instanceArg) val resolutionStrategyArg = resolutionStrategy(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, resolutionFilterArg, resolutionStrategyArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * The aspect ratio strategy defines the sequence of aspect ratios that are used to select the best - * size for a particular image. + * The aspect ratio strategy defines the sequence of aspect ratios that are + * used to select the best size for a particular image. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/AspectRatioStrategy. + * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/AspectRatioStrategy. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiAspectRatioStrategy( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiAspectRatioStrategy(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** - * Creates a new AspectRatioStrategy instance, configured with the specified preferred aspect - * ratio and fallback rule. + * Creates a new AspectRatioStrategy instance, configured with the specified + * preferred aspect ratio and fallback rule. */ - abstract fun pigeon_defaultConstructor( - preferredAspectRatio: AspectRatio, - fallbackRule: AspectRatioStrategyFallbackRule - ): androidx.camera.core.resolutionselector.AspectRatioStrategy + abstract fun pigeon_defaultConstructor(preferredAspectRatio: AspectRatio, fallbackRule: AspectRatioStrategyFallbackRule): androidx.camera.core.resolutionselector.AspectRatioStrategy - /** The pre-defined aspect ratio strategy that selects sizes with RATIO_16_9 in priority. */ - abstract fun ratio_16_9FallbackAutoStrategy(): - androidx.camera.core.resolutionselector.AspectRatioStrategy + /** + * The pre-defined aspect ratio strategy that selects sizes with RATIO_16_9 + * in priority. + */ + abstract fun ratio_16_9FallbackAutoStrategy(): androidx.camera.core.resolutionselector.AspectRatioStrategy /** - * The pre-defined default aspect ratio strategy that selects sizes with RATIO_4_3 in priority. + * The pre-defined default aspect ratio strategy that selects sizes with + * RATIO_4_3 in priority. */ - abstract fun ratio_4_3FallbackAutoStrategy(): - androidx.camera.core.resolutionselector.AspectRatioStrategy + abstract fun ratio_4_3FallbackAutoStrategy(): androidx.camera.core.resolutionselector.AspectRatioStrategy /** - * The specified fallback rule for choosing the aspect ratio when the preferred aspect ratio is - * not available. + * The specified fallback rule for choosing the aspect ratio when the + * preferred aspect ratio is not available. */ - abstract fun getFallbackRule( - pigeon_instance: androidx.camera.core.resolutionselector.AspectRatioStrategy - ): AspectRatioStrategyFallbackRule + abstract fun getFallbackRule(pigeon_instance: androidx.camera.core.resolutionselector.AspectRatioStrategy): AspectRatioStrategyFallbackRule /** The specified preferred aspect ratio. */ - abstract fun getPreferredAspectRatio( - pigeon_instance: androidx.camera.core.resolutionselector.AspectRatioStrategy - ): AspectRatio + abstract fun getPreferredAspectRatio(pigeon_instance: androidx.camera.core.resolutionselector.AspectRatioStrategy): AspectRatio companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiAspectRatioStrategy?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val preferredAspectRatioArg = args[1] as AspectRatio val fallbackRuleArg = args[2] as AspectRatioStrategyFallbackRule - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(preferredAspectRatioArg, fallbackRuleArg), - pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(preferredAspectRatioArg,fallbackRuleArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4801,23 +4275,17 @@ abstract class PigeonApiAspectRatioStrategy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.ratio_16_9FallbackAutoStrategy", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.ratio_16_9FallbackAutoStrategy", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.ratio_16_9FallbackAutoStrategy(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.ratio_16_9FallbackAutoStrategy(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4825,23 +4293,17 @@ abstract class PigeonApiAspectRatioStrategy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.ratio_4_3FallbackAutoStrategy", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.ratio_4_3FallbackAutoStrategy", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.ratio_4_3FallbackAutoStrategy(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.ratio_4_3FallbackAutoStrategy(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4849,22 +4311,16 @@ abstract class PigeonApiAspectRatioStrategy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.getFallbackRule", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.getFallbackRule", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = - args[0] as androidx.camera.core.resolutionselector.AspectRatioStrategy - val wrapped: List = - try { - listOf(api.getFallbackRule(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = args[0] as androidx.camera.core.resolutionselector.AspectRatioStrategy + val wrapped: List = try { + listOf(api.getFallbackRule(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4872,22 +4328,16 @@ abstract class PigeonApiAspectRatioStrategy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.getPreferredAspectRatio", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.getPreferredAspectRatio", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = - args[0] as androidx.camera.core.resolutionselector.AspectRatioStrategy - val wrapped: List = - try { - listOf(api.getPreferredAspectRatio(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = args[0] as androidx.camera.core.resolutionselector.AspectRatioStrategy + val wrapped: List = try { + listOf(api.getPreferredAspectRatio(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4899,38 +4349,34 @@ abstract class PigeonApiAspectRatioStrategy( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of AspectRatioStrategy and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.resolutionselector.AspectRatioStrategy, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.resolutionselector.AspectRatioStrategy, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * Represents the different states the camera can be in. @@ -4938,32 +4384,25 @@ abstract class PigeonApiAspectRatioStrategy( * See https://developer.android.com/reference/androidx/camera/core/CameraState. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraState( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCameraState(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** The camera's state. */ abstract fun type(pigeon_instance: androidx.camera.core.CameraState): CameraStateType /** Potentially returns an error the camera encountered. */ - abstract fun error( - pigeon_instance: androidx.camera.core.CameraState - ): androidx.camera.core.CameraState.StateError? + abstract fun error(pigeon_instance: androidx.camera.core.CameraState): androidx.camera.core.CameraState.StateError? @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraState and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.CameraState, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.CameraState, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val typeArg = type(pigeon_instanceArg) val errorArg = error(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -4973,17 +4412,17 @@ abstract class PigeonApiCameraState( channel.send(listOf(pigeon_identifierArg, typeArg, errorArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * An interface which contains the camera exposure related information. @@ -4991,57 +4430,48 @@ abstract class PigeonApiCameraState( * See https://developer.android.com/reference/androidx/camera/core/ExposureState. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiExposureState( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiExposureState(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** * Get the maximum and minimum exposure compensation values for * `CameraControl.setExposureCompensationIndex`. */ - abstract fun exposureCompensationRange( - pigeon_instance: androidx.camera.core.ExposureState - ): android.util.Range<*> + abstract fun exposureCompensationRange(pigeon_instance: androidx.camera.core.ExposureState): android.util.Range<*> /** Get the smallest step by which the exposure compensation can be changed. */ abstract fun exposureCompensationStep(pigeon_instance: androidx.camera.core.ExposureState): Double @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ExposureState and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.ExposureState, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ExposureState, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val exposureCompensationRangeArg = exposureCompensationRange(pigeon_instanceArg) val exposureCompensationStepArg = exposureCompensationStep(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.ExposureState.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) - channel.send( - listOf(pigeon_identifierArg, exposureCompensationRangeArg, exposureCompensationStepArg)) { - if (it is List<*>) { - if (it.size > 1) { - callback( - Result.failure( - CameraXError(it[0] as String, it[1] as String, it[2] as String?))) - } else { - callback(Result.success(Unit)) - } - } else { - callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + channel.send(listOf(pigeon_identifierArg, exposureCompensationRangeArg, exposureCompensationStepArg)) { + if (it is List<*>) { + if (it.size > 1) { + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + } else { + callback(Result.success(Unit)) } + } else { + callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) + } + } } } + } /** * An interface which contains the zoom related information from a camera. @@ -5058,19 +4488,16 @@ abstract class PigeonApiZoomState(open val pigeonRegistrar: CameraXLibraryPigeon @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ZoomState and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.ZoomState, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ZoomState, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val minZoomRatioArg = minZoomRatio(pigeon_instanceArg) val maxZoomRatioArg = maxZoomRatio(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -5080,85 +4507,59 @@ abstract class PigeonApiZoomState(open val pigeonRegistrar: CameraXLibraryPigeon channel.send(listOf(pigeon_identifierArg, minZoomRatioArg, maxZoomRatioArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * A use case providing CPU accessible images for an app to perform image analysis on. + * A use case providing CPU accessible images for an app to perform image + * analysis on. * * See https://developer.android.com/reference/kotlin/androidx/camera/core/ImageAnalysis. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiImageAnalysis( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { - abstract fun pigeon_defaultConstructor( - resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, - targetRotation: Long?, - targetFpsRange: android.util.Range<*>?, - outputImageFormat: Long? - ): androidx.camera.core.ImageAnalysis - - abstract fun resolutionSelector( - pigeon_instance: androidx.camera.core.ImageAnalysis - ): androidx.camera.core.resolutionselector.ResolutionSelector? +abstract class PigeonApiImageAnalysis(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { + abstract fun pigeon_defaultConstructor(resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, targetRotation: Long?, targetFpsRange: android.util.Range<*>?, outputImageFormat: Long?): androidx.camera.core.ImageAnalysis + + abstract fun resolutionSelector(pigeon_instance: androidx.camera.core.ImageAnalysis): androidx.camera.core.resolutionselector.ResolutionSelector? /** Sets an analyzer to receive and analyze images. */ - abstract fun setAnalyzer( - pigeon_instance: androidx.camera.core.ImageAnalysis, - analyzer: androidx.camera.core.ImageAnalysis.Analyzer - ) + abstract fun setAnalyzer(pigeon_instance: androidx.camera.core.ImageAnalysis, analyzer: androidx.camera.core.ImageAnalysis.Analyzer) /** Removes a previously set analyzer. */ abstract fun clearAnalyzer(pigeon_instance: androidx.camera.core.ImageAnalysis) /** Sets the target rotation. */ - abstract fun setTargetRotation( - pigeon_instance: androidx.camera.core.ImageAnalysis, - rotation: Long - ) + abstract fun setTargetRotation(pigeon_instance: androidx.camera.core.ImageAnalysis, rotation: Long) companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiImageAnalysis?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val resolutionSelectorArg = - args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? + val resolutionSelectorArg = args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? val targetRotationArg = args[2] as Long? val targetFpsRangeArg = args[3] as android.util.Range<*>? val outputImageFormatArg = args[4] as Long? - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor( - resolutionSelectorArg, - targetRotationArg, - targetFpsRangeArg, - outputImageFormatArg), - pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(resolutionSelectorArg,targetRotationArg,targetFpsRangeArg,outputImageFormatArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5166,23 +4567,18 @@ abstract class PigeonApiImageAnalysis( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.setAnalyzer", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.setAnalyzer", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageAnalysis val analyzerArg = args[1] as androidx.camera.core.ImageAnalysis.Analyzer - val wrapped: List = - try { - api.setAnalyzer(pigeon_instanceArg, analyzerArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.setAnalyzer(pigeon_instanceArg, analyzerArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5190,22 +4586,17 @@ abstract class PigeonApiImageAnalysis( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.clearAnalyzer", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.clearAnalyzer", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageAnalysis - val wrapped: List = - try { - api.clearAnalyzer(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.clearAnalyzer(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5213,23 +4604,18 @@ abstract class PigeonApiImageAnalysis( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.setTargetRotation", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.setTargetRotation", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageAnalysis val rotationArg = args[1] as Long - val wrapped: List = - try { - api.setTargetRotation(pigeon_instanceArg, rotationArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.setTargetRotation(pigeon_instanceArg, rotationArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5241,19 +4627,16 @@ abstract class PigeonApiImageAnalysis( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ImageAnalysis and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.ImageAnalysis, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ImageAnalysis, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val resolutionSelectorArg = resolutionSelector(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec @@ -5262,23 +4645,24 @@ abstract class PigeonApiImageAnalysis( channel.send(listOf(pigeon_identifierArg, resolutionSelectorArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiUseCase] used to access callback methods */ - fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase { + fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase + { return pigeonRegistrar.getPigeonApiUseCase() } + } /** * Interface for analyzing images. @@ -5294,23 +4678,17 @@ abstract class PigeonApiAnalyzer(open val pigeonRegistrar: CameraXLibraryPigeonP fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiAnalyzer?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Analyzer.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Analyzer.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5322,44 +4700,33 @@ abstract class PigeonApiAnalyzer(open val pigeonRegistrar: CameraXLibraryPigeonP @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Analyzer and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.ImageAnalysis.Analyzer, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ImageAnalysis.Analyzer, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { + } else { callback( Result.failure( - CameraXError( - "new-instance-error", - "Attempting to create a new Dart instance of Analyzer, but the class has a nonnull callback method.", - ""))) + CameraXError("new-instance-error", "Attempting to create a new Dart instance of Analyzer, but the class has a nonnull callback method.", ""))) } } /** Analyzes an image to produce a result. */ - fun analyze( - pigeon_instanceArg: androidx.camera.core.ImageAnalysis.Analyzer, - imageArg: androidx.camera.core.ImageProxy, - callback: (Result) -> Unit - ) { + fun analyze(pigeon_instanceArg: androidx.camera.core.ImageAnalysis.Analyzer, imageArg: androidx.camera.core.ImageProxy, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) return - } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback( Result.failure( - CameraXError( - "missing-instance-error", - "Callback to `Analyzer.analyze` failed because native instance was not in the instance manager.", - ""))) + CameraXError("missing-instance-error", "Callback to `Analyzer.analyze` failed because native instance was not in the instance manager.", ""))) return } val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -5375,9 +4742,10 @@ abstract class PigeonApiAnalyzer(open val pigeonRegistrar: CameraXLibraryPigeonP } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } + } /** * Error that the camera has encountered. @@ -5385,104 +4753,85 @@ abstract class PigeonApiAnalyzer(open val pigeonRegistrar: CameraXLibraryPigeonP * See https://developer.android.com/reference/androidx/camera/core/CameraState.StateError. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraStateStateError( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCameraStateStateError(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** The code of this error. */ - abstract fun code( - pigeon_instance: androidx.camera.core.CameraState.StateError - ): CameraStateErrorCode + abstract fun code(pigeon_instance: androidx.camera.core.CameraState.StateError): CameraStateErrorCode @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraStateStateError and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.CameraState.StateError, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.CameraState.StateError, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val codeArg = code(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, codeArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * LiveData is a data holder class that can be observed within a given lifecycle. + * LiveData is a data holder class that can be observed within a given + * lifecycle. * - * This is a wrapper around the native class to better support the generic type. Java has type - * erasure; + * This is a wrapper around the native class to better support the generic + * type. Java has type erasure; * * See https://developer.android.com/reference/androidx/lifecycle/LiveData. */ @Suppress("UNCHECKED_CAST") abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** The generic type used by this instance. */ - abstract fun type( - pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper - ): LiveDataSupportedType + abstract fun type(pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper): LiveDataSupportedType - /** Adds the given observer to the observers list within the lifespan of the given owner. */ - abstract fun observe( - pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper, - observer: androidx.lifecycle.Observer<*> - ) + /** + * Adds the given observer to the observers list within the lifespan of the + * given owner. + */ + abstract fun observe(pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper, observer: androidx.lifecycle.Observer<*>) /** Removes all observers that are tied to the given `LifecycleOwner`. */ - abstract fun removeObservers( - pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper - ) + abstract fun removeObservers(pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper) /** Returns the current value. */ - abstract fun getValue( - pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper - ): Any? + abstract fun getValue(pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper): Any? companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiLiveData?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.LiveData.observe", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.LiveData.observe", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = - args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + val pigeon_instanceArg = args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper val observerArg = args[1] as androidx.lifecycle.Observer<*> - val wrapped: List = - try { - api.observe(pigeon_instanceArg, observerArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.observe(pigeon_instanceArg, observerArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5490,23 +4839,17 @@ abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.LiveData.removeObservers", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.LiveData.removeObservers", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = - args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper - val wrapped: List = - try { - api.removeObservers(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + val wrapped: List = try { + api.removeObservers(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5514,22 +4857,16 @@ abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.LiveData.getValue", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.LiveData.getValue", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = - args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper - val wrapped: List = - try { - listOf(api.getValue(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + val wrapped: List = try { + listOf(api.getValue(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5541,19 +4878,16 @@ abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonP @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of LiveData and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val typeArg = type(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec @@ -5562,17 +4896,17 @@ abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonP channel.send(listOf(pigeon_identifierArg, typeArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * An image proxy which has a similar interface as `android.media.Image`. @@ -5580,9 +4914,7 @@ abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonP * See https://developer.android.com/reference/kotlin/androidx/camera/core/ImageProxy. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiImageProxy( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiImageProxy(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** The image format. */ abstract fun format(pigeon_instance: androidx.camera.core.ImageProxy): Long @@ -5593,9 +4925,7 @@ abstract class PigeonApiImageProxy( abstract fun height(pigeon_instance: androidx.camera.core.ImageProxy): Long /** Returns the array of planes. */ - abstract fun getPlanes( - pigeon_instance: androidx.camera.core.ImageProxy - ): List + abstract fun getPlanes(pigeon_instance: androidx.camera.core.ImageProxy): List /** Closes the underlying `android.media.Image`. */ abstract fun close(pigeon_instance: androidx.camera.core.ImageProxy) @@ -5605,21 +4935,16 @@ abstract class PigeonApiImageProxy( fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiImageProxy?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageProxy.getPlanes", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageProxy.getPlanes", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageProxy - val wrapped: List = - try { - listOf(api.getPlanes(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getPlanes(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5627,22 +4952,17 @@ abstract class PigeonApiImageProxy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageProxy.close", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageProxy.close", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageProxy - val wrapped: List = - try { - api.close(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.close(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5654,19 +4974,16 @@ abstract class PigeonApiImageProxy( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ImageProxy and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.ImageProxy, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ImageProxy, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val formatArg = format(pigeon_instanceArg) val widthArg = width(pigeon_instanceArg) val heightArg = height(pigeon_instanceArg) @@ -5677,52 +4994,41 @@ abstract class PigeonApiImageProxy( channel.send(listOf(pigeon_identifierArg, formatArg, widthArg, heightArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** Utilities for working with [ImageProxy]s. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiImageProxyUtils( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiImageProxyUtils(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** Returns a single buffer that is representative of three NV21-compatible [planes]. */ - abstract fun getNv21Buffer( - imageWidth: Long, - imageHeight: Long, - planes: List - ): ByteArray + abstract fun getNv21Buffer(imageWidth: Long, imageHeight: Long, planes: List): ByteArray companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiImageProxyUtils?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.getNv21Buffer", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.getNv21Buffer", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val imageWidthArg = args[0] as Long val imageHeightArg = args[1] as Long val planesArg = args[2] as List - val wrapped: List = - try { - listOf(api.getNv21Buffer(imageWidthArg, imageHeightArg, planesArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getNv21Buffer(imageWidthArg, imageHeightArg, planesArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5734,45 +5040,43 @@ abstract class PigeonApiImageProxyUtils( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ImageProxyUtils and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: ImageProxyUtils, callback: (Result) -> Unit) { + fun pigeon_newInstance(pigeon_instanceArg: ImageProxyUtils, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * A plane proxy which has an analogous interface as `android.media.Image.Plane`. + * A plane proxy which has an analogous interface as + * `android.media.Image.Plane`. * * See https://developer.android.com/reference/kotlin/androidx/camera/core/ImageProxy.PlaneProxy. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiPlaneProxy( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiPlaneProxy(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** The pixels buffer. */ abstract fun buffer(pigeon_instance: androidx.camera.core.ImageProxy.PlaneProxy): ByteArray @@ -5784,19 +5088,16 @@ abstract class PigeonApiPlaneProxy( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of PlaneProxy and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.ImageProxy.PlaneProxy, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ImageProxy.PlaneProxy, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val bufferArg = buffer(pigeon_instanceArg) val pixelStrideArg = pixelStride(pigeon_instanceArg) val rowStrideArg = rowStride(pigeon_instanceArg) @@ -5807,70 +5108,53 @@ abstract class PigeonApiPlaneProxy( channel.send(listOf(pigeon_identifierArg, bufferArg, pixelStrideArg, rowStrideArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * Defines a desired quality setting that can be used to configure components with quality setting - * requirements such as creating a Recorder. + * Defines a desired quality setting that can be used to configure components + * with quality setting requirements such as creating a Recorder. * * See https://developer.android.com/reference/kotlin/androidx/camera/video/QualitySelector. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiQualitySelector( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiQualitySelector(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** Gets an instance of QualitySelector with a desired quality. */ - abstract fun from( - quality: VideoQuality, - fallbackStrategy: androidx.camera.video.FallbackStrategy? - ): androidx.camera.video.QualitySelector + abstract fun from(quality: VideoQuality, fallbackStrategy: androidx.camera.video.FallbackStrategy?): androidx.camera.video.QualitySelector /** Gets an instance of QualitySelector with ordered desired qualities. */ - abstract fun fromOrderedList( - qualities: List, - fallbackStrategy: androidx.camera.video.FallbackStrategy? - ): androidx.camera.video.QualitySelector + abstract fun fromOrderedList(qualities: List, fallbackStrategy: androidx.camera.video.FallbackStrategy?): androidx.camera.video.QualitySelector /** Gets the corresponding resolution from the input quality. */ - abstract fun getResolution( - cameraInfo: androidx.camera.core.CameraInfo, - quality: VideoQuality - ): android.util.Size? + abstract fun getResolution(cameraInfo: androidx.camera.core.CameraInfo, quality: VideoQuality): android.util.Size? companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiQualitySelector?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.QualitySelector.from", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.QualitySelector.from", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualityArg = args[1] as VideoQuality val fallbackStrategyArg = args[2] as androidx.camera.video.FallbackStrategy? - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.from(qualityArg, fallbackStrategyArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.from(qualityArg,fallbackStrategyArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5878,25 +5162,19 @@ abstract class PigeonApiQualitySelector( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.QualitySelector.fromOrderedList", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.QualitySelector.fromOrderedList", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualitiesArg = args[1] as List val fallbackStrategyArg = args[2] as androidx.camera.video.FallbackStrategy? - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.fromOrderedList(qualitiesArg, fallbackStrategyArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.fromOrderedList(qualitiesArg,fallbackStrategyArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5904,22 +5182,17 @@ abstract class PigeonApiQualitySelector( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.QualitySelector.getResolution", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.QualitySelector.getResolution", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val cameraInfoArg = args[0] as androidx.camera.core.CameraInfo val qualityArg = args[1] as VideoQuality - val wrapped: List = - try { - listOf(api.getResolution(cameraInfoArg, qualityArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getResolution(cameraInfoArg, qualityArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5931,74 +5204,65 @@ abstract class PigeonApiQualitySelector( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of QualitySelector and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.video.QualitySelector, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.QualitySelector, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.QualitySelector.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.QualitySelector.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * A class represents the strategy that will be adopted when the device does not support all the - * desired Quality in QualitySelector in order to select the quality as possible. + * A class represents the strategy that will be adopted when the device does + * not support all the desired Quality in QualitySelector in order to select + * the quality as possible. * * See https://developer.android.com/reference/androidx/camera/video/FallbackStrategy. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiFallbackStrategy( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiFallbackStrategy(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** - * Returns a fallback strategy that will choose the quality that is closest to and higher than the - * input quality. + * Returns a fallback strategy that will choose the quality that is closest + * to and higher than the input quality. */ - abstract fun higherQualityOrLowerThan( - quality: VideoQuality - ): androidx.camera.video.FallbackStrategy + abstract fun higherQualityOrLowerThan(quality: VideoQuality): androidx.camera.video.FallbackStrategy /** - * Returns a fallback strategy that will choose the quality that is closest to and higher than the - * input quality. + * Returns a fallback strategy that will choose the quality that is closest + * to and higher than the input quality. */ abstract fun higherQualityThan(quality: VideoQuality): androidx.camera.video.FallbackStrategy /** - * Returns a fallback strategy that will choose the quality that is closest to and lower than the - * input quality. + * Returns a fallback strategy that will choose the quality that is closest + * to and lower than the input quality. */ - abstract fun lowerQualityOrHigherThan( - quality: VideoQuality - ): androidx.camera.video.FallbackStrategy + abstract fun lowerQualityOrHigherThan(quality: VideoQuality): androidx.camera.video.FallbackStrategy /** - * Returns a fallback strategy that will choose the quality that is closest to and lower than the - * input quality. + * Returns a fallback strategy that will choose the quality that is closest + * to and lower than the input quality. */ abstract fun lowerQualityThan(quality: VideoQuality): androidx.camera.video.FallbackStrategy @@ -6007,24 +5271,18 @@ abstract class PigeonApiFallbackStrategy( fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiFallbackStrategy?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.higherQualityOrLowerThan", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.higherQualityOrLowerThan", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualityArg = args[1] as VideoQuality - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.higherQualityOrLowerThan(qualityArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.higherQualityOrLowerThan(qualityArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6032,24 +5290,18 @@ abstract class PigeonApiFallbackStrategy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.higherQualityThan", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.higherQualityThan", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualityArg = args[1] as VideoQuality - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.higherQualityThan(qualityArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.higherQualityThan(qualityArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6057,24 +5309,18 @@ abstract class PigeonApiFallbackStrategy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.lowerQualityOrHigherThan", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.lowerQualityOrHigherThan", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualityArg = args[1] as VideoQuality - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.lowerQualityOrHigherThan(qualityArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.lowerQualityOrHigherThan(qualityArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6082,24 +5328,18 @@ abstract class PigeonApiFallbackStrategy( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.lowerQualityThan", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.lowerQualityThan", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualityArg = args[1] as VideoQuality - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.lowerQualityThan(qualityArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.lowerQualityThan(qualityArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6111,93 +5351,68 @@ abstract class PigeonApiFallbackStrategy( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of FallbackStrategy and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.video.FallbackStrategy, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.FallbackStrategy, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * The CameraControl provides various asynchronous operations like zoom, focus and metering which - * affects output of all UseCases currently bound to that camera. + * The CameraControl provides various asynchronous operations like zoom, focus + * and metering which affects output of all UseCases currently bound to that + * camera. * * See https://developer.android.com/reference/androidx/camera/core/CameraControl. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraControl( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCameraControl(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** Enable the torch or disable the torch. */ - abstract fun enableTorch( - pigeon_instance: androidx.camera.core.CameraControl, - torch: Boolean, - callback: (Result) -> Unit - ) + abstract fun enableTorch(pigeon_instance: androidx.camera.core.CameraControl, torch: Boolean, callback: (Result) -> Unit) /** Sets current zoom by ratio. */ - abstract fun setZoomRatio( - pigeon_instance: androidx.camera.core.CameraControl, - ratio: Double, - callback: (Result) -> Unit - ) - - /** Starts a focus and metering action configured by the `FocusMeteringAction`. */ - abstract fun startFocusAndMetering( - pigeon_instance: androidx.camera.core.CameraControl, - action: androidx.camera.core.FocusMeteringAction, - callback: (Result) -> Unit - ) + abstract fun setZoomRatio(pigeon_instance: androidx.camera.core.CameraControl, ratio: Double, callback: (Result) -> Unit) + + /** + * Starts a focus and metering action configured by the + * `FocusMeteringAction`. + */ + abstract fun startFocusAndMetering(pigeon_instance: androidx.camera.core.CameraControl, action: androidx.camera.core.FocusMeteringAction, callback: (Result) -> Unit) /** Cancels current FocusMeteringAction and clears AF/AE/AWB regions. */ - abstract fun cancelFocusAndMetering( - pigeon_instance: androidx.camera.core.CameraControl, - callback: (Result) -> Unit - ) + abstract fun cancelFocusAndMetering(pigeon_instance: androidx.camera.core.CameraControl, callback: (Result) -> Unit) /** Set the exposure compensation value for the camera. */ - abstract fun setExposureCompensationIndex( - pigeon_instance: androidx.camera.core.CameraControl, - index: Long, - callback: (Result) -> Unit - ) + abstract fun setExposureCompensationIndex(pigeon_instance: androidx.camera.core.CameraControl, index: Long, callback: (Result) -> Unit) companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraControl?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraControl.enableTorch", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraControl.enableTorch", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -6217,11 +5432,7 @@ abstract class PigeonApiCameraControl( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraControl.setZoomRatio", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraControl.setZoomRatio", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -6241,18 +5452,13 @@ abstract class PigeonApiCameraControl( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraControl.startFocusAndMetering", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraControl.startFocusAndMetering", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.CameraControl val actionArg = args[1] as androidx.camera.core.FocusMeteringAction - api.startFocusAndMetering(pigeon_instanceArg, actionArg) { - result: Result -> + api.startFocusAndMetering(pigeon_instanceArg, actionArg) { result: Result -> val error = result.exceptionOrNull() if (error != null) { reply.reply(CameraXLibraryPigeonUtils.wrapError(error)) @@ -6267,11 +5473,7 @@ abstract class PigeonApiCameraControl( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraControl.cancelFocusAndMetering", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraControl.cancelFocusAndMetering", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -6290,18 +5492,13 @@ abstract class PigeonApiCameraControl( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraControl.setExposureCompensationIndex", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraControl.setExposureCompensationIndex", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.CameraControl val indexArg = args[1] as Long - api.setExposureCompensationIndex(pigeon_instanceArg, indexArg) { result: Result - -> + api.setExposureCompensationIndex(pigeon_instanceArg, indexArg) { result: Result -> val error = result.exceptionOrNull() if (error != null) { reply.reply(CameraXLibraryPigeonUtils.wrapError(error)) @@ -6320,19 +5517,16 @@ abstract class PigeonApiCameraControl( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraControl and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.CameraControl, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.CameraControl, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraControl.pigeon_newInstance" @@ -6340,86 +5534,63 @@ abstract class PigeonApiCameraControl( channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * The builder used to create the `FocusMeteringAction`. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/core/FocusMeteringAction.Builder. + * See https://developer.android.com/reference/kotlin/androidx/camera/core/FocusMeteringAction.Builder. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiFocusMeteringActionBuilder( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { - /** Creates a Builder from a `MeteringPoint` with default mode FLAG_AF | FLAG_AE | FLAG_AWB. */ - abstract fun pigeon_defaultConstructor( - point: androidx.camera.core.MeteringPoint - ): androidx.camera.core.FocusMeteringAction.Builder +abstract class PigeonApiFocusMeteringActionBuilder(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { + /** + * Creates a Builder from a `MeteringPoint` with default mode FLAG_AF | + * FLAG_AE | FLAG_AWB. + */ + abstract fun pigeon_defaultConstructor(point: androidx.camera.core.MeteringPoint): androidx.camera.core.FocusMeteringAction.Builder /** Creates a Builder from a `MeteringPoint` and `MeteringMode`. */ - abstract fun withMode( - point: androidx.camera.core.MeteringPoint, - mode: MeteringMode - ): androidx.camera.core.FocusMeteringAction.Builder + abstract fun withMode(point: androidx.camera.core.MeteringPoint, mode: MeteringMode): androidx.camera.core.FocusMeteringAction.Builder /** Adds another MeteringPoint with default metering mode. */ - abstract fun addPoint( - pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder, - point: androidx.camera.core.MeteringPoint - ) + abstract fun addPoint(pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder, point: androidx.camera.core.MeteringPoint) /** Adds another MeteringPoint with specified meteringMode. */ - abstract fun addPointWithMode( - pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder, - point: androidx.camera.core.MeteringPoint, - mode: MeteringMode - ) + abstract fun addPointWithMode(pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder, point: androidx.camera.core.MeteringPoint, mode: MeteringMode) /** Disables the auto-cancel. */ abstract fun disableAutoCancel(pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder) /** Builds the `FocusMeteringAction` instance. */ - abstract fun build( - pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder - ): androidx.camera.core.FocusMeteringAction + abstract fun build(pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder): androidx.camera.core.FocusMeteringAction companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - api: PigeonApiFocusMeteringActionBuilder? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiFocusMeteringActionBuilder?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val pointArg = args[1] as androidx.camera.core.MeteringPoint - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(pointArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(pointArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6427,25 +5598,19 @@ abstract class PigeonApiFocusMeteringActionBuilder( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.withMode", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.withMode", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val pointArg = args[1] as androidx.camera.core.MeteringPoint val modeArg = args[2] as MeteringMode - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.withMode(pointArg, modeArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.withMode(pointArg,modeArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6453,23 +5618,18 @@ abstract class PigeonApiFocusMeteringActionBuilder( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.addPoint", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.addPoint", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.FocusMeteringAction.Builder val pointArg = args[1] as androidx.camera.core.MeteringPoint - val wrapped: List = - try { - api.addPoint(pigeon_instanceArg, pointArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.addPoint(pigeon_instanceArg, pointArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6477,24 +5637,19 @@ abstract class PigeonApiFocusMeteringActionBuilder( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.addPointWithMode", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.addPointWithMode", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.FocusMeteringAction.Builder val pointArg = args[1] as androidx.camera.core.MeteringPoint val modeArg = args[2] as MeteringMode - val wrapped: List = - try { - api.addPointWithMode(pigeon_instanceArg, pointArg, modeArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.addPointWithMode(pigeon_instanceArg, pointArg, modeArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6502,22 +5657,17 @@ abstract class PigeonApiFocusMeteringActionBuilder( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.disableAutoCancel", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.disableAutoCancel", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.FocusMeteringAction.Builder - val wrapped: List = - try { - api.disableAutoCancel(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.disableAutoCancel(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6525,21 +5675,16 @@ abstract class PigeonApiFocusMeteringActionBuilder( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.build", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.build", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.FocusMeteringAction.Builder - val wrapped: List = - try { - listOf(api.build(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.build(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6550,41 +5695,35 @@ abstract class PigeonApiFocusMeteringActionBuilder( } @Suppress("LocalVariableName", "FunctionName") - /** - * Creates a Dart instance of FocusMeteringActionBuilder and attaches it to [pigeon_instanceArg]. - */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.FocusMeteringAction.Builder, - callback: (Result) -> Unit - ) { + /** Creates a Dart instance of FocusMeteringActionBuilder and attaches it to [pigeon_instanceArg]. */ + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.FocusMeteringAction.Builder, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * A configuration used to trigger a focus and/or metering action. @@ -6592,74 +5731,53 @@ abstract class PigeonApiFocusMeteringActionBuilder( * See https://developer.android.com/reference/kotlin/androidx/camera/core/FocusMeteringAction. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiFocusMeteringAction( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiFocusMeteringAction(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** All MeteringPoints used for AE regions. */ - abstract fun meteringPointsAe( - pigeon_instance: androidx.camera.core.FocusMeteringAction - ): List + abstract fun meteringPointsAe(pigeon_instance: androidx.camera.core.FocusMeteringAction): List /** All MeteringPoints used for AF regions. */ - abstract fun meteringPointsAf( - pigeon_instance: androidx.camera.core.FocusMeteringAction - ): List + abstract fun meteringPointsAf(pigeon_instance: androidx.camera.core.FocusMeteringAction): List /** All MeteringPoints used for AWB regions. */ - abstract fun meteringPointsAwb( - pigeon_instance: androidx.camera.core.FocusMeteringAction - ): List + abstract fun meteringPointsAwb(pigeon_instance: androidx.camera.core.FocusMeteringAction): List /** If auto-cancel is enabled or not. */ - abstract fun isAutoCancelEnabled( - pigeon_instance: androidx.camera.core.FocusMeteringAction - ): Boolean + abstract fun isAutoCancelEnabled(pigeon_instance: androidx.camera.core.FocusMeteringAction): Boolean @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of FocusMeteringAction and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.FocusMeteringAction, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.FocusMeteringAction, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val meteringPointsAeArg = meteringPointsAe(pigeon_instanceArg) val meteringPointsAfArg = meteringPointsAf(pigeon_instanceArg) val meteringPointsAwbArg = meteringPointsAwb(pigeon_instanceArg) val isAutoCancelEnabledArg = isAutoCancelEnabled(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) - channel.send( - listOf( - pigeon_identifierArg, - meteringPointsAeArg, - meteringPointsAfArg, - meteringPointsAwbArg, - isAutoCancelEnabledArg)) { - if (it is List<*>) { - if (it.size > 1) { - callback( - Result.failure( - CameraXError(it[0] as String, it[1] as String, it[2] as String?))) - } else { - callback(Result.success(Unit)) - } - } else { - callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + channel.send(listOf(pigeon_identifierArg, meteringPointsAeArg, meteringPointsAfArg, meteringPointsAwbArg, isAutoCancelEnabledArg)) { + if (it is List<*>) { + if (it.size > 1) { + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + } else { + callback(Result.success(Unit)) } + } else { + callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) + } + } } } + } /** * Result of the `CameraControl.startFocusAndMetering`. @@ -6667,60 +5785,53 @@ abstract class PigeonApiFocusMeteringAction( * See https://developer.android.com/reference/androidx/camera/core/FocusMeteringResult. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiFocusMeteringResult( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiFocusMeteringResult(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** If auto focus is successful. */ abstract fun isFocusSuccessful(pigeon_instance: androidx.camera.core.FocusMeteringResult): Boolean @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of FocusMeteringResult and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.FocusMeteringResult, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.FocusMeteringResult, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val isFocusSuccessfulArg = isFocusSuccessful(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, isFocusSuccessfulArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * An immutable package of settings and outputs needed to capture a single image from the camera - * device. + * An immutable package of settings and outputs needed to capture a single + * image from the camera device. * * See https://developer.android.com/reference/android/hardware/camera2/CaptureRequest. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCaptureRequest( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCaptureRequest(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** - * Whether auto-exposure (AE) is currently locked to its latest calculated values. + * Whether auto-exposure (AE) is currently locked to its latest calculated + * values. * * Value is boolean. * @@ -6742,23 +5853,17 @@ abstract class PigeonApiCaptureRequest( fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCaptureRequest?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.controlAELock", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.controlAELock", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.controlAELock(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.controlAELock(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6766,23 +5871,17 @@ abstract class PigeonApiCaptureRequest( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.controlVideoStabilizationMode", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.controlVideoStabilizationMode", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.controlVideoStabilizationMode(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.controlVideoStabilizationMode(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6794,130 +5893,106 @@ abstract class PigeonApiCaptureRequest( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CaptureRequest and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: android.hardware.camera2.CaptureRequest, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: android.hardware.camera2.CaptureRequest, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * A Key is used to do capture request field lookups with CaptureRequest.get or to set fields with - * `CaptureRequest.Builder.set`. + * A Key is used to do capture request field lookups with CaptureRequest.get or + * to set fields with `CaptureRequest.Builder.set`. * * See https://developer.android.com/reference/android/hardware/camera2/CaptureRequest.Key.html. */ @Suppress("UNCHECKED_CAST") -open class PigeonApiCaptureRequestKey( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +open class PigeonApiCaptureRequestKey(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CaptureRequestKey and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: android.hardware.camera2.CaptureRequest.Key<*>, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: android.hardware.camera2.CaptureRequest.Key<*>, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.CaptureRequestKey.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.CaptureRequestKey.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * A bundle of Camera2 capture request options. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/CaptureRequestOptions. + * See https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/CaptureRequestOptions. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCaptureRequestOptions( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { - abstract fun pigeon_defaultConstructor( - options: Map, Any?> - ): androidx.camera.camera2.interop.CaptureRequestOptions - - /** Returns a value for the given CaptureRequestKey or null if it hasn't been set. */ - abstract fun getCaptureRequestOption( - pigeon_instance: androidx.camera.camera2.interop.CaptureRequestOptions, - key: android.hardware.camera2.CaptureRequest.Key<*> - ): Any? +abstract class PigeonApiCaptureRequestOptions(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { + abstract fun pigeon_defaultConstructor(options: Map, Any?>): androidx.camera.camera2.interop.CaptureRequestOptions + + /** + * Returns a value for the given CaptureRequestKey or null if it hasn't been + * set. + */ + abstract fun getCaptureRequestOption(pigeon_instance: androidx.camera.camera2.interop.CaptureRequestOptions, key: android.hardware.camera2.CaptureRequest.Key<*>): Any? companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - api: PigeonApiCaptureRequestOptions? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCaptureRequestOptions?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val optionsArg = args[1] as Map, Any?> - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(optionsArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(optionsArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6925,23 +6000,17 @@ abstract class PigeonApiCaptureRequestOptions( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.getCaptureRequestOption", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.getCaptureRequestOption", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = - args[0] as androidx.camera.camera2.interop.CaptureRequestOptions + val pigeon_instanceArg = args[0] as androidx.camera.camera2.interop.CaptureRequestOptions val keyArg = args[1] as android.hardware.camera2.CaptureRequest.Key<*> - val wrapped: List = - try { - listOf(api.getCaptureRequestOption(pigeon_instanceArg, keyArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getCaptureRequestOption(pigeon_instanceArg, keyArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6953,87 +6022,69 @@ abstract class PigeonApiCaptureRequestOptions( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CaptureRequestOptions and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.camera2.interop.CaptureRequestOptions, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.camera2.interop.CaptureRequestOptions, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * An class that provides ability to interoperate with the 1android.hardware.camera21 APIs. + * An class that provides ability to interoperate with the + * 1android.hardware.camera21 APIs. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/Camera2CameraControl. + * See https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/Camera2CameraControl. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCamera2CameraControl( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCamera2CameraControl(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** Gets the `Camera2CameraControl` from a `CameraControl`. */ - abstract fun from( - cameraControl: androidx.camera.core.CameraControl - ): androidx.camera.camera2.interop.Camera2CameraControl + abstract fun from(cameraControl: androidx.camera.core.CameraControl): androidx.camera.camera2.interop.Camera2CameraControl - /** Adds a `CaptureRequestOptions` updates the session with the options it contains. */ - abstract fun addCaptureRequestOptions( - pigeon_instance: androidx.camera.camera2.interop.Camera2CameraControl, - bundle: androidx.camera.camera2.interop.CaptureRequestOptions, - callback: (Result) -> Unit - ) + /** + * Adds a `CaptureRequestOptions` updates the session with the options it + * contains. + */ + abstract fun addCaptureRequestOptions(pigeon_instance: androidx.camera.camera2.interop.Camera2CameraControl, bundle: androidx.camera.camera2.interop.CaptureRequestOptions, callback: (Result) -> Unit) companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - api: PigeonApiCamera2CameraControl? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCamera2CameraControl?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.from", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.from", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val cameraControlArg = args[1] as androidx.camera.core.CameraControl - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.from(cameraControlArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.from(cameraControlArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7041,11 +6092,7 @@ abstract class PigeonApiCamera2CameraControl( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.addCaptureRequestOptions", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.addCaptureRequestOptions", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -7069,77 +6116,62 @@ abstract class PigeonApiCamera2CameraControl( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Camera2CameraControl and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.camera2.interop.Camera2CameraControl, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.camera2.interop.Camera2CameraControl, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * Applications can filter out unsuitable sizes and sort the resolution list in the preferred order - * by implementing the resolution filter interface. + * Applications can filter out unsuitable sizes and sort the resolution list in + * the preferred order by implementing the resolution filter interface. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionFilter. + * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionFilter. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiResolutionFilter( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { - abstract fun createWithOnePreferredSize( - preferredSize: android.util.Size - ): androidx.camera.core.resolutionselector.ResolutionFilter +abstract class PigeonApiResolutionFilter(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { + abstract fun createWithOnePreferredSize(preferredSize: android.util.Size): androidx.camera.core.resolutionselector.ResolutionFilter companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiResolutionFilter?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.createWithOnePreferredSize", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.createWithOnePreferredSize", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val preferredSizeArg = args[1] as android.util.Size - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.createWithOnePreferredSize(preferredSizeArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.createWithOnePreferredSize(preferredSizeArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7151,85 +6183,73 @@ abstract class PigeonApiResolutionFilter( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ResolutionFilter and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionFilter, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionFilter, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * A Key is used to do camera characteristics field lookups with `CameraCharacteristics.get`. + * A Key is used to do camera characteristics field lookups with + * `CameraCharacteristics.get`. * - * See - * https://developer.android.com/reference/android/hardware/camera2/CameraCharacteristics.Key.html. + * See https://developer.android.com/reference/android/hardware/camera2/CameraCharacteristics.Key.html. */ @Suppress("UNCHECKED_CAST") -open class PigeonApiCameraCharacteristicsKey( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +open class PigeonApiCameraCharacteristicsKey(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { @Suppress("LocalVariableName", "FunctionName") - /** - * Creates a Dart instance of CameraCharacteristicsKey and attaches it to [pigeon_instanceArg]. - */ - fun pigeon_newInstance( - pigeon_instanceArg: android.hardware.camera2.CameraCharacteristics.Key<*>, - callback: (Result) -> Unit - ) { + /** Creates a Dart instance of CameraCharacteristicsKey and attaches it to [pigeon_instanceArg]. */ + fun pigeon_newInstance(pigeon_instanceArg: android.hardware.camera2.CameraCharacteristics.Key<*>, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristicsKey.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristicsKey.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * The properties describing a `CameraDevice`. @@ -7237,9 +6257,7 @@ open class PigeonApiCameraCharacteristicsKey( * See https://developer.android.com/reference/android/hardware/camera2/CameraCharacteristics. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraCharacteristics( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCameraCharacteristics(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** * Generally classifies the overall set of the camera device functionality. * @@ -7250,8 +6268,8 @@ abstract class PigeonApiCameraCharacteristics( abstract fun infoSupportedHardwareLevel(): android.hardware.camera2.CameraCharacteristics.Key<*> /** - * Clockwise angle through which the output image needs to be rotated to be upright on the device - * screen in its native orientation.. + * Clockwise angle through which the output image needs to be rotated to be + * upright on the device screen in its native orientation.. * * Value is int. * @@ -7260,41 +6278,31 @@ abstract class PigeonApiCameraCharacteristics( abstract fun sensorOrientation(): android.hardware.camera2.CameraCharacteristics.Key<*> /** - * List of video stabilization modes for android.control.videoStabilizationMode that are supported - * by this camera device. + * List of video stabilization modes for android.control.videoStabilizationMode + * that are supported by this camera device. * * Value is `ControlAvailableVideoStabilizationMode`. * * This key is available on all devices. */ - abstract fun controlAvailableVideoStabilizationModes(): - android.hardware.camera2.CameraCharacteristics.Key<*> + abstract fun controlAvailableVideoStabilizationModes(): android.hardware.camera2.CameraCharacteristics.Key<*> companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - api: PigeonApiCameraCharacteristics? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraCharacteristics?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.infoSupportedHardwareLevel", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.infoSupportedHardwareLevel", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.infoSupportedHardwareLevel(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.infoSupportedHardwareLevel(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7302,23 +6310,17 @@ abstract class PigeonApiCameraCharacteristics( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.sensorOrientation", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.sensorOrientation", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.sensorOrientation(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.sensorOrientation(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7326,23 +6328,17 @@ abstract class PigeonApiCameraCharacteristics( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.controlAvailableVideoStabilizationModes", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.controlAvailableVideoStabilizationModes", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.controlAvailableVideoStabilizationModes(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.controlAvailableVideoStabilizationModes(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7354,88 +6350,68 @@ abstract class PigeonApiCameraCharacteristics( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraCharacteristics and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: android.hardware.camera2.CameraCharacteristics, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: android.hardware.camera2.CameraCharacteristics, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * An interface for retrieving Camera2-related camera information. * - * See - * https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/Camera2CameraInfo. + * See https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/Camera2CameraInfo. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCamera2CameraInfo( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiCamera2CameraInfo(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** Gets the `Camera2CameraInfo` from a `CameraInfo`. */ - abstract fun from( - cameraInfo: androidx.camera.core.CameraInfo - ): androidx.camera.camera2.interop.Camera2CameraInfo + abstract fun from(cameraInfo: androidx.camera.core.CameraInfo): androidx.camera.camera2.interop.Camera2CameraInfo /** Gets the string camera ID. */ - abstract fun getCameraId( - pigeon_instance: androidx.camera.camera2.interop.Camera2CameraInfo - ): String + abstract fun getCameraId(pigeon_instance: androidx.camera.camera2.interop.Camera2CameraInfo): String /** Gets a camera characteristic value. */ - abstract fun getCameraCharacteristic( - pigeon_instance: androidx.camera.camera2.interop.Camera2CameraInfo, - key: android.hardware.camera2.CameraCharacteristics.Key<*> - ): Any? + abstract fun getCameraCharacteristic(pigeon_instance: androidx.camera.camera2.interop.Camera2CameraInfo, key: android.hardware.camera2.CameraCharacteristics.Key<*>): Any? companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCamera2CameraInfo?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.from", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.from", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val cameraInfoArg = args[1] as androidx.camera.core.CameraInfo - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.from(cameraInfoArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.from(cameraInfoArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7443,21 +6419,16 @@ abstract class PigeonApiCamera2CameraInfo( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.getCameraId", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.getCameraId", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.camera2.interop.Camera2CameraInfo - val wrapped: List = - try { - listOf(api.getCameraId(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getCameraId(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7465,22 +6436,17 @@ abstract class PigeonApiCamera2CameraInfo( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.getCameraCharacteristic", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.getCameraCharacteristic", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.camera2.interop.Camera2CameraInfo val keyArg = args[1] as android.hardware.camera2.CameraCharacteristics.Key<*> - val wrapped: List = - try { - listOf(api.getCameraCharacteristic(pigeon_instanceArg, keyArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.getCameraCharacteristic(pigeon_instanceArg, keyArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7492,38 +6458,34 @@ abstract class PigeonApiCamera2CameraInfo( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Camera2CameraInfo and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.camera2.interop.Camera2CameraInfo, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.camera2.interop.Camera2CameraInfo, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** * A factory to create a MeteringPoint. @@ -7531,49 +6493,30 @@ abstract class PigeonApiCamera2CameraInfo( * See https://developer.android.com/reference/androidx/camera/core/MeteringPointFactory. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiMeteringPointFactory( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiMeteringPointFactory(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** Creates a MeteringPoint by x, y. */ - abstract fun createPoint( - pigeon_instance: androidx.camera.core.MeteringPointFactory, - x: Double, - y: Double - ): androidx.camera.core.MeteringPoint + abstract fun createPoint(pigeon_instance: androidx.camera.core.MeteringPointFactory, x: Double, y: Double): androidx.camera.core.MeteringPoint /** Creates a MeteringPoint by x, y, size. */ - abstract fun createPointWithSize( - pigeon_instance: androidx.camera.core.MeteringPointFactory, - x: Double, - y: Double, - size: Double - ): androidx.camera.core.MeteringPoint + abstract fun createPointWithSize(pigeon_instance: androidx.camera.core.MeteringPointFactory, x: Double, y: Double, size: Double): androidx.camera.core.MeteringPoint companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - api: PigeonApiMeteringPointFactory? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiMeteringPointFactory?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.createPoint", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.createPoint", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.MeteringPointFactory val xArg = args[1] as Double val yArg = args[2] as Double - val wrapped: List = - try { - listOf(api.createPoint(pigeon_instanceArg, xArg, yArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.createPoint(pigeon_instanceArg, xArg, yArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7581,11 +6524,7 @@ abstract class PigeonApiMeteringPointFactory( } } run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.createPointWithSize", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.createPointWithSize", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -7593,12 +6532,11 @@ abstract class PigeonApiMeteringPointFactory( val xArg = args[1] as Double val yArg = args[2] as Double val sizeArg = args[3] as Double - val wrapped: List = - try { - listOf(api.createPointWithSize(pigeon_instanceArg, xArg, yArg, sizeArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + listOf(api.createPointWithSize(pigeon_instanceArg, xArg, yArg, sizeArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7610,73 +6548,57 @@ abstract class PigeonApiMeteringPointFactory( @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of MeteringPointFactory and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.MeteringPointFactory, - callback: (Result) -> Unit - ) { + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.MeteringPointFactory, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } + } /** - * A MeteringPointFactory that can convert a View (x, y) into a MeteringPoint which can then be used - * to construct a FocusMeteringAction to start a focus and metering action. + * A MeteringPointFactory that can convert a View (x, y) into a MeteringPoint + * which can then be used to construct a FocusMeteringAction to start a focus + * and metering action. * - * See - * https://developer.android.com/reference/androidx/camera/core/DisplayOrientedMeteringPointFactory. + * See https://developer.android.com/reference/androidx/camera/core/DisplayOrientedMeteringPointFactory. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiDisplayOrientedMeteringPointFactory( - open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar -) { +abstract class PigeonApiDisplayOrientedMeteringPointFactory(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** - * Creates a DisplayOrientedMeteringPointFactory for converting View (x, y) into a MeteringPoint - * based on the current display's rotation and CameraInfo. + * Creates a DisplayOrientedMeteringPointFactory for converting View (x, y) + * into a MeteringPoint based on the current display's rotation and + * CameraInfo. */ - abstract fun pigeon_defaultConstructor( - cameraInfo: androidx.camera.core.CameraInfo, - width: Double, - height: Double - ): androidx.camera.core.DisplayOrientedMeteringPointFactory + abstract fun pigeon_defaultConstructor(cameraInfo: androidx.camera.core.CameraInfo, width: Double, height: Double): androidx.camera.core.DisplayOrientedMeteringPointFactory companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers( - binaryMessenger: BinaryMessenger, - api: PigeonApiDisplayOrientedMeteringPointFactory? - ) { + fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiDisplayOrientedMeteringPointFactory?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = - BasicMessageChannel( - binaryMessenger, - "dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_defaultConstructor", - codec) + val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_defaultConstructor", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -7684,15 +6606,12 @@ abstract class PigeonApiDisplayOrientedMeteringPointFactory( val cameraInfoArg = args[1] as androidx.camera.core.CameraInfo val widthArg = args[2] as Double val heightArg = args[3] as Double - val wrapped: List = - try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance( - api.pigeon_defaultConstructor(cameraInfoArg, widthArg, heightArg), - pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(cameraInfoArg,widthArg,heightArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -7703,46 +6622,40 @@ abstract class PigeonApiDisplayOrientedMeteringPointFactory( } @Suppress("LocalVariableName", "FunctionName") - /** - * Creates a Dart instance of DisplayOrientedMeteringPointFactory and attaches it to - * [pigeon_instanceArg]. - */ - fun pigeon_newInstance( - pigeon_instanceArg: androidx.camera.core.DisplayOrientedMeteringPointFactory, - callback: (Result) -> Unit - ) { + /** Creates a Dart instance of DisplayOrientedMeteringPointFactory and attaches it to [pigeon_instanceArg]. */ + fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.DisplayOrientedMeteringPointFactory, callback: (Result) -> Unit) +{ if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = - pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = - "dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_newInstance" + val channelName = "dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback( - Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiMeteringPointFactory] used to access callback methods */ - fun pigeon_getPigeonApiMeteringPointFactory(): PigeonApiMeteringPointFactory { + fun pigeon_getPigeonApiMeteringPointFactory(): PigeonApiMeteringPointFactory + { return pigeonRegistrar.getPigeonApiMeteringPointFactory() } + } diff --git a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java index aafaf378c069..f2357a2339ac 100644 --- a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java +++ b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java @@ -74,11 +74,13 @@ public PendingRecording prepareRecording(Recorder pigeonInstance, @NonNull Strin private void validateOutputPath(@NonNull String path) { File file = new File(path); if (file.isDirectory()) { - throw new RuntimeException("The output path is a directory: " + path); + throw new GeneratedCameraXLibrary.FlutterError( + "IOError", "The output path is a directory: " + path, null); } File parent = file.getParentFile(); if (parent != null && !parent.exists()) { - throw new RuntimeException("The parent directory does not exist: " + parent.getAbsolutePath()); + throw new GeneratedCameraXLibrary.FlutterError( + "IOError", "The parent directory does not exist: " + parent.getAbsolutePath(), null); } String lowerPath = path.toLowerCase(); @@ -87,8 +89,8 @@ private void validateOutputPath(@NonNull String path) { && !lowerPath.endsWith(".3gp") && !lowerPath.endsWith(".m4v") && !lowerPath.endsWith(".webm")) { - throw new RuntimeException( - "Invalid video extension. Supported: .mp4, .mov, .3gp, .m4v, .webm"); + throw new GeneratedCameraXLibrary.FlutterError( + "IOError", "Invalid video extension. Supported: .mp4, .mov, .3gp, .m4v, .webm", null); } } @@ -97,7 +99,7 @@ File openTempFile(@NonNull String path) { try { return new File(path); } catch (NullPointerException | SecurityException e) { - throw new RuntimeException(e); + throw new GeneratedCameraXLibrary.FlutterError("IOError", e.getMessage(), null); } } diff --git a/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/RecorderTest.java b/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/RecorderTest.java index 6e45c21c8892..886b4c116118 100644 --- a/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/RecorderTest.java +++ b/packages/camera/camera_android_camerax/android/src/test/java/io/flutter/plugins/camerax/RecorderTest.java @@ -81,21 +81,32 @@ public void prepareRecording_returnsExpectedPendingRecording() { assertEquals(mockPendingRecording, api.prepareRecording(mockRecorder, "myFile.mp4")); } - @Test(expected = RuntimeException.class) - public void prepareRecording_errorsOnInvalidPath() { + @Test(expected = GeneratedCameraXLibrary.FlutterError.class) + public void prepareRecording_errorsOnDirectoryPath() { final PigeonApiRecorder api = new TestProxyApiRegistrar().getPigeonApiRecorder(); + final Recorder mockRecorder = mock(Recorder.class); + + // Pass a path that is a directory (e.g. root "/") + api.prepareRecording(mockRecorder, "/"); + } + @Test(expected = GeneratedCameraXLibrary.FlutterError.class) + public void prepareRecording_errorsOnNonExistentParent() { + final PigeonApiRecorder api = new TestProxyApiRegistrar().getPigeonApiRecorder(); final Recorder mockRecorder = mock(Recorder.class); - // This should trigger the catch block in RecorderProxyApi.openTempFile if path is null, - // but Pigeon ensures it's non-null. - // However, we can test that it throws if openTempFile fails (e.g. SecurityException). - // But since openTempFile just calls new File(path), it doesn't throw much. + api.prepareRecording(mockRecorder, "/non/existent/parent/file.mp4"); + } - // Let's test with a null path to trigger NullPointerException if we could, - // but Pigeon marks it @NonNull. + @Test(expected = GeneratedCameraXLibrary.FlutterError.class) + public void prepareRecording_errorsOnInvalidExtension() { + final PigeonApiRecorder api = new TestProxyApiRegistrar().getPigeonApiRecorder(); + final Recorder mockRecorder = mock(Recorder.class); - // Actually, RecorderProxyApi.prepareRecording is what we want to test. - api.prepareRecording(mockRecorder, null); + // A path that has an invalid extension, but whose parent exists (we can just use an empty + // parent or relative path if needed, but since it checks parent existence, let's use a known + // valid parent like current directory, or mock it. Actually, `new + // File("file.txt").getParentFile()` is null, which bypasses the parent existence check!) + api.prepareRecording(mockRecorder, "file.txt"); } } diff --git a/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart b/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart index 7b642695e0b0..c273ce6f7182 100644 --- a/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart +++ b/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart @@ -1,31 +1,46 @@ // Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -// Autogenerated from Pigeon (v26.1.7), do not edit directly. +// Autogenerated from Pigeon (v26.3.2), do not edit directly. // See also: https://pub.dev/packages/pigeon -// ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, omit_obvious_local_variable_types, unused_shown_name, unnecessary_import, no_leading_underscores_for_local_identifiers +// ignore_for_file: unused_import, unused_shown_name +// ignore_for_file: type=lint import 'dart:async'; import 'dart:io' show Platform; -import 'dart:typed_data' show Float64List, Int32List, Int64List, Uint8List; +import 'dart:typed_data' show Float64List, Int32List, Int64List; -import 'package:flutter/foundation.dart' - show ReadBuffer, WriteBuffer, immutable, protected, visibleForTesting; import 'package:flutter/services.dart'; import 'package:flutter/widgets.dart' show WidgetsFlutterBinding; +import 'package:meta/meta.dart' show immutable, protected, visibleForTesting; -PlatformException _createConnectionError(String channelName) { - return PlatformException( - code: 'channel-error', - message: 'Unable to establish connection on channel: "$channelName".', - ); +Object? _extractReplyValueOrThrow( + List? replyList, + String channelName, { + required bool isNullValid, +}) { + if (replyList == null) { + throw PlatformException( + code: 'channel-error', + message: 'Unable to establish connection on channel: "$channelName".', + ); + } else if (replyList.length > 1) { + throw PlatformException( + code: replyList[0]! as String, + message: replyList[1] as String?, + details: replyList[2], + ); + } else if (!isNullValid && (replyList.isNotEmpty && replyList[0] == null)) { + throw PlatformException( + code: 'null-error', + message: 'Host platform returned null value for non-null return value.', + ); + } + return replyList.firstOrNull; } -List wrapResponse({ - Object? result, - PlatformException? error, - bool empty = false, -}) { + +List wrapResponse({Object? result, PlatformException? error, bool empty = false}) { if (empty) { return []; } @@ -34,7 +49,6 @@ List wrapResponse({ } return [error.code, error.message, error.details]; } - /// Provides overrides for the constructors and static members of each /// Dart proxy class. /// @@ -45,108 +59,96 @@ List wrapResponse({ @visibleForTesting class PigeonOverrides { /// Overrides [CameraSize.new]. - static CameraSize Function({required int width, required int height})? - cameraSize_new; + static CameraSize Function({ + required int width, + required int height, + })? cameraSize_new; /// Overrides [CameraIntegerRange.new]. - static CameraIntegerRange Function({required int lower, required int upper})? - cameraIntegerRange_new; + static CameraIntegerRange Function({ + required int lower, + required int upper, + })? cameraIntegerRange_new; /// Overrides [Observer.new]. - static Observer Function({ - required void Function(Observer pigeon_instance, Object value) onChanged, - })? - observer_new; + static Observer Function( + {required void Function( + Observer pigeon_instance, + Object value, + ) onChanged})? observer_new; /// Overrides [CameraSelector.new]. static CameraSelector Function({ LensFacing? requireLensFacing, CameraInfo? cameraInfoForFilter, - })? - cameraSelector_new; + })? cameraSelector_new; /// Overrides [SystemServicesManager.new]. - static SystemServicesManager Function({ - required void Function( - SystemServicesManager pigeon_instance, - String errorDescription, - ) - onCameraError, - })? - systemServicesManager_new; + static SystemServicesManager Function( + {required void Function( + SystemServicesManager pigeon_instance, + String errorDescription, + ) onCameraError})? systemServicesManager_new; /// Overrides [DeviceOrientationManager.new]. - static DeviceOrientationManager Function({ - required void Function( - DeviceOrientationManager pigeon_instance, - String orientation, - ) - onDeviceOrientationChanged, - })? - deviceOrientationManager_new; + static DeviceOrientationManager Function( + {required void Function( + DeviceOrientationManager pigeon_instance, + String orientation, + ) onDeviceOrientationChanged})? deviceOrientationManager_new; /// Overrides [Preview.new]. static Preview Function({ ResolutionSelector? resolutionSelector, int? targetRotation, CameraIntegerRange? targetFpsRange, - })? - preview_new; + })? preview_new; /// Overrides [VideoCapture.withOutput]. static VideoCapture Function({ required VideoOutput videoOutput, CameraIntegerRange? targetFpsRange, - })? - videoCapture_withOutput; + })? videoCapture_withOutput; /// Overrides [Recorder.new]. static Recorder Function({ int? aspectRatio, int? targetVideoEncodingBitRate, QualitySelector? qualitySelector, - })? - recorder_new; + })? recorder_new; /// Overrides [VideoRecordEventListener.new]. - static VideoRecordEventListener Function({ - required void Function( - VideoRecordEventListener pigeon_instance, - VideoRecordEvent event, - ) - onEvent, - })? - videoRecordEventListener_new; + static VideoRecordEventListener Function( + {required void Function( + VideoRecordEventListener pigeon_instance, + VideoRecordEvent event, + ) onEvent})? videoRecordEventListener_new; /// Overrides [ImageCapture.new]. static ImageCapture Function({ ResolutionSelector? resolutionSelector, int? targetRotation, CameraXFlashMode? flashMode, - })? - imageCapture_new; + })? imageCapture_new; /// Overrides [ResolutionStrategy.new]. static ResolutionStrategy Function({ required CameraSize boundSize, required ResolutionStrategyFallbackRule fallbackRule, - })? - resolutionStrategy_new; + })? resolutionStrategy_new; /// Overrides [ResolutionSelector.new]. static ResolutionSelector Function({ ResolutionFilter? resolutionFilter, ResolutionStrategy? resolutionStrategy, AspectRatioStrategy? aspectRatioStrategy, - })? - resolutionSelector_new; + })? resolutionSelector_new; /// Overrides [AspectRatioStrategy.new]. static AspectRatioStrategy Function({ required AspectRatio preferredAspectRatio, required AspectRatioStrategyFallbackRule fallbackRule, - })? - aspectRatioStrategy_new; + })? aspectRatioStrategy_new; /// Overrides [ImageAnalysis.new]. static ImageAnalysis Function({ @@ -154,81 +156,76 @@ class PigeonOverrides { int? targetRotation, CameraIntegerRange? targetFpsRange, int? outputImageFormat, - })? - imageAnalysis_new; + })? imageAnalysis_new; /// Overrides [Analyzer.new]. - static Analyzer Function({ - required void Function(Analyzer pigeon_instance, ImageProxy image) analyze, - })? - analyzer_new; + static Analyzer Function( + {required void Function( + Analyzer pigeon_instance, + ImageProxy image, + ) analyze})? analyzer_new; /// Overrides [QualitySelector.from]. static QualitySelector Function({ required VideoQuality quality, FallbackStrategy? fallbackStrategy, - })? - qualitySelector_from; + })? qualitySelector_from; /// Overrides [QualitySelector.fromOrderedList]. static QualitySelector Function({ required List qualities, FallbackStrategy? fallbackStrategy, - })? - qualitySelector_fromOrderedList; + })? qualitySelector_fromOrderedList; /// Overrides [FallbackStrategy.higherQualityOrLowerThan]. static FallbackStrategy Function({required VideoQuality quality})? - fallbackStrategy_higherQualityOrLowerThan; + fallbackStrategy_higherQualityOrLowerThan; /// Overrides [FallbackStrategy.higherQualityThan]. static FallbackStrategy Function({required VideoQuality quality})? - fallbackStrategy_higherQualityThan; + fallbackStrategy_higherQualityThan; /// Overrides [FallbackStrategy.lowerQualityOrHigherThan]. static FallbackStrategy Function({required VideoQuality quality})? - fallbackStrategy_lowerQualityOrHigherThan; + fallbackStrategy_lowerQualityOrHigherThan; /// Overrides [FallbackStrategy.lowerQualityThan]. static FallbackStrategy Function({required VideoQuality quality})? - fallbackStrategy_lowerQualityThan; + fallbackStrategy_lowerQualityThan; /// Overrides [FocusMeteringActionBuilder.new]. static FocusMeteringActionBuilder Function({required MeteringPoint point})? - focusMeteringActionBuilder_new; + focusMeteringActionBuilder_new; /// Overrides [FocusMeteringActionBuilder.withMode]. static FocusMeteringActionBuilder Function({ required MeteringPoint point, required MeteringMode mode, - })? - focusMeteringActionBuilder_withMode; + })? focusMeteringActionBuilder_withMode; /// Overrides [CaptureRequestOptions.new]. - static CaptureRequestOptions Function({ - required Map options, - })? - captureRequestOptions_new; + static CaptureRequestOptions Function( + {required Map options})? + captureRequestOptions_new; /// Overrides [Camera2CameraControl.from]. static Camera2CameraControl Function({required CameraControl cameraControl})? - camera2CameraControl_from; + camera2CameraControl_from; /// Overrides [ResolutionFilter.createWithOnePreferredSize]. static ResolutionFilter Function({required CameraSize preferredSize})? - resolutionFilter_createWithOnePreferredSize; + resolutionFilter_createWithOnePreferredSize; /// Overrides [Camera2CameraInfo.from]. static Camera2CameraInfo Function({required CameraInfo cameraInfo})? - camera2CameraInfo_from; + camera2CameraInfo_from; /// Overrides [DisplayOrientedMeteringPointFactory.new]. static DisplayOrientedMeteringPointFactory Function({ required CameraInfo cameraInfo, required double width, required double height, - })? - displayOrientedMeteringPointFactory_new; + })? displayOrientedMeteringPointFactory_new; /// Overrides [CameraSelector.defaultBackCamera]. static CameraSelector? cameraSelector_defaultBackCamera; @@ -241,7 +238,7 @@ class PigeonOverrides { /// Overrides [AspectRatioStrategy.ratio_16_9FallbackAutoStrategy]. static AspectRatioStrategy? - aspectRatioStrategy_ratio_16_9FallbackAutoStrategy; + aspectRatioStrategy_ratio_16_9FallbackAutoStrategy; /// Overrides [AspectRatioStrategy.ratio_4_3FallbackAutoStrategy]. static AspectRatioStrategy? aspectRatioStrategy_ratio_4_3FallbackAutoStrategy; @@ -254,26 +251,31 @@ class PigeonOverrides { /// Overrides [CameraCharacteristics.infoSupportedHardwareLevel]. static CameraCharacteristicsKey? - cameraCharacteristics_infoSupportedHardwareLevel; + cameraCharacteristics_infoSupportedHardwareLevel; /// Overrides [CameraCharacteristics.sensorOrientation]. static CameraCharacteristicsKey? cameraCharacteristics_sensorOrientation; /// Overrides [CameraCharacteristics.controlAvailableVideoStabilizationModes]. static CameraCharacteristicsKey? - cameraCharacteristics_controlAvailableVideoStabilizationModes; + cameraCharacteristics_controlAvailableVideoStabilizationModes; /// Overrides [ProcessCameraProvider.getInstance]. static Future Function()? - processCameraProvider_getInstance; + processCameraProvider_getInstance; /// Overrides [ImageProxyUtils.getNv21Buffer]. - static Future Function(int, int, List)? - imageProxyUtils_getNv21Buffer; + static Future Function( + int, + int, + List, + )? imageProxyUtils_getNv21Buffer; /// Overrides [QualitySelector.getResolution]. - static Future Function(CameraInfo, VideoQuality)? - qualitySelector_getResolution; + static Future Function( + CameraInfo, + VideoQuality, + )? qualitySelector_getResolution; /// Sets all overridden ProxyApi class members to null. static void pigeon_reset() { @@ -334,7 +336,7 @@ abstract class PigeonInternalProxyApiBaseClass { this.pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, }) : pigeon_instanceManager = - pigeon_instanceManager ?? PigeonInstanceManager.instance; + pigeon_instanceManager ?? PigeonInstanceManager.instance; /// Sends and receives binary data across the Flutter platform barrier. /// @@ -404,10 +406,9 @@ class PigeonInstanceManager { // by calling instanceManager.getIdentifier() inside of `==` while this was a // HashMap). final Expando _identifiers = Expando(); - final Map> - _weakInstances = >{}; - final Map _strongInstances = - {}; + final Map> _weakInstances = + >{}; + final Map _strongInstances = {}; late final Finalizer _finalizer; int _nextIdentifier = 0; @@ -420,8 +421,7 @@ class PigeonInstanceManager { return PigeonInstanceManager(onWeakReferenceRemoved: (_) {}); } WidgetsFlutterBinding.ensureInitialized(); - final _PigeonInternalInstanceManagerApi api = - _PigeonInternalInstanceManagerApi(); + final _PigeonInternalInstanceManagerApi api = _PigeonInternalInstanceManagerApi(); // Clears the native `PigeonInstanceManager` on the initial use of the Dart one. api.clear(); final PigeonInstanceManager instanceManager = PigeonInstanceManager( @@ -429,166 +429,60 @@ class PigeonInstanceManager { api.removeStrongReference(identifier); }, ); - _PigeonInternalInstanceManagerApi.setUpMessageHandlers( - instanceManager: instanceManager, - ); - CameraSize.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ResolutionInfo.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CameraIntegerRange.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - VideoRecordEvent.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - VideoRecordEventStart.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - VideoRecordEventFinalize.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - MeteringPoint.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - Observer.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CameraInfo.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CameraSelector.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ProcessCameraProvider.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - UseCase.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); + _PigeonInternalInstanceManagerApi.setUpMessageHandlers(instanceManager: instanceManager); + CameraSize.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ResolutionInfo.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CameraIntegerRange.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + VideoRecordEvent.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + VideoRecordEventStart.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + VideoRecordEventFinalize.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + MeteringPoint.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + Observer.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CameraInfo.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CameraSelector.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ProcessCameraProvider.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + UseCase.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); Camera.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - SystemServicesManager.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CameraPermissionsError.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - DeviceOrientationManager.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - Preview.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - VideoCapture.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - VideoOutput.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - Recorder.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - VideoRecordEventListener.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - PendingRecording.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - Recording.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ImageCapture.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ResolutionStrategy.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ResolutionSelector.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - AspectRatioStrategy.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CameraState.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ExposureState.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ZoomState.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ImageAnalysis.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - Analyzer.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CameraStateStateError.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - LiveData.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ImageProxy.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ImageProxyUtils.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - PlaneProxy.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - QualitySelector.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - FallbackStrategy.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CameraControl.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - FocusMeteringActionBuilder.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - FocusMeteringAction.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - FocusMeteringResult.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CaptureRequest.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CaptureRequestKey.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CaptureRequestOptions.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - Camera2CameraControl.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - ResolutionFilter.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CameraCharacteristicsKey.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - CameraCharacteristics.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - Camera2CameraInfo.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - MeteringPointFactory.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); - DisplayOrientedMeteringPointFactory.pigeon_setUpMessageHandlers( - pigeon_instanceManager: instanceManager, - ); + SystemServicesManager.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CameraPermissionsError.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + DeviceOrientationManager.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + Preview.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + VideoCapture.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + VideoOutput.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + Recorder.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + VideoRecordEventListener.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + PendingRecording.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + Recording.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ImageCapture.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ResolutionStrategy.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ResolutionSelector.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + AspectRatioStrategy.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CameraState.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ExposureState.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ZoomState.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ImageAnalysis.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + Analyzer.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CameraStateStateError.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + LiveData.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ImageProxy.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ImageProxyUtils.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + PlaneProxy.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + QualitySelector.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + FallbackStrategy.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CameraControl.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + FocusMeteringActionBuilder.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + FocusMeteringAction.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + FocusMeteringResult.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CaptureRequest.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CaptureRequestKey.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CaptureRequestOptions.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + Camera2CameraControl.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + ResolutionFilter.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CameraCharacteristicsKey.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + CameraCharacteristics.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + Camera2CameraInfo.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + MeteringPointFactory.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + DisplayOrientedMeteringPointFactory.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); return instanceManager; } @@ -605,9 +499,8 @@ class PigeonInstanceManager { final int identifier = _nextUniqueIdentifier(); _identifiers[instance] = identifier; - _weakInstances[identifier] = WeakReference( - instance, - ); + _weakInstances[identifier] = + WeakReference(instance); _finalizer.attach(instance, identifier, detach: instance); final PigeonInternalProxyApiBaseClass copy = instance.pigeon_copy(); @@ -668,21 +561,15 @@ class PigeonInstanceManager { /// /// This method also expects the host `InstanceManager` to have a strong /// reference to the instance the identifier is associated with. - T? getInstanceWithWeakReference( - int identifier, - ) { - final PigeonInternalProxyApiBaseClass? weakInstance = - _weakInstances[identifier]?.target; + T? getInstanceWithWeakReference(int identifier) { + final PigeonInternalProxyApiBaseClass? weakInstance = _weakInstances[identifier]?.target; if (weakInstance == null) { - final PigeonInternalProxyApiBaseClass? strongInstance = - _strongInstances[identifier]; + final PigeonInternalProxyApiBaseClass? strongInstance = _strongInstances[identifier]; if (strongInstance != null) { - final PigeonInternalProxyApiBaseClass copy = strongInstance - .pigeon_copy(); + final PigeonInternalProxyApiBaseClass copy = strongInstance.pigeon_copy(); _identifiers[copy] = identifier; - _weakInstances[identifier] = - WeakReference(copy); + _weakInstances[identifier] = WeakReference(copy); _finalizer.attach(copy, identifier, detach: copy); return copy as T; } @@ -704,10 +591,7 @@ class PigeonInstanceManager { /// /// Throws assertion error if the instance or its identifier has already been /// added. - void addHostCreatedInstance( - PigeonInternalProxyApiBaseClass instance, - int identifier, - ) { + void addHostCreatedInstance(PigeonInternalProxyApiBaseClass instance, int identifier) { assert(!containsIdentifier(identifier)); assert(getIdentifier(instance) == null); assert(identifier >= 0); @@ -736,7 +620,7 @@ class PigeonInstanceManager { class _PigeonInternalInstanceManagerApi { /// Constructor for [_PigeonInternalInstanceManagerApi]. _PigeonInternalInstanceManagerApi({BinaryMessenger? binaryMessenger}) - : pigeonVar_binaryMessenger = binaryMessenger; + : pigeonVar_binaryMessenger = binaryMessenger; final BinaryMessenger? pigeonVar_binaryMessenger; @@ -749,35 +633,24 @@ class _PigeonInternalInstanceManagerApi { }) { { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference was null.', - ); - final List args = (message as List?)!; - final int? arg_identifier = (args[0] as int?); - assert( - arg_identifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_identifier = args[0]! as int; try { - (instanceManager ?? PigeonInstanceManager.instance).remove( - arg_identifier!, - ); + (instanceManager ?? PigeonInstanceManager.instance) + .remove(arg_identifier); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -792,21 +665,15 @@ class _PigeonInternalInstanceManagerApi { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [identifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([identifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Clear the native `PigeonInstanceManager`. @@ -822,46 +689,40 @@ class _PigeonInternalInstanceManagerApi { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } } class _PigeonInternalProxyApiBaseCodec extends _PigeonCodec { - const _PigeonInternalProxyApiBaseCodec(this.instanceManager); - final PigeonInstanceManager instanceManager; - @override - void writeValue(WriteBuffer buffer, Object? value) { - if (value is PigeonInternalProxyApiBaseClass) { - buffer.putUint8(128); - writeValue(buffer, instanceManager.getIdentifier(value)); - } else { - super.writeValue(buffer, value); - } - } - - @override - Object? readValueOfType(int type, ReadBuffer buffer) { - switch (type) { - case 128: - return instanceManager.getInstanceWithWeakReference( - readValue(buffer)! as int, - ); - default: - return super.readValueOfType(type, buffer); - } - } + const _PigeonInternalProxyApiBaseCodec(this.instanceManager); + final PigeonInstanceManager instanceManager; + @override + void writeValue(WriteBuffer buffer, Object? value) { + if (value is PigeonInternalProxyApiBaseClass) { + buffer.putUint8(128); + writeValue(buffer, instanceManager.getIdentifier(value)); + } else { + super.writeValue(buffer, value); + } + } + @override + Object? readValueOfType(int type, ReadBuffer buffer) { + switch (type) { + case 128: + return instanceManager + .getInstanceWithWeakReference(readValue(buffer)! as int); + default: + return super.readValueOfType(type, buffer); + } + } } + /// Generally classifies the overall set of the camera device functionality. /// /// See https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_3. @@ -869,17 +730,13 @@ enum InfoSupportedHardwareLevel { /// This camera device is capable of YUV reprocessing and RAW data capture, in /// addition to FULL-level capabilities. level3, - /// This camera device is backed by an external camera connected to this /// Android device. external, - /// This camera device is capable of supporting advanced imaging applications. full, - /// This camera device is running in backward compatibility mode. legacy, - /// This camera device does not have enough capabilities to qualify as a FULL /// device or better. limited, @@ -891,13 +748,10 @@ enum InfoSupportedHardwareLevel { enum AspectRatio { /// 16:9 standard aspect ratio. ratio16To9, - /// 4:3 standard aspect ratio. ratio4To3, - /// The aspect ratio representing no preference for aspect ratio. ratioDefault, - /// The value is not recognized by the wrapper. unknown, } @@ -908,26 +762,24 @@ enum AspectRatio { enum CameraStateType { /// Represents a state where the camera device is closed. closed, - /// Represents a state where the camera device is currently closing. closing, - /// Represents a state where the camera device is open. open, - /// Represents a state where the camera device is currently opening. opening, - /// Represents a state where the camera is waiting for a signal to attempt to /// open the camera device. pendingOpen, - /// This value is not recognized by this wrapper. unknown, } -/// The types (T) properly wrapped to be used as a LiveData. -enum LiveDataSupportedType { cameraState, zoomState } +/// The types (T) properly wrapped to be used as a `LiveData`. +enum LiveDataSupportedType { + cameraState, + zoomState, +} /// Video quality constraints that will be used by a QualitySelector to choose /// an appropriate video resolution. @@ -938,19 +790,14 @@ enum LiveDataSupportedType { cameraState, zoomState } enum VideoQuality { /// Standard Definition (SD) 480p video quality. SD, - /// High Definition (HD) 720p video quality. HD, - /// Full High Definition (FHD) 1080p video quality. FHD, - /// Ultra High Definition (UHD) 2160p video quality. UHD, - /// The lowest video quality supported by the video frame producer. lowest, - /// The highest video quality supported by the video frame producer. highest, } @@ -962,11 +809,9 @@ enum MeteringMode { /// A flag used in metering mode indicating the AE (Auto Exposure) region is /// enabled. ae, - /// A flag used in metering mode indicating the AF (Auto Focus) region is /// enabled. af, - /// A flag used in metering mode indicating the AWB (Auto White Balance) /// region is enabled. awb, @@ -978,15 +823,12 @@ enum MeteringMode { enum LensFacing { /// A camera on the device facing the same direction as the device's screen. front, - /// A camera on the device facing the opposite direction as the device's /// screen. back, - /// An external camera that has no fixed facing relative to the device's /// screen. external, - /// A camera on the devices that its lens facing is resolved. unknown, } @@ -1000,12 +842,10 @@ enum CameraXFlashMode { /// The flash will be used according to the camera system's determination when /// taking a picture. auto, - /// No flash. /// /// The flash will never be used when taking a picture. off, - /// Always flash. /// /// The flash will always be used when taking a picture. @@ -1020,26 +860,21 @@ enum ResolutionStrategyFallbackRule { /// When the specified bound size is unavailable, CameraX falls back to the /// closest higher resolution size. closestHigher, - /// When the specified bound size is unavailable, CameraX falls back to select /// the closest higher resolution size. closestHigherThenLower, - /// When the specified bound size is unavailable, CameraX falls back to the /// closest lower resolution size. closestLower, - /// When the specified bound size is unavailable, CameraX falls back to select /// the closest lower resolution size. /// /// If CameraX still cannot find any available resolution, it will fallback to /// select other higher resolutions. closestLowerThenHigher, - /// CameraX doesn't select an alternate size when the specified bound size is /// unavailable. none, - /// The value is not recognized by the wrapper. unknown, } @@ -1053,11 +888,9 @@ enum AspectRatioStrategyFallbackRule { /// the closest field of view (FOV) of the camera sensor, from the remaining /// options. auto, - /// CameraX doesn't fall back to select sizes of any other aspect ratio when /// this fallback rule is used. none, - /// The value is not recognized by the wrapper. unknown, } @@ -1069,35 +902,29 @@ enum CameraStateErrorCode { /// An error indicating that the camera device could not be opened due to a /// device policy. cameraDisabled, - /// An error indicating that the camera device was closed due to a fatal /// error. cameraFatalError, - /// An error indicating that the camera device is already in use. cameraInUse, - /// An error indicating that the camera could not be opened because "Do Not /// Disturb" mode is enabled on devices affected by a bug in Android 9 (API /// level 28). doNotDisturbModeEnabled, - /// An error indicating that the limit number of open cameras has been /// reached, and more cameras cannot be opened until other instances are /// closed. maxCamerasInUse, - /// An error indicating that the camera device has encountered a recoverable /// error. otherRecoverableError, - /// An error indicating that configuring the camera has failed. streamConfig, - /// The value is not recognized by this wrapper. unknown, } + class _PigeonCodec extends StandardMessageCodec { const _PigeonCodec(); @override @@ -1105,37 +932,37 @@ class _PigeonCodec extends StandardMessageCodec { if (value is int) { buffer.putUint8(4); buffer.putInt64(value); - } else if (value is InfoSupportedHardwareLevel) { + } else if (value is InfoSupportedHardwareLevel) { buffer.putUint8(129); writeValue(buffer, value.index); - } else if (value is AspectRatio) { + } else if (value is AspectRatio) { buffer.putUint8(130); writeValue(buffer, value.index); - } else if (value is CameraStateType) { + } else if (value is CameraStateType) { buffer.putUint8(131); writeValue(buffer, value.index); - } else if (value is LiveDataSupportedType) { + } else if (value is LiveDataSupportedType) { buffer.putUint8(132); writeValue(buffer, value.index); - } else if (value is VideoQuality) { + } else if (value is VideoQuality) { buffer.putUint8(133); writeValue(buffer, value.index); - } else if (value is MeteringMode) { + } else if (value is MeteringMode) { buffer.putUint8(134); writeValue(buffer, value.index); - } else if (value is LensFacing) { + } else if (value is LensFacing) { buffer.putUint8(135); writeValue(buffer, value.index); - } else if (value is CameraXFlashMode) { + } else if (value is CameraXFlashMode) { buffer.putUint8(136); writeValue(buffer, value.index); - } else if (value is ResolutionStrategyFallbackRule) { + } else if (value is ResolutionStrategyFallbackRule) { buffer.putUint8(137); writeValue(buffer, value.index); - } else if (value is AspectRatioStrategyFallbackRule) { + } else if (value is AspectRatioStrategyFallbackRule) { buffer.putUint8(138); writeValue(buffer, value.index); - } else if (value is CameraStateErrorCode) { + } else if (value is CameraStateErrorCode) { buffer.putUint8(139); writeValue(buffer, value.index); } else { @@ -1172,14 +999,10 @@ class _PigeonCodec extends StandardMessageCodec { return value == null ? null : CameraXFlashMode.values[value]; case 137: final value = readValue(buffer) as int?; - return value == null - ? null - : ResolutionStrategyFallbackRule.values[value]; + return value == null ? null : ResolutionStrategyFallbackRule.values[value]; case 138: final value = readValue(buffer) as int?; - return value == null - ? null - : AspectRatioStrategyFallbackRule.values[value]; + return value == null ? null : AspectRatioStrategyFallbackRule.values[value]; case 139: final value = readValue(buffer) as int?; return value == null ? null : CameraStateErrorCode.values[value]; @@ -1188,7 +1011,6 @@ class _PigeonCodec extends StandardMessageCodec { } } } - /// Immutable class for describing width and height dimensions in pixels. /// /// See https://developer.android.com/reference/android/util/Size.html. @@ -1200,7 +1022,10 @@ class CameraSize extends PigeonInternalProxyApiBaseClass { required int height, }) { if (PigeonOverrides.cameraSize_new != null) { - return PigeonOverrides.cameraSize_new!(width: width, height: height); + return PigeonOverrides.cameraSize_new!( + width: width, + height: height, + ); } return CameraSize.pigeon_new( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -1217,8 +1042,8 @@ class CameraSize extends PigeonInternalProxyApiBaseClass { required this.width, required this.height, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCameraSize; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -1229,22 +1054,16 @@ class CameraSize extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, width, height], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, width, height]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -1273,62 +1092,46 @@ class CameraSize extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - CameraSize Function(int width, int height)? pigeon_newInstance, + CameraSize Function( + int width, + int height, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_newInstance was null, expected non-null int.', - ); - final int? arg_width = (args[1] as int?); - assert( - arg_width != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_newInstance was null, expected non-null int.', - ); - final int? arg_height = (args[2] as int?); - assert( - arg_height != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final int arg_width = args[1]! as int; + final int arg_height = args[2]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_width!, arg_height!) ?? - CameraSize.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - width: arg_width!, - height: arg_height!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_width, arg_height) ?? + CameraSize.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + width: arg_width, + height: arg_height, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -1373,52 +1176,37 @@ class ResolutionInfo extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance was null, expected non-null int.', - ); - final CameraSize? arg_resolution = (args[1] as CameraSize?); - assert( - arg_resolution != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance was null, expected non-null CameraSize.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final CameraSize arg_resolution = args[1]! as CameraSize; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_resolution!) ?? - ResolutionInfo.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - resolution: arg_resolution!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_resolution) ?? + ResolutionInfo.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + resolution: arg_resolution, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -1468,8 +1256,8 @@ class CameraIntegerRange extends PigeonInternalProxyApiBaseClass { required this.lower, required this.upper, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCameraIntegerRange; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -1480,22 +1268,16 @@ class CameraIntegerRange extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, lower, upper], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, lower, upper]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -1512,9 +1294,8 @@ class CameraIntegerRange extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecCameraIntegerRange = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecCameraIntegerRange = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); /// The lower endpoint. final int lower; @@ -1526,62 +1307,46 @@ class CameraIntegerRange extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - CameraIntegerRange Function(int lower, int upper)? pigeon_newInstance, + CameraIntegerRange Function( + int lower, + int upper, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance was null, expected non-null int.', - ); - final int? arg_lower = (args[1] as int?); - assert( - arg_lower != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance was null, expected non-null int.', - ); - final int? arg_upper = (args[2] as int?); - assert( - arg_upper != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final int arg_lower = args[1]! as int; + final int arg_upper = args[2]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_lower!, arg_upper!) ?? - CameraIntegerRange.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - lower: arg_lower!, - upper: arg_upper!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_lower, arg_upper) ?? + CameraIntegerRange.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + lower: arg_lower, + upper: arg_upper, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -1621,46 +1386,35 @@ class VideoRecordEvent extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEvent.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEvent.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoRecordEvent.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoRecordEvent.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - VideoRecordEvent.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + VideoRecordEvent.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -1698,46 +1452,35 @@ class VideoRecordEventStart extends VideoRecordEvent { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventStart.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventStart.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoRecordEventStart.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoRecordEventStart.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - VideoRecordEventStart.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + VideoRecordEventStart.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -1775,46 +1518,35 @@ class VideoRecordEventFinalize extends VideoRecordEvent { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventFinalize.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventFinalize.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoRecordEventFinalize.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoRecordEventFinalize.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - VideoRecordEventFinalize.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + VideoRecordEventFinalize.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -1856,46 +1588,35 @@ class MeteringPoint extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.MeteringPoint.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.MeteringPoint.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.MeteringPoint.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.MeteringPoint.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - MeteringPoint.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + MeteringPoint.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -1917,26 +1638,16 @@ class MeteringPoint extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as double?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as double; } @override @@ -1955,7 +1666,10 @@ class Observer extends PigeonInternalProxyApiBaseClass { factory Observer({ BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - required void Function(Observer pigeon_instance, Object value) onChanged, + required void Function( + Observer pigeon_instance, + Object value, + ) onChanged, }) { if (PigeonOverrides.observer_new != null) { return PigeonOverrides.observer_new!(onChanged: onChanged); @@ -1973,8 +1687,8 @@ class Observer extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required this.onChanged, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecObserver; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -1985,22 +1699,16 @@ class Observer extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -2037,56 +1745,45 @@ class Observer extends PigeonInternalProxyApiBaseClass { /// /// Alternatively, [PigeonInstanceManager.removeWeakReference] can be used to /// release the associated Native object manually. - final void Function(Observer pigeon_instance, Object value) onChanged; + final void Function( + Observer pigeon_instance, + Object value, + ) onChanged; static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - void Function(Observer pigeon_instance, Object value)? onChanged, + void Function( + Observer pigeon_instance, + Object value, + )? onChanged, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Observer.onChanged', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.Observer.onChanged', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Observer.onChanged was null.', - ); - final List args = (message as List?)!; - final Observer? arg_pigeon_instance = (args[0] as Observer?); - assert( - arg_pigeon_instance != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Observer.onChanged was null, expected non-null Observer.', - ); - final Object? arg_value = (args[1] as Object?); - assert( - arg_value != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Observer.onChanged was null, expected non-null Object.', - ); + final List args = message! as List; + final Observer arg_pigeon_instance = args[0]! as Observer; + final Object arg_value = args[1]!; try { - (onChanged ?? arg_pigeon_instance!.onChanged).call( - arg_pigeon_instance!, - arg_value!, - ); + (onChanged ?? arg_pigeon_instance.onChanged) + .call(arg_pigeon_instance, arg_value); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -2141,73 +1838,46 @@ class CameraInfo extends PigeonInternalProxyApiBaseClass { int sensorRotationDegrees, LensFacing lensFacing, ExposureState exposureState, - )? - pigeon_newInstance, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance was null, expected non-null int.', - ); - final int? arg_sensorRotationDegrees = (args[1] as int?); - assert( - arg_sensorRotationDegrees != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance was null, expected non-null int.', - ); - final LensFacing? arg_lensFacing = (args[2] as LensFacing?); - assert( - arg_lensFacing != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance was null, expected non-null LensFacing.', - ); - final ExposureState? arg_exposureState = (args[3] as ExposureState?); - assert( - arg_exposureState != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance was null, expected non-null ExposureState.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final int arg_sensorRotationDegrees = args[1]! as int; + final LensFacing arg_lensFacing = args[2]! as LensFacing; + final ExposureState arg_exposureState = args[3]! as ExposureState; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call( - arg_sensorRotationDegrees!, - arg_lensFacing!, - arg_exposureState!, - ) ?? - CameraInfo.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - sensorRotationDegrees: arg_sensorRotationDegrees!, - lensFacing: arg_lensFacing!, - exposureState: arg_exposureState!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_sensorRotationDegrees, + arg_lensFacing, arg_exposureState) ?? + CameraInfo.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + sensorRotationDegrees: arg_sensorRotationDegrees, + lensFacing: arg_lensFacing, + exposureState: arg_exposureState, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -2226,26 +1896,16 @@ class CameraInfo extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as LiveData?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as LiveData; } /// A LiveData of ZoomState. @@ -2260,26 +1920,16 @@ class CameraInfo extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as LiveData?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as LiveData; } @override @@ -2326,8 +1976,8 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { LensFacing? requireLensFacing, CameraInfo? cameraInfoForFilter, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCameraSelector; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -2338,26 +1988,20 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [ - pigeonVar_instanceIdentifier, - requireLensFacing, - cameraInfoForFilter, - ], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([ + pigeonVar_instanceIdentifier, + requireLensFacing, + cameraInfoForFilter + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -2398,46 +2042,35 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CameraSelector.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + CameraSelector.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -2460,21 +2093,15 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); return pigeonVar_instance; } @@ -2495,21 +2122,15 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); return pigeonVar_instance; } @@ -2527,26 +2148,16 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, cameraInfos], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, cameraInfos]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as List?)!.cast(); - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return (pigeonVar_replyValue! as List).cast(); } @override @@ -2574,9 +2185,8 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecProcessCameraProvider = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecProcessCameraProvider = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -2586,46 +2196,35 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - ProcessCameraProvider.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + ProcessCameraProvider.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -2642,8 +2241,7 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { } final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; const pigeonVar_channelName = 'dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.getInstance'; @@ -2654,22 +2252,13 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { ); final Future pigeonVar_sendFuture = pigeonVar_channel.send(null); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as ProcessCameraProvider?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as ProcessCameraProvider; } /// The `CameraInfo` instances of the available cameras. @@ -2684,26 +2273,16 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as List?)!.cast(); - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return (pigeonVar_replyValue! as List).cast(); } /// Binds the collection of `UseCase` to a `LifecycleOwner`. @@ -2721,26 +2300,16 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, cameraSelector, useCases], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, cameraSelector, useCases]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as Camera?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as Camera; } /// Returns true if the `UseCase` is bound to a lifecycle. @@ -2755,26 +2324,16 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, useCase], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, useCase]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as bool?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as bool; } /// Unbinds all specified use cases from the lifecycle provider. @@ -2789,21 +2348,15 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, useCases], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, useCases]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Unbinds all use cases from the lifecycle provider and removes them from @@ -2819,21 +2372,15 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } @override @@ -2867,46 +2414,35 @@ class UseCase extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.UseCase.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.UseCase.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.UseCase.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.UseCase.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - UseCase.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + UseCase.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -2953,52 +2489,37 @@ class Camera extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Camera.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.Camera.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Camera.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Camera.pigeon_newInstance was null, expected non-null int.', - ); - final CameraControl? arg_cameraControl = (args[1] as CameraControl?); - assert( - arg_cameraControl != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Camera.pigeon_newInstance was null, expected non-null CameraControl.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final CameraControl arg_cameraControl = args[1]! as CameraControl; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_cameraControl!) ?? - Camera.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - cameraControl: arg_cameraControl!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_cameraControl) ?? + Camera.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + cameraControl: arg_cameraControl, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -3017,26 +2538,16 @@ class Camera extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as CameraInfo?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as CameraInfo; } @override @@ -3057,13 +2568,11 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { required void Function( SystemServicesManager pigeon_instance, String errorDescription, - ) - onCameraError, + ) onCameraError, }) { if (PigeonOverrides.systemServicesManager_new != null) { return PigeonOverrides.systemServicesManager_new!( - onCameraError: onCameraError, - ); + onCameraError: onCameraError); } return SystemServicesManager.pigeon_new( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -3078,8 +2587,8 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required this.onCameraError, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecSystemServicesManager; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3090,22 +2599,16 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -3121,9 +2624,8 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecSystemServicesManager = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecSystemServicesManager = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); /// Callback method. /// @@ -3147,8 +2649,7 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { final void Function( SystemServicesManager pigeon_instance, String errorDescription, - ) - onCameraError; + ) onCameraError; static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -3157,52 +2658,34 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { void Function( SystemServicesManager pigeon_instance, String errorDescription, - )? - onCameraError, + )? onCameraError, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError was null.', - ); - final List args = (message as List?)!; - final SystemServicesManager? arg_pigeon_instance = - (args[0] as SystemServicesManager?); - assert( - arg_pigeon_instance != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError was null, expected non-null SystemServicesManager.', - ); - final String? arg_errorDescription = (args[1] as String?); - assert( - arg_errorDescription != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError was null, expected non-null String.', - ); + final List args = message! as List; + final SystemServicesManager arg_pigeon_instance = + args[0]! as SystemServicesManager; + final String arg_errorDescription = args[1]! as String; try { - (onCameraError ?? arg_pigeon_instance!.onCameraError).call( - arg_pigeon_instance!, - arg_errorDescription!, - ); + (onCameraError ?? arg_pigeon_instance.onCameraError) + .call(arg_pigeon_instance, arg_errorDescription); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -3210,8 +2693,7 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { } Future requestCameraPermissions( - bool enableAudio, - ) async { + bool enableAudio) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecSystemServicesManager; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3222,26 +2704,24 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, enableAudio], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, enableAudio]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return (pigeonVar_replyList[0] as CameraPermissionsError?); - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); + return pigeonVar_replyValue as CameraPermissionsError?; } /// Returns a path to be used to create a temp file in the current cache /// directory. - Future getTempFilePath(String prefix, String suffix) async { + Future getTempFilePath( + String prefix, + String suffix, + ) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecSystemServicesManager; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3252,26 +2732,16 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, prefix, suffix], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, prefix, suffix]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as String?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as String; } @override @@ -3306,63 +2776,46 @@ class CameraPermissionsError extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - CameraPermissionsError Function(String errorCode, String description)? - pigeon_newInstance, + CameraPermissionsError Function( + String errorCode, + String description, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance was null, expected non-null int.', - ); - final String? arg_errorCode = (args[1] as String?); - assert( - arg_errorCode != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance was null, expected non-null String.', - ); - final String? arg_description = (args[2] as String?); - assert( - arg_description != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance was null, expected non-null String.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final String arg_errorCode = args[1]! as String; + final String arg_description = args[2]! as String; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_errorCode!, arg_description!) ?? - CameraPermissionsError.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - errorCode: arg_errorCode!, - description: arg_description!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_errorCode, arg_description) ?? + CameraPermissionsError.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + errorCode: arg_errorCode, + description: arg_description, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -3389,13 +2842,11 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { required void Function( DeviceOrientationManager pigeon_instance, String orientation, - ) - onDeviceOrientationChanged, + ) onDeviceOrientationChanged, }) { if (PigeonOverrides.deviceOrientationManager_new != null) { return PigeonOverrides.deviceOrientationManager_new!( - onDeviceOrientationChanged: onDeviceOrientationChanged, - ); + onDeviceOrientationChanged: onDeviceOrientationChanged); } return DeviceOrientationManager.pigeon_new( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -3410,8 +2861,8 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required this.onDeviceOrientationChanged, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecDeviceOrientationManager; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3422,22 +2873,16 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -3453,9 +2898,8 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecDeviceOrientationManager = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecDeviceOrientationManager = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); /// Callback method. /// @@ -3479,58 +2923,44 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { final void Function( DeviceOrientationManager pigeon_instance, String orientation, - ) - onDeviceOrientationChanged; + ) onDeviceOrientationChanged; static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - void Function(DeviceOrientationManager pigeon_instance, String orientation)? - onDeviceOrientationChanged, + void Function( + DeviceOrientationManager pigeon_instance, + String orientation, + )? onDeviceOrientationChanged, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged was null.', - ); - final List args = (message as List?)!; - final DeviceOrientationManager? arg_pigeon_instance = - (args[0] as DeviceOrientationManager?); - assert( - arg_pigeon_instance != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged was null, expected non-null DeviceOrientationManager.', - ); - final String? arg_orientation = (args[1] as String?); - assert( - arg_orientation != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged was null, expected non-null String.', - ); + final List args = message! as List; + final DeviceOrientationManager arg_pigeon_instance = + args[0]! as DeviceOrientationManager; + final String arg_orientation = args[1]! as String; try { (onDeviceOrientationChanged ?? - arg_pigeon_instance!.onDeviceOrientationChanged) - .call(arg_pigeon_instance!, arg_orientation!); + arg_pigeon_instance.onDeviceOrientationChanged) + .call(arg_pigeon_instance, arg_orientation); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -3548,21 +2978,15 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } Future stopListeningForDeviceOrientationChange() async { @@ -3576,21 +3000,15 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } Future getDefaultDisplayRotation() async { @@ -3604,26 +3022,16 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as int?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as int; } Future getUiOrientation() async { @@ -3637,26 +3045,16 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as String?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as String; } @override @@ -3704,8 +3102,8 @@ class Preview extends UseCase { int? targetRotation, CameraIntegerRange? targetFpsRange, }) : super.pigeon_detached() { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecPreview; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3718,24 +3116,19 @@ class Preview extends UseCase { ); final Future pigeonVar_sendFuture = pigeonVar_channel .send([ - pigeonVar_instanceIdentifier, - resolutionSelector, - targetRotation, - targetFpsRange, - ]); + pigeonVar_instanceIdentifier, + resolutionSelector, + targetRotation, + targetFpsRange + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -3760,53 +3153,42 @@ class Preview extends UseCase { BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, Preview Function(ResolutionSelector? resolutionSelector)? - pigeon_newInstance, + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Preview.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.Preview.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Preview.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Preview.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; final ResolutionSelector? arg_resolutionSelector = - (args[1] as ResolutionSelector?); + args[1] as ResolutionSelector?; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_resolutionSelector) ?? - Preview.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - resolutionSelector: arg_resolutionSelector, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_resolutionSelector) ?? + Preview.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + resolutionSelector: arg_resolutionSelector, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -3822,8 +3204,7 @@ class Preview extends UseCase { /// 3. Returns the texture id of the `TextureEntry` that provided the /// `SurfaceProducer`. Future setSurfaceProvider( - SystemServicesManager systemServicesManager, - ) async { + SystemServicesManager systemServicesManager) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecPreview; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3834,26 +3215,16 @@ class Preview extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, systemServicesManager], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, systemServicesManager]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as int?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as int; } /// Releases the `SurfaceProducer` created in `setSurfaceProvider` if one was @@ -3869,21 +3240,15 @@ class Preview extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Gets selected resolution information of the `Preview`. @@ -3898,21 +3263,16 @@ class Preview extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return (pigeonVar_replyList[0] as ResolutionInfo?); - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); + return pigeonVar_replyValue as ResolutionInfo?; } /// Sets the target rotation. @@ -3927,21 +3287,15 @@ class Preview extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, rotation], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, rotation]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Returns whether or not the preview's surface producer handles correctly @@ -3957,26 +3311,16 @@ class Preview extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as bool?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as bool; } @override @@ -4022,8 +3366,8 @@ class VideoCapture extends UseCase { required VideoOutput videoOutput, CameraIntegerRange? targetFpsRange, }) : super.pigeon_detached() { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecVideoCapture; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -4035,21 +3379,15 @@ class VideoCapture extends UseCase { binaryMessenger: pigeonVar_binaryMessenger, ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, videoOutput, targetFpsRange], - ); + [pigeonVar_instanceIdentifier, videoOutput, targetFpsRange]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -4074,46 +3412,35 @@ class VideoCapture extends UseCase { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoCapture.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.VideoCapture.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoCapture.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoCapture.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - VideoCapture.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + VideoCapture.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -4132,26 +3459,16 @@ class VideoCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as VideoOutput?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as VideoOutput; } /// Sets the desired rotation of the output video. @@ -4166,21 +3483,15 @@ class VideoCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, rotation], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, rotation]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } @override @@ -4214,46 +3525,35 @@ class VideoOutput extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoOutput.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.VideoOutput.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoOutput.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoOutput.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - VideoOutput.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + VideoOutput.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -4305,8 +3605,8 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { int? targetVideoEncodingBitRate, QualitySelector? qualitySelector, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecRecorder; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -4317,26 +3617,21 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([ - pigeonVar_instanceIdentifier, - aspectRatio, - targetVideoEncodingBitRate, - qualitySelector, - ]); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([ + pigeonVar_instanceIdentifier, + aspectRatio, + targetVideoEncodingBitRate, + qualitySelector + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -4361,46 +3656,35 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - Recorder.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + Recorder.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -4419,26 +3703,16 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as int?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as int; } /// Gets the target video encoding bitrate of this Recorder. @@ -4453,26 +3727,16 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as int?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as int; } /// The quality selector of this Recorder. @@ -4487,26 +3751,16 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as QualitySelector?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as QualitySelector; } /// Prepares a recording that will be saved to a File. @@ -4521,26 +3775,16 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, path], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, path]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as PendingRecording?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as PendingRecording; } @override @@ -4560,8 +3804,7 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { required void Function( VideoRecordEventListener pigeon_instance, VideoRecordEvent event, - ) - onEvent, + ) onEvent, }) { if (PigeonOverrides.videoRecordEventListener_new != null) { return PigeonOverrides.videoRecordEventListener_new!(onEvent: onEvent); @@ -4579,8 +3822,8 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required this.onEvent, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecVideoRecordEventListener; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -4591,22 +3834,16 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -4622,9 +3859,8 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecVideoRecordEventListener = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecVideoRecordEventListener = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); /// Callback method. /// @@ -4648,8 +3884,7 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { final void Function( VideoRecordEventListener pigeon_instance, VideoRecordEvent event, - ) - onEvent; + ) onEvent; static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -4658,52 +3893,34 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { void Function( VideoRecordEventListener pigeon_instance, VideoRecordEvent event, - )? - onEvent, + )? onEvent, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.onEvent', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.onEvent', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.onEvent was null.', - ); - final List args = (message as List?)!; - final VideoRecordEventListener? arg_pigeon_instance = - (args[0] as VideoRecordEventListener?); - assert( - arg_pigeon_instance != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.onEvent was null, expected non-null VideoRecordEventListener.', - ); - final VideoRecordEvent? arg_event = (args[1] as VideoRecordEvent?); - assert( - arg_event != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.onEvent was null, expected non-null VideoRecordEvent.', - ); + final List args = message! as List; + final VideoRecordEventListener arg_pigeon_instance = + args[0]! as VideoRecordEventListener; + final VideoRecordEvent arg_event = args[1]! as VideoRecordEvent; try { - (onEvent ?? arg_pigeon_instance!.onEvent).call( - arg_pigeon_instance!, - arg_event!, - ); + (onEvent ?? arg_pigeon_instance.onEvent) + .call(arg_pigeon_instance, arg_event); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -4745,46 +3962,35 @@ class PendingRecording extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.PendingRecording.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.PendingRecording.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.PendingRecording.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.PendingRecording.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - PendingRecording.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + PendingRecording.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -4803,26 +4009,16 @@ class PendingRecording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, initialMuted], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, initialMuted]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as PendingRecording?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as PendingRecording; } /// Configures the recording to be a persistent recording. @@ -4845,26 +4041,16 @@ class PendingRecording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as PendingRecording?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as PendingRecording; } /// Starts the recording, making it an active recording. @@ -4879,26 +4065,16 @@ class PendingRecording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, listener], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, listener]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as Recording?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as Recording; } @override @@ -4935,46 +4111,35 @@ class Recording extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Recording.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.Recording.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Recording.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Recording.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - Recording.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + Recording.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -4993,21 +4158,15 @@ class Recording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Pauses the current recording if active. @@ -5022,21 +4181,15 @@ class Recording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Resumes the current recording if paused. @@ -5051,21 +4204,15 @@ class Recording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Stops the recording, as if calling `close`. @@ -5082,21 +4229,15 @@ class Recording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } @override @@ -5143,8 +4284,8 @@ class ImageCapture extends UseCase { int? targetRotation, CameraXFlashMode? flashMode, }) : super.pigeon_detached() { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecImageCapture; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -5155,27 +4296,21 @@ class ImageCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [ - pigeonVar_instanceIdentifier, - resolutionSelector, - targetRotation, - flashMode, - ], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([ + pigeonVar_instanceIdentifier, + resolutionSelector, + targetRotation, + flashMode + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -5200,53 +4335,42 @@ class ImageCapture extends UseCase { BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, ImageCapture Function(ResolutionSelector? resolutionSelector)? - pigeon_newInstance, + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ImageCapture.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ImageCapture.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageCapture.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageCapture.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; final ResolutionSelector? arg_resolutionSelector = - (args[1] as ResolutionSelector?); + args[1] as ResolutionSelector?; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_resolutionSelector) ?? - ImageCapture.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - resolutionSelector: arg_resolutionSelector, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_resolutionSelector) ?? + ImageCapture.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + resolutionSelector: arg_resolutionSelector, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -5265,27 +4389,20 @@ class ImageCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, flashMode], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, flashMode]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Captures a new still image for in memory access. Future takePicture( - SystemServicesManager systemServicesManager, - ) async { + SystemServicesManager systemServicesManager) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecImageCapture; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -5296,26 +4413,16 @@ class ImageCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, systemServicesManager], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, systemServicesManager]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as String?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as String; } /// Sets the desired rotation of the output image. @@ -5330,21 +4437,15 @@ class ImageCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, rotation], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, rotation]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } @override @@ -5389,8 +4490,8 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { required CameraSize boundSize, required ResolutionStrategyFallbackRule fallbackRule, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecResolutionStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -5401,22 +4502,16 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, boundSize, fallbackRule], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, boundSize, fallbackRule]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -5431,9 +4526,8 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecResolutionStrategy = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecResolutionStrategy = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); /// A resolution strategy chooses the highest available resolution. static final ResolutionStrategy _highestAvailableStrategy = @@ -5452,46 +4546,35 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - ResolutionStrategy.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + ResolutionStrategy.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -5515,21 +4598,15 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); return pigeonVar_instance; } @@ -5546,21 +4623,16 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return (pigeonVar_replyList[0] as CameraSize?); - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); + return pigeonVar_replyValue as CameraSize?; } /// The fallback rule for choosing an alternate size when the specified bound @@ -5576,26 +4648,16 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as ResolutionStrategyFallbackRule?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as ResolutionStrategyFallbackRule; } @override @@ -5643,8 +4705,8 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { this.resolutionStrategy, AspectRatioStrategy? aspectRatioStrategy, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecResolutionSelector; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -5655,26 +4717,21 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([ - pigeonVar_instanceIdentifier, - resolutionFilter, - resolutionStrategy, - aspectRatioStrategy, - ]); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([ + pigeonVar_instanceIdentifier, + resolutionFilter, + resolutionStrategy, + aspectRatioStrategy + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -5691,9 +4748,8 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecResolutionSelector = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecResolutionSelector = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); /// The resolution filter to output the final desired sizes list. final ResolutionFilter? resolutionFilter; @@ -5708,60 +4764,46 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { ResolutionSelector Function( ResolutionFilter? resolutionFilter, ResolutionStrategy? resolutionStrategy, - )? - pigeon_newInstance, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; final ResolutionFilter? arg_resolutionFilter = - (args[1] as ResolutionFilter?); + args[1] as ResolutionFilter?; final ResolutionStrategy? arg_resolutionStrategy = - (args[2] as ResolutionStrategy?); + args[2] as ResolutionStrategy?; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call( - arg_resolutionFilter, - arg_resolutionStrategy, - ) ?? - ResolutionSelector.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - resolutionFilter: arg_resolutionFilter, - resolutionStrategy: arg_resolutionStrategy, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call( + arg_resolutionFilter, arg_resolutionStrategy) ?? + ResolutionSelector.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + resolutionFilter: arg_resolutionFilter, + resolutionStrategy: arg_resolutionStrategy, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -5782,26 +4824,16 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as AspectRatioStrategy?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as AspectRatioStrategy; } @override @@ -5851,8 +4883,8 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { required AspectRatio preferredAspectRatio, required AspectRatioStrategyFallbackRule fallbackRule, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecAspectRatioStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -5863,26 +4895,20 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [ - pigeonVar_instanceIdentifier, - preferredAspectRatio, - fallbackRule, - ], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([ + pigeonVar_instanceIdentifier, + preferredAspectRatio, + fallbackRule + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -5897,9 +4923,8 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecAspectRatioStrategy = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecAspectRatioStrategy = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); /// The pre-defined aspect ratio strategy that selects sizes with RATIO_16_9 /// in priority. @@ -5931,46 +4956,35 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - AspectRatioStrategy.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + AspectRatioStrategy.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -5994,21 +5008,15 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); return pigeonVar_instance; } @@ -6030,21 +5038,15 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); return pigeonVar_instance; } @@ -6062,26 +5064,16 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as AspectRatioStrategyFallbackRule?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as AspectRatioStrategyFallbackRule; } /// The specified preferred aspect ratio. @@ -6096,26 +5088,16 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as AspectRatio?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as AspectRatio; } @override @@ -6153,60 +5135,47 @@ class CameraState extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - CameraState Function(CameraStateType type, CameraStateStateError? error)? - pigeon_newInstance, + CameraState Function( + CameraStateType type, + CameraStateStateError? error, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraState.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CameraState.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraState.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraState.pigeon_newInstance was null, expected non-null int.', - ); - final CameraStateType? arg_type = (args[1] as CameraStateType?); - assert( - arg_type != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraState.pigeon_newInstance was null, expected non-null CameraStateType.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final CameraStateType arg_type = args[1]! as CameraStateType; final CameraStateStateError? arg_error = - (args[2] as CameraStateStateError?); + args[2] as CameraStateStateError?; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_type!, arg_error) ?? - CameraState.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - type: arg_type!, - error: arg_error, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_type, arg_error) ?? + CameraState.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + type: arg_type, + error: arg_error, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -6254,68 +5223,45 @@ class ExposureState extends PigeonInternalProxyApiBaseClass { ExposureState Function( CameraIntegerRange exposureCompensationRange, double exposureCompensationStep, - )? - pigeon_newInstance, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ExposureState.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ExposureState.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ExposureState.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ExposureState.pigeon_newInstance was null, expected non-null int.', - ); - final CameraIntegerRange? arg_exposureCompensationRange = - (args[1] as CameraIntegerRange?); - assert( - arg_exposureCompensationRange != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ExposureState.pigeon_newInstance was null, expected non-null CameraIntegerRange.', - ); - final double? arg_exposureCompensationStep = (args[2] as double?); - assert( - arg_exposureCompensationStep != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ExposureState.pigeon_newInstance was null, expected non-null double.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final CameraIntegerRange arg_exposureCompensationRange = + args[1]! as CameraIntegerRange; + final double arg_exposureCompensationStep = args[2]! as double; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call( - arg_exposureCompensationRange!, - arg_exposureCompensationStep!, - ) ?? - ExposureState.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - exposureCompensationRange: - arg_exposureCompensationRange!, - exposureCompensationStep: arg_exposureCompensationStep!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_exposureCompensationRange, + arg_exposureCompensationStep) ?? + ExposureState.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + exposureCompensationRange: arg_exposureCompensationRange, + exposureCompensationStep: arg_exposureCompensationStep, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -6359,66 +5305,46 @@ class ZoomState extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - ZoomState Function(double minZoomRatio, double maxZoomRatio)? - pigeon_newInstance, + ZoomState Function( + double minZoomRatio, + double maxZoomRatio, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ZoomState.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ZoomState.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ZoomState.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ZoomState.pigeon_newInstance was null, expected non-null int.', - ); - final double? arg_minZoomRatio = (args[1] as double?); - assert( - arg_minZoomRatio != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ZoomState.pigeon_newInstance was null, expected non-null double.', - ); - final double? arg_maxZoomRatio = (args[2] as double?); - assert( - arg_maxZoomRatio != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ZoomState.pigeon_newInstance was null, expected non-null double.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final double arg_minZoomRatio = args[1]! as double; + final double arg_maxZoomRatio = args[2]! as double; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call( - arg_minZoomRatio!, - arg_maxZoomRatio!, - ) ?? - ZoomState.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - minZoomRatio: arg_minZoomRatio!, - maxZoomRatio: arg_maxZoomRatio!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_minZoomRatio, arg_maxZoomRatio) ?? + ZoomState.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + minZoomRatio: arg_minZoomRatio, + maxZoomRatio: arg_maxZoomRatio, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -6476,8 +5402,8 @@ class ImageAnalysis extends UseCase { CameraIntegerRange? targetFpsRange, int? outputImageFormat, }) : super.pigeon_detached() { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecImageAnalysis; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -6488,27 +5414,22 @@ class ImageAnalysis extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([ - pigeonVar_instanceIdentifier, - resolutionSelector, - targetRotation, - targetFpsRange, - outputImageFormat, - ]); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([ + pigeonVar_instanceIdentifier, + resolutionSelector, + targetRotation, + targetFpsRange, + outputImageFormat + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -6533,53 +5454,42 @@ class ImageAnalysis extends UseCase { BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, ImageAnalysis Function(ResolutionSelector? resolutionSelector)? - pigeon_newInstance, + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; final ResolutionSelector? arg_resolutionSelector = - (args[1] as ResolutionSelector?); + args[1] as ResolutionSelector?; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_resolutionSelector) ?? - ImageAnalysis.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - resolutionSelector: arg_resolutionSelector, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_resolutionSelector) ?? + ImageAnalysis.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + resolutionSelector: arg_resolutionSelector, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -6598,21 +5508,15 @@ class ImageAnalysis extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, analyzer], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, analyzer]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Removes a previously set analyzer. @@ -6627,21 +5531,15 @@ class ImageAnalysis extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Sets the target rotation. @@ -6656,21 +5554,15 @@ class ImageAnalysis extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, rotation], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, rotation]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } @override @@ -6690,7 +5582,10 @@ class Analyzer extends PigeonInternalProxyApiBaseClass { factory Analyzer({ BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - required void Function(Analyzer pigeon_instance, ImageProxy image) analyze, + required void Function( + Analyzer pigeon_instance, + ImageProxy image, + ) analyze, }) { if (PigeonOverrides.analyzer_new != null) { return PigeonOverrides.analyzer_new!(analyze: analyze); @@ -6708,8 +5603,8 @@ class Analyzer extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required this.analyze, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecAnalyzer; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -6720,22 +5615,16 @@ class Analyzer extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -6772,56 +5661,45 @@ class Analyzer extends PigeonInternalProxyApiBaseClass { /// /// Alternatively, [PigeonInstanceManager.removeWeakReference] can be used to /// release the associated Native object manually. - final void Function(Analyzer pigeon_instance, ImageProxy image) analyze; + final void Function( + Analyzer pigeon_instance, + ImageProxy image, + ) analyze; static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - void Function(Analyzer pigeon_instance, ImageProxy image)? analyze, + void Function( + Analyzer pigeon_instance, + ImageProxy image, + )? analyze, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Analyzer.analyze', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.Analyzer.analyze', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Analyzer.analyze was null.', - ); - final List args = (message as List?)!; - final Analyzer? arg_pigeon_instance = (args[0] as Analyzer?); - assert( - arg_pigeon_instance != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Analyzer.analyze was null, expected non-null Analyzer.', - ); - final ImageProxy? arg_image = (args[1] as ImageProxy?); - assert( - arg_image != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Analyzer.analyze was null, expected non-null ImageProxy.', - ); + final List args = message! as List; + final Analyzer arg_pigeon_instance = args[0]! as Analyzer; + final ImageProxy arg_image = args[1]! as ImageProxy; try { - (analyze ?? arg_pigeon_instance!.analyze).call( - arg_pigeon_instance!, - arg_image!, - ); + (analyze ?? arg_pigeon_instance.analyze) + .call(arg_pigeon_instance, arg_image); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -6861,57 +5739,42 @@ class CameraStateStateError extends PigeonInternalProxyApiBaseClass { BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, CameraStateStateError Function(CameraStateErrorCode code)? - pigeon_newInstance, + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance was null, expected non-null int.', - ); - final CameraStateErrorCode? arg_code = - (args[1] as CameraStateErrorCode?); - assert( - arg_code != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance was null, expected non-null CameraStateErrorCode.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final CameraStateErrorCode arg_code = + args[1]! as CameraStateErrorCode; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_code!) ?? - CameraStateStateError.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - code: arg_code!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_code) ?? + CameraStateStateError.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + code: arg_code, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -6961,53 +5824,38 @@ class LiveData extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.LiveData.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.LiveData.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.LiveData.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.LiveData.pigeon_newInstance was null, expected non-null int.', - ); - final LiveDataSupportedType? arg_type = - (args[1] as LiveDataSupportedType?); - assert( - arg_type != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.LiveData.pigeon_newInstance was null, expected non-null LiveDataSupportedType.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final LiveDataSupportedType arg_type = + args[1]! as LiveDataSupportedType; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_type!) ?? - LiveData.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - type: arg_type!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_type) ?? + LiveData.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + type: arg_type, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -7027,21 +5875,15 @@ class LiveData extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, observer], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, observer]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Removes all observers that are tied to the given `LifecycleOwner`. @@ -7056,21 +5898,15 @@ class LiveData extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Returns the current value. @@ -7085,21 +5921,16 @@ class LiveData extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return pigeonVar_replyList[0]; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); + return pigeonVar_replyValue; } @override @@ -7145,72 +5976,49 @@ class ImageProxy extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - ImageProxy Function(int format, int width, int height)? pigeon_newInstance, + ImageProxy Function( + int format, + int width, + int height, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ImageProxy.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ImageProxy.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageProxy.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageProxy.pigeon_newInstance was null, expected non-null int.', - ); - final int? arg_format = (args[1] as int?); - assert( - arg_format != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageProxy.pigeon_newInstance was null, expected non-null int.', - ); - final int? arg_width = (args[2] as int?); - assert( - arg_width != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageProxy.pigeon_newInstance was null, expected non-null int.', - ); - final int? arg_height = (args[3] as int?); - assert( - arg_height != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageProxy.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final int arg_format = args[1]! as int; + final int arg_width = args[2]! as int; + final int arg_height = args[3]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call( - arg_format!, - arg_width!, - arg_height!, - ) ?? - ImageProxy.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - format: arg_format!, - width: arg_width!, - height: arg_height!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_format, arg_width, arg_height) ?? + ImageProxy.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + format: arg_format, + width: arg_width, + height: arg_height, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -7229,26 +6037,16 @@ class ImageProxy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as List?)!.cast(); - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return (pigeonVar_replyValue! as List).cast(); } /// Closes the underlying `android.media.Image`. @@ -7263,21 +6061,15 @@ class ImageProxy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } @override @@ -7315,46 +6107,35 @@ class ImageProxyUtils extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - ImageProxyUtils.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + ImageProxyUtils.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -7378,8 +6159,7 @@ class ImageProxyUtils extends PigeonInternalProxyApiBaseClass { } final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; const pigeonVar_channelName = 'dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.getNv21Buffer'; @@ -7388,26 +6168,16 @@ class ImageProxyUtils extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [imageWidth, imageHeight, planes], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([imageWidth, imageHeight, planes]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as Uint8List?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as Uint8List; } @override @@ -7450,73 +6220,50 @@ class PlaneProxy extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - PlaneProxy Function(Uint8List buffer, int pixelStride, int rowStride)? - pigeon_newInstance, + PlaneProxy Function( + Uint8List buffer, + int pixelStride, + int rowStride, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.PlaneProxy.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.PlaneProxy.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.PlaneProxy.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.PlaneProxy.pigeon_newInstance was null, expected non-null int.', - ); - final Uint8List? arg_buffer = (args[1] as Uint8List?); - assert( - arg_buffer != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.PlaneProxy.pigeon_newInstance was null, expected non-null Uint8List.', - ); - final int? arg_pixelStride = (args[2] as int?); - assert( - arg_pixelStride != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.PlaneProxy.pigeon_newInstance was null, expected non-null int.', - ); - final int? arg_rowStride = (args[3] as int?); - assert( - arg_rowStride != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.PlaneProxy.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final Uint8List arg_buffer = args[1]! as Uint8List; + final int arg_pixelStride = args[2]! as int; + final int arg_rowStride = args[3]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call( - arg_buffer!, - arg_pixelStride!, - arg_rowStride!, - ) ?? - PlaneProxy.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - buffer: arg_buffer!, - pixelStride: arg_pixelStride!, - rowStride: arg_rowStride!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call( + arg_buffer, arg_pixelStride, arg_rowStride) ?? + PlaneProxy.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + buffer: arg_buffer, + pixelStride: arg_pixelStride, + rowStride: arg_rowStride, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -7569,8 +6316,8 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { required VideoQuality quality, FallbackStrategy? fallbackStrategy, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecQualitySelector; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7582,21 +6329,15 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { binaryMessenger: pigeonVar_binaryMessenger, ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, quality, fallbackStrategy], - ); + [pigeonVar_instanceIdentifier, quality, fallbackStrategy]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -7629,8 +6370,8 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { required List qualities, FallbackStrategy? fallbackStrategy, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecQualitySelector; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7642,21 +6383,15 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { binaryMessenger: pigeonVar_binaryMessenger, ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, qualities, fallbackStrategy], - ); + [pigeonVar_instanceIdentifier, qualities, fallbackStrategy]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -7681,46 +6416,35 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.QualitySelector.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.QualitySelector.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.QualitySelector.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.QualitySelector.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - QualitySelector.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + QualitySelector.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -7742,8 +6466,7 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { } final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; const pigeonVar_channelName = 'dev.flutter.pigeon.camera_android_camerax.QualitySelector.getResolution'; @@ -7752,21 +6475,16 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [cameraInfo, quality], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([cameraInfo, quality]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return (pigeonVar_replyList[0] as CameraSize?); - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); + return pigeonVar_replyValue as CameraSize?; } @override @@ -7793,8 +6511,7 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.fallbackStrategy_higherQualityOrLowerThan != null) { return PigeonOverrides.fallbackStrategy_higherQualityOrLowerThan!( - quality: quality, - ); + quality: quality); } return FallbackStrategy.pigeon_higherQualityOrLowerThan( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -7811,8 +6528,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required VideoQuality quality, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFallbackStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7823,22 +6540,16 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, quality], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, quality]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -7851,8 +6562,7 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.fallbackStrategy_higherQualityThan != null) { return PigeonOverrides.fallbackStrategy_higherQualityThan!( - quality: quality, - ); + quality: quality); } return FallbackStrategy.pigeon_higherQualityThan( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -7869,8 +6579,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required VideoQuality quality, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFallbackStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7881,22 +6591,16 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, quality], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, quality]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -7909,8 +6613,7 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.fallbackStrategy_lowerQualityOrHigherThan != null) { return PigeonOverrides.fallbackStrategy_lowerQualityOrHigherThan!( - quality: quality, - ); + quality: quality); } return FallbackStrategy.pigeon_lowerQualityOrHigherThan( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -7927,8 +6630,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required VideoQuality quality, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFallbackStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7939,22 +6642,16 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, quality], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, quality]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -7967,8 +6664,7 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.fallbackStrategy_lowerQualityThan != null) { return PigeonOverrides.fallbackStrategy_lowerQualityThan!( - quality: quality, - ); + quality: quality); } return FallbackStrategy.pigeon_lowerQualityThan( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -7985,8 +6681,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required VideoQuality quality, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFallbackStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7997,22 +6693,16 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, quality], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, quality]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -8037,46 +6727,35 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - FallbackStrategy.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + FallbackStrategy.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -8119,46 +6798,35 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraControl.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CameraControl.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraControl.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraControl.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CameraControl.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + CameraControl.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -8177,21 +6845,15 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, torch], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, torch]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Sets current zoom by ratio. @@ -8206,28 +6868,21 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, ratio], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, ratio]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Starts a focus and metering action configured by the /// `FocusMeteringAction`. Future startFocusAndMetering( - FocusMeteringAction action, - ) async { + FocusMeteringAction action) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCameraControl; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -8238,21 +6893,16 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, action], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, action]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return (pigeonVar_replyList[0] as FocusMeteringResult?); - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); + return pigeonVar_replyValue as FocusMeteringResult?; } /// Cancels current FocusMeteringAction and clears AF/AE/AWB regions. @@ -8267,21 +6917,15 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Set the exposure compensation value for the camera. @@ -8296,21 +6940,16 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, index], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, index]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return (pigeonVar_replyList[0] as int?); - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); + return pigeonVar_replyValue as int?; } @override @@ -8351,8 +6990,8 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required MeteringPoint point, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFocusMeteringActionBuilder; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -8363,22 +7002,16 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, point], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier, point]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -8411,8 +7044,8 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { required MeteringPoint point, required MeteringMode mode, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFocusMeteringActionBuilder; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -8423,22 +7056,16 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, point, mode], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, point, mode]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -8453,9 +7080,8 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecFocusMeteringActionBuilder = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecFocusMeteringActionBuilder = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -8465,46 +7091,35 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - FocusMeteringActionBuilder.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + FocusMeteringActionBuilder.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -8523,25 +7138,22 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, point], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, point]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Adds another MeteringPoint with specified meteringMode. - Future addPointWithMode(MeteringPoint point, MeteringMode mode) async { + Future addPointWithMode( + MeteringPoint point, + MeteringMode mode, + ) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFocusMeteringActionBuilder; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -8552,21 +7164,15 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, point, mode], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, point, mode]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Disables the auto-cancel. @@ -8581,21 +7187,15 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } /// Builds the `FocusMeteringAction` instance. @@ -8610,26 +7210,16 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as FocusMeteringAction?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as FocusMeteringAction; } @override @@ -8680,83 +7270,54 @@ class FocusMeteringAction extends PigeonInternalProxyApiBaseClass { List meteringPointsAf, List meteringPointsAwb, bool isAutoCancelEnabled, - )? - pigeon_newInstance, + )? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance was null, expected non-null int.', - ); - final List? arg_meteringPointsAe = - (args[1] as List?)?.cast(); - assert( - arg_meteringPointsAe != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance was null, expected non-null List.', - ); - final List? arg_meteringPointsAf = - (args[2] as List?)?.cast(); - assert( - arg_meteringPointsAf != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance was null, expected non-null List.', - ); - final List? arg_meteringPointsAwb = - (args[3] as List?)?.cast(); - assert( - arg_meteringPointsAwb != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance was null, expected non-null List.', - ); - final bool? arg_isAutoCancelEnabled = (args[4] as bool?); - assert( - arg_isAutoCancelEnabled != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance was null, expected non-null bool.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final List arg_meteringPointsAe = + (args[1]! as List).cast(); + final List arg_meteringPointsAf = + (args[2]! as List).cast(); + final List arg_meteringPointsAwb = + (args[3]! as List).cast(); + final bool arg_isAutoCancelEnabled = args[4]! as bool; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call( - arg_meteringPointsAe!, - arg_meteringPointsAf!, - arg_meteringPointsAwb!, - arg_isAutoCancelEnabled!, - ) ?? - FocusMeteringAction.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - meteringPointsAe: arg_meteringPointsAe!, - meteringPointsAf: arg_meteringPointsAf!, - meteringPointsAwb: arg_meteringPointsAwb!, - isAutoCancelEnabled: arg_isAutoCancelEnabled!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call( + arg_meteringPointsAe, + arg_meteringPointsAf, + arg_meteringPointsAwb, + arg_isAutoCancelEnabled) ?? + FocusMeteringAction.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + meteringPointsAe: arg_meteringPointsAe, + meteringPointsAf: arg_meteringPointsAf, + meteringPointsAwb: arg_meteringPointsAwb, + isAutoCancelEnabled: arg_isAutoCancelEnabled, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -8802,52 +7363,37 @@ class FocusMeteringResult extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance was null, expected non-null int.', - ); - final bool? arg_isFocusSuccessful = (args[1] as bool?); - assert( - arg_isFocusSuccessful != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance was null, expected non-null bool.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; + final bool arg_isFocusSuccessful = args[1]! as bool; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_isFocusSuccessful!) ?? - FocusMeteringResult.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - isFocusSuccessful: arg_isFocusSuccessful!, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call(arg_isFocusSuccessful) ?? + FocusMeteringResult.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + isFocusSuccessful: arg_isFocusSuccessful, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -8921,46 +7467,35 @@ class CaptureRequest extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CaptureRequest.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CaptureRequest.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CaptureRequest.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CaptureRequest.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CaptureRequest.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + CaptureRequest.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -8984,21 +7519,15 @@ class CaptureRequest extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); return pigeonVar_instance; } @@ -9020,21 +7549,15 @@ class CaptureRequest extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); return pigeonVar_instance; } @@ -9071,46 +7594,35 @@ class CaptureRequestKey extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CaptureRequestKey.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CaptureRequestKey.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CaptureRequestKey.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CaptureRequestKey.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CaptureRequestKey.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + CaptureRequestKey.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -9151,8 +7663,8 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required Map options, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCaptureRequestOptions; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -9163,22 +7675,16 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, options], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, options]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -9193,9 +7699,8 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecCaptureRequestOptions = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecCaptureRequestOptions = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -9205,46 +7710,35 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CaptureRequestOptions.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + CaptureRequestOptions.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -9264,21 +7758,16 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, key], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, key]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return pigeonVar_replyList[0]; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); + return pigeonVar_replyValue; } @override @@ -9303,8 +7792,7 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.camera2CameraControl_from != null) { return PigeonOverrides.camera2CameraControl_from!( - cameraControl: cameraControl, - ); + cameraControl: cameraControl); } return Camera2CameraControl.pigeon_from( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -9320,8 +7808,8 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required CameraControl cameraControl, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCamera2CameraControl; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -9332,22 +7820,16 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, cameraControl], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, cameraControl]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -9362,9 +7844,8 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecCamera2CameraControl = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecCamera2CameraControl = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -9374,46 +7855,35 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - Camera2CameraControl.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + Camera2CameraControl.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -9433,21 +7903,15 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, bundle], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, bundle]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); } @override @@ -9471,8 +7935,7 @@ class ResolutionFilter extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.resolutionFilter_createWithOnePreferredSize != null) { return PigeonOverrides.resolutionFilter_createWithOnePreferredSize!( - preferredSize: preferredSize, - ); + preferredSize: preferredSize); } return ResolutionFilter.pigeon_createWithOnePreferredSize( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -9487,8 +7950,8 @@ class ResolutionFilter extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required CameraSize preferredSize, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecResolutionFilter; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -9499,22 +7962,16 @@ class ResolutionFilter extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, preferredSize], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, preferredSize]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -9539,46 +7996,35 @@ class ResolutionFilter extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - ResolutionFilter.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + ResolutionFilter.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -9617,46 +8063,35 @@ class CameraCharacteristicsKey extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraCharacteristicsKey.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CameraCharacteristicsKey.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraCharacteristicsKey.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraCharacteristicsKey.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CameraCharacteristicsKey.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + CameraCharacteristicsKey.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -9710,7 +8145,7 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { /// /// This key is available on all devices. static final CameraCharacteristicsKey - _controlAvailableVideoStabilizationModes = + _controlAvailableVideoStabilizationModes = pigeonVar_controlAvailableVideoStabilizationModes(); /// Generally classifies the overall set of the camera device functionality. @@ -9751,46 +8186,35 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CameraCharacteristics.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + CameraCharacteristics.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -9814,21 +8238,15 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); return pigeonVar_instance; } @@ -9850,27 +8268,21 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); return pigeonVar_instance; } static CameraCharacteristicsKey - pigeonVar_controlAvailableVideoStabilizationModes() { + pigeonVar_controlAvailableVideoStabilizationModes() { final CameraCharacteristicsKey pigeonVar_instance = CameraCharacteristicsKey.pigeon_detached(); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = @@ -9887,21 +8299,15 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([pigeonVar_instanceIdentifier]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); return pigeonVar_instance; } @@ -9942,8 +8348,8 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required CameraInfo cameraInfo, }) { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCamera2CameraInfo; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -9954,22 +8360,16 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, cameraInfo], - ); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([pigeonVar_instanceIdentifier, cameraInfo]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -9984,9 +8384,8 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecCamera2CameraInfo = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecCamera2CameraInfo = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -9996,46 +8395,35 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - Camera2CameraInfo.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + Camera2CameraInfo.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -10054,26 +8442,16 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as String?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as String; } /// Gets a camera characteristic value. @@ -10088,21 +8466,16 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, key], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, key]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return pigeonVar_replyList[0]; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); + return pigeonVar_replyValue; } @override @@ -10129,9 +8502,8 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecMeteringPointFactory = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager, - ); + _pigeonVar_codecMeteringPointFactory = + _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -10141,46 +8513,35 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - MeteringPointFactory.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + MeteringPointFactory.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -10188,7 +8549,10 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { } /// Creates a MeteringPoint by x, y. - Future createPoint(double x, double y) async { + Future createPoint( + double x, + double y, + ) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecMeteringPointFactory; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -10199,26 +8563,16 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, x, y], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, x, y]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as MeteringPoint?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as MeteringPoint; } /// Creates a MeteringPoint by x, y, size. @@ -10237,26 +8591,16 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [this, x, y, size], - ); + final Future pigeonVar_sendFuture = + pigeonVar_channel.send([this, x, y, size]); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else if (pigeonVar_replyList[0] == null) { - throw PlatformException( - code: 'null-error', - message: 'Host platform returned null value for non-null return value.', - ); - } else { - return (pigeonVar_replyList[0] as MeteringPoint?)!; - } + + final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: false, + ); + return pigeonVar_replyValue! as MeteringPoint; } @override @@ -10311,8 +8655,8 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { required double width, required double height, }) : super.pigeon_detached() { - final int pigeonVar_instanceIdentifier = pigeon_instanceManager - .addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = + pigeon_instanceManager.addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecDisplayOrientedMeteringPointFactory; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -10324,21 +8668,15 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { binaryMessenger: pigeonVar_binaryMessenger, ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, cameraInfo, width, height], - ); + [pigeonVar_instanceIdentifier, cameraInfo, width, height]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; - if (pigeonVar_replyList == null) { - throw _createConnectionError(pigeonVar_channelName); - } else if (pigeonVar_replyList.length > 1) { - throw PlatformException( - code: pigeonVar_replyList[0]! as String, - message: pigeonVar_replyList[1] as String?, - details: pigeonVar_replyList[2], - ); - } else { - return; - } + + _extractReplyValueOrThrow( + pigeonVar_replyList, + pigeonVar_channelName, + isNullValid: true, + ); }(); } @@ -10353,7 +8691,7 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { }) : super.pigeon_detached(); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecDisplayOrientedMeteringPointFactory = + _pigeonVar_codecDisplayOrientedMeteringPointFactory = _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); static void pigeon_setUpMessageHandlers({ @@ -10364,46 +8702,35 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance, - ); + pigeon_instanceManager ?? PigeonInstanceManager.instance); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger, - ); + 'dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { pigeonVar_channel.setMessageHandler((Object? message) async { - assert( - message != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_newInstance was null.', - ); - final List args = (message as List?)!; - final int? arg_pigeon_instanceIdentifier = (args[0] as int?); - assert( - arg_pigeon_instanceIdentifier != null, - 'Argument for dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_newInstance was null, expected non-null int.', - ); + final List args = message! as List; + final int arg_pigeon_instanceIdentifier = args[0]! as int; try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - DisplayOrientedMeteringPointFactory.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier!, - ); + pigeon_newInstance?.call() ?? + DisplayOrientedMeteringPointFactory.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString()), - ); + error: PlatformException(code: 'error', message: e.toString())); } }); } @@ -10418,3 +8745,4 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { ); } } + diff --git a/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart b/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart index 0b872bc9ae00..db29dd6f2dbc 100644 --- a/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart +++ b/packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart @@ -2911,6 +2911,12 @@ void main() { // Ignore setting target rotation for this test; tested separately. camera.captureOrientationLocked = true; + // Tell plugin to create detached Observer when camera info updated. + GenericsPigeonOverrides.observerNew = + ({required void Function(Observer, T) onChanged}) { + return Observer.detached(onChanged: onChanged); + }; + PigeonOverrides.camera2CameraInfo_from = ({required dynamic cameraInfo}) => mockCamera2CameraInfo; PigeonOverrides.videoRecordEventListener_new = diff --git a/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift b/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift index 3579e3d9bfc0..33fb5e3cbb80 100644 --- a/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift +++ b/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift @@ -378,26 +378,74 @@ final class CameraSettingsTests: XCTestCase { XCTAssertEqual(capturedOutputURL?.path, customPath) } - func test_startVideoRecording_errorsOnInvalidPath() { - let invalidPath = "/invalid/path.mp4" + func test_startVideoRecording_errorsOnDirectoryPath() { + let directoryPath = "/" let configuration = CameraTestUtils.createTestCameraConfiguration() + let camera = CameraTestUtils.createTestCamera(configuration) - // Simulate AssetWriter error (e.g. invalid URL) - configuration.assetWriterFactory = { _, _ in - throw NSError(domain: "test", code: 1, userInfo: [NSLocalizedDescriptionKey: "Invalid path"]) - } + let expectation = self.expectation(description: "startVideoRecording finished") + camera.startVideoRecording( + videoOutputPath: directoryPath, + completion: { result in + switch result { + case .success: + XCTFail("Expected failure") + case .failure(let error): + if let pigeonError = error as? PigeonError { + XCTAssertEqual(pigeonError.code, "IOError") + } else { + XCTFail("Expected PigeonError") + } + } + expectation.fulfill() + }, messengerForStreaming: nil) + + waitForExpectations(timeout: 1) + } + func test_startVideoRecording_errorsOnNonExistentParentPath() { + let nonExistentPath = "/non/existent/parent/file.mp4" + let configuration = CameraTestUtils.createTestCameraConfiguration() + let camera = CameraTestUtils.createTestCamera(configuration) + + let expectation = self.expectation(description: "startVideoRecording finished") + camera.startVideoRecording( + videoOutputPath: nonExistentPath, + completion: { result in + switch result { + case .success: + XCTFail("Expected failure") + case .failure(let error): + if let pigeonError = error as? PigeonError { + XCTAssertEqual(pigeonError.code, "IOError") + } else { + XCTFail("Expected PigeonError") + } + } + expectation.fulfill() + }, messengerForStreaming: nil) + + waitForExpectations(timeout: 1) + } + + func test_startVideoRecording_errorsOnInvalidExtension() { + let invalidExtensionPath = "file.txt" + let configuration = CameraTestUtils.createTestCameraConfiguration() let camera = CameraTestUtils.createTestCamera(configuration) let expectation = self.expectation(description: "startVideoRecording finished") camera.startVideoRecording( - videoOutputPath: invalidPath, + videoOutputPath: invalidExtensionPath, completion: { result in switch result { case .success: XCTFail("Expected failure") case .failure(let error): - XCTAssertEqual(error.localizedDescription, "Invalid path") + if let pigeonError = error as? PigeonError { + XCTAssertEqual(pigeonError.code, "IOError") + } else { + XCTFail("Expected PigeonError") + } } expectation.fulfill() }, messengerForStreaming: nil) diff --git a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift index 8b2c6046d4ad..55e4430838c0 100644 --- a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift +++ b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift @@ -553,28 +553,6 @@ final class DefaultCamera: NSObject, Camera { } } self.videoRecordingPath = videoRecordingPath - } - - private func validateOutputPath(_ path: String) throws { - var isDir: ObjCBool = false - if FileManager.default.fileExists(atPath: path, isDirectory: &isDir), isDir.boolValue { - throw PigeonError(code: "IOError", message: "Path is a directory: \(path)", details: nil) - } - let parentPath = (path as NSString).deletingLastPathComponent - if !FileManager.default.fileExists(atPath: parentPath) { - throw PigeonError( - code: "IOError", message: "Parent directory does not exist: \(parentPath)", details: nil) - } - - let lowerPath = path.lowercased() - let validExtensions = [".mp4", ".mov", ".m4v", ".3gp"] - if !validExtensions.contains(where: { lowerPath.hasSuffix($0) }) { - throw PigeonError( - code: "IOError", - message: "Invalid video extension. Supported: \(validExtensions.joined(separator: ", "))", - details: nil) - } - } guard setupWriter(forPath: videoRecordingPath) else { completion( @@ -611,6 +589,27 @@ final class DefaultCamera: NSObject, Camera { completion(.success(())) } + private func validateOutputPath(_ path: String) throws { + var isDir: ObjCBool = false + if FileManager.default.fileExists(atPath: path, isDirectory: &isDir), isDir.boolValue { + throw PigeonError(code: "IOError", message: "Path is a directory: \(path)", details: nil) + } + let parentPath = (path as NSString).deletingLastPathComponent + if !FileManager.default.fileExists(atPath: parentPath) { + throw PigeonError( + code: "IOError", message: "Parent directory does not exist: \(parentPath)", details: nil) + } + + let lowerPath = path.lowercased() + let validExtensions = [".mp4", ".mov", ".m4v", ".3gp"] + if !validExtensions.contains(where: { lowerPath.hasSuffix($0) }) { + throw PigeonError( + code: "IOError", + message: "Invalid video extension. Supported: \(validExtensions.joined(separator: ", "))", + details: nil) + } + } + private func setupWriter(forPath path: String) -> Bool { setUpCaptureSessionForAudioIfNeeded() diff --git a/packages/camera/camera_web/example/integration_test/camera_test.dart b/packages/camera/camera_web/example/integration_test/camera_test.dart index 29af6ceddbd9..5accc826c422 100644 --- a/packages/camera/camera_web/example/integration_test/camera_test.dart +++ b/packages/camera/camera_web/example/integration_test/camera_test.dart @@ -1198,6 +1198,57 @@ void main() { expect(videoParts, equals(capturedVideoParts)); }); + testWidgets('stops a video recording and ' + 'returns the captured file ' + 'with the specified videoOutputPath', (WidgetTester tester) async { + final camera = Camera(textureId: 1, cameraService: cameraService) + ..mediaRecorder = mediaRecorder + ..isVideoTypeSupported = isVideoTypeSupported; + + await camera.initialize(); + await camera.play(); + + late EventListener videoDataAvailableListener; + late EventListener videoRecordingStoppedListener; + + mockMediaRecorder.addEventListener = + (String type, EventListener? callback, [JSAny? options]) { + if (type == 'dataavailable') { + videoDataAvailableListener = callback!; + } else if (type == 'stop') { + videoRecordingStoppedListener = callback!; + } + }.toJS; + + Blob? finalVideo; + camera.blobBuilder = (List blobs, String videoType) { + finalVideo = Blob(blobs.toJS, BlobPropertyBag(type: videoType)); + return finalVideo!; + }; + + const customPath = 'custom_video_path.mp4'; + await camera.startVideoRecording(videoOutputPath: customPath); + + mockMediaRecorder.stop = () {}.toJS; + + final Future videoFileFuture = camera.stopVideoRecording(); + + final capturedVideoPartOne = Blob([].toJS); + + videoDataAvailableListener.callAsFunction( + null, + createJSInteropWrapper(FakeBlobEvent(capturedVideoPartOne)) + as BlobEvent, + ); + + videoRecordingStoppedListener.callAsFunction(null, Event('stop')); + + final XFile videoFile = await videoFileFuture; + + expect(videoFile, isNotNull); + expect(videoFile.name, equals(customPath)); + }); + testWidgets('throws a CameraWebException ' 'with videoRecordingNotStarted error ' 'if the video recording was not started', ( diff --git a/packages/camera/camera_web/example/integration_test/camera_web_test.dart b/packages/camera/camera_web/example/integration_test/camera_web_test.dart index 5542bac34ec0..5f9e1c6e58ce 100644 --- a/packages/camera/camera_web/example/integration_test/camera_web_test.dart +++ b/packages/camera/camera_web/example/integration_test/camera_web_test.dart @@ -1336,6 +1336,27 @@ void main() { throwsA(isA()), ); }); + + testWidgets('passes videoOutputPath to camera.startVideoRecording', ( + WidgetTester tester, + ) async { + // Save the camera in the camera plugin. + (CameraPlatform.instance as CameraPlugin).cameras[cameraId] = camera; + + const customPath = 'custom_web_path.mp4'; + + when( + camera.startVideoRecording(videoOutputPath: customPath), + ).thenAnswer((_) async {}); + + await CameraPlatform.instance.startVideoCapturing( + VideoCaptureOptions(cameraId, videoOutputPath: customPath), + ); + + verify( + camera.startVideoRecording(videoOutputPath: customPath), + ).called(1); + }); }); group('stopVideoRecording', () { diff --git a/packages/camera/camera_web/example/integration_test/helpers/mocks.mocks.dart b/packages/camera/camera_web/example/integration_test/helpers/mocks.mocks.dart new file mode 100644 index 000000000000..321507d77174 --- /dev/null +++ b/packages/camera/camera_web/example/integration_test/helpers/mocks.mocks.dart @@ -0,0 +1,718 @@ +// Mocks generated by Mockito 5.4.5 from annotations +// in camera_web_integration_tests/integration_test/helpers/mocks.dart. +// Do not manually edit this file. + +// ignore_for_file: no_leading_underscores_for_library_prefixes +import 'dart:async' as _i5; +import 'dart:js_interop' as _i13; +import 'dart:ui' as _i4; + +import 'package:camera_platform_interface/camera_platform_interface.dart' + as _i7; +import 'package:camera_web/src/camera.dart' as _i10; +import 'package:camera_web/src/camera_service.dart' as _i8; +import 'package:camera_web/src/shims/dart_js_util.dart' as _i2; +import 'package:camera_web/src/types/types.dart' as _i3; +import 'package:flutter/services.dart' as _i11; +import 'package:mockito/mockito.dart' as _i1; +import 'package:mockito/src/dummies.dart' as _i12; +import 'package:web/web.dart' as _i6; + +import 'mocks.dart' as _i9; + +// ignore_for_file: type=lint +// ignore_for_file: avoid_redundant_argument_values +// ignore_for_file: avoid_setters_without_getters +// ignore_for_file: comment_references +// ignore_for_file: deprecated_member_use +// ignore_for_file: deprecated_member_use_from_same_package +// ignore_for_file: implementation_imports +// ignore_for_file: invalid_use_of_visible_for_testing_member +// ignore_for_file: must_be_immutable +// ignore_for_file: prefer_const_constructors +// ignore_for_file: unnecessary_parenthesis +// ignore_for_file: camel_case_types +// ignore_for_file: subtype_of_sealed_class + +class _FakeJsUtil_0 extends _i1.SmartFake implements _i2.JsUtil { + _FakeJsUtil_0(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); +} + +class _FakeZoomLevelCapability_1 extends _i1.SmartFake + implements _i3.ZoomLevelCapability { + _FakeZoomLevelCapability_1(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); +} + +class _FakeSize_2 extends _i1.SmartFake implements _i4.Size { + _FakeSize_2(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); +} + +class _FakeCameraOptions_3 extends _i1.SmartFake implements _i3.CameraOptions { + _FakeCameraOptions_3(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); +} + +class _FakeStreamController_4 extends _i1.SmartFake + implements _i5.StreamController { + _FakeStreamController_4(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); +} + +class _FakeEventStreamProvider_5 extends _i1.SmartFake + implements _i6.EventStreamProvider { + _FakeEventStreamProvider_5(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); +} + +class _FakeXFile_6 extends _i1.SmartFake implements _i7.XFile { + _FakeXFile_6(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); +} + +class _FakeAudioConstraints_7 extends _i1.SmartFake + implements _i3.AudioConstraints { + _FakeAudioConstraints_7(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); +} + +class _FakeVideoConstraints_8 extends _i1.SmartFake + implements _i3.VideoConstraints { + _FakeVideoConstraints_8(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); +} + +/// A class which mocks [CameraService]. +/// +/// See the documentation for Mockito's code generation for more information. +class MockCameraService extends _i1.Mock implements _i8.CameraService { + @override + _i6.Window get window => + (super.noSuchMethod( + Invocation.getter(#window), + returnValue: _i9.windowShim(), + returnValueForMissingStub: _i9.windowShim(), + ) + as _i6.Window); + + @override + set window(_i6.Window? _window) => super.noSuchMethod( + Invocation.setter(#window, _window), + returnValueForMissingStub: null, + ); + + @override + _i2.JsUtil get jsUtil => + (super.noSuchMethod( + Invocation.getter(#jsUtil), + returnValue: _FakeJsUtil_0(this, Invocation.getter(#jsUtil)), + returnValueForMissingStub: _FakeJsUtil_0( + this, + Invocation.getter(#jsUtil), + ), + ) + as _i2.JsUtil); + + @override + set jsUtil(_i2.JsUtil? _jsUtil) => super.noSuchMethod( + Invocation.setter(#jsUtil, _jsUtil), + returnValueForMissingStub: null, + ); + + @override + _i5.Future<_i6.MediaStream> getMediaStreamForOptions( + _i3.CameraOptions? options, { + int? cameraId = 0, + }) => + (super.noSuchMethod( + Invocation.method( + #getMediaStreamForOptions, + [options], + {#cameraId: cameraId}, + ), + returnValue: _i9.getMediaStreamForOptionsShim( + options, + cameraId: cameraId, + ), + returnValueForMissingStub: _i9.getMediaStreamForOptionsShim( + options, + cameraId: cameraId, + ), + ) + as _i5.Future<_i6.MediaStream>); + + @override + _i3.ZoomLevelCapability getZoomLevelCapabilityForCamera( + _i10.Camera? camera, + ) => + (super.noSuchMethod( + Invocation.method(#getZoomLevelCapabilityForCamera, [camera]), + returnValue: _FakeZoomLevelCapability_1( + this, + Invocation.method(#getZoomLevelCapabilityForCamera, [camera]), + ), + returnValueForMissingStub: _FakeZoomLevelCapability_1( + this, + Invocation.method(#getZoomLevelCapabilityForCamera, [camera]), + ), + ) + as _i3.ZoomLevelCapability); + + @override + String? getFacingModeForVideoTrack(_i6.MediaStreamTrack? videoTrack) => + (super.noSuchMethod( + Invocation.method(#getFacingModeForVideoTrack, [videoTrack]), + returnValueForMissingStub: null, + ) + as String?); + + @override + _i7.CameraLensDirection mapFacingModeToLensDirection(String? facingMode) => + (super.noSuchMethod( + Invocation.method(#mapFacingModeToLensDirection, [facingMode]), + returnValue: _i7.CameraLensDirection.front, + returnValueForMissingStub: _i7.CameraLensDirection.front, + ) + as _i7.CameraLensDirection); + + @override + _i3.CameraType mapFacingModeToCameraType(String? facingMode) => + (super.noSuchMethod( + Invocation.method(#mapFacingModeToCameraType, [facingMode]), + returnValue: _i3.CameraType.environment, + returnValueForMissingStub: _i3.CameraType.environment, + ) + as _i3.CameraType); + + @override + _i4.Size mapResolutionPresetToSize(_i7.ResolutionPreset? resolutionPreset) => + (super.noSuchMethod( + Invocation.method(#mapResolutionPresetToSize, [resolutionPreset]), + returnValue: _FakeSize_2( + this, + Invocation.method(#mapResolutionPresetToSize, [resolutionPreset]), + ), + returnValueForMissingStub: _FakeSize_2( + this, + Invocation.method(#mapResolutionPresetToSize, [resolutionPreset]), + ), + ) + as _i4.Size); + + @override + int mapResolutionPresetToVideoBitrate( + _i7.ResolutionPreset? resolutionPreset, + ) => + (super.noSuchMethod( + Invocation.method(#mapResolutionPresetToVideoBitrate, [ + resolutionPreset, + ]), + returnValue: 0, + returnValueForMissingStub: 0, + ) + as int); + + @override + int mapResolutionPresetToAudioBitrate( + _i7.ResolutionPreset? resolutionPreset, + ) => + (super.noSuchMethod( + Invocation.method(#mapResolutionPresetToAudioBitrate, [ + resolutionPreset, + ]), + returnValue: 0, + returnValueForMissingStub: 0, + ) + as int); + + @override + String mapDeviceOrientationToOrientationType( + _i11.DeviceOrientation? deviceOrientation, + ) => + (super.noSuchMethod( + Invocation.method(#mapDeviceOrientationToOrientationType, [ + deviceOrientation, + ]), + returnValue: _i12.dummyValue( + this, + Invocation.method(#mapDeviceOrientationToOrientationType, [ + deviceOrientation, + ]), + ), + returnValueForMissingStub: _i12.dummyValue( + this, + Invocation.method(#mapDeviceOrientationToOrientationType, [ + deviceOrientation, + ]), + ), + ) + as String); + + @override + _i11.DeviceOrientation mapOrientationTypeToDeviceOrientation( + String? orientationType, + ) => + (super.noSuchMethod( + Invocation.method(#mapOrientationTypeToDeviceOrientation, [ + orientationType, + ]), + returnValue: _i11.DeviceOrientation.portraitUp, + returnValueForMissingStub: _i11.DeviceOrientation.portraitUp, + ) + as _i11.DeviceOrientation); +} + +/// A class which mocks [JsUtil]. +/// +/// See the documentation for Mockito's code generation for more information. +class MockJsUtil extends _i1.Mock implements _i2.JsUtil { + @override + bool hasProperty(_i13.JSObject? o, _i13.JSAny? name) => + (super.noSuchMethod( + Invocation.method(#hasProperty, [o, name]), + returnValue: false, + returnValueForMissingStub: false, + ) + as bool); + + @override + _i13.JSAny? getProperty(_i13.JSObject? o, _i13.JSAny? name) => + (super.noSuchMethod( + Invocation.method(#getProperty, [o, name]), + returnValueForMissingStub: null, + ) + as _i13.JSAny?); +} + +/// A class which mocks [Camera]. +/// +/// See the documentation for Mockito's code generation for more information. +class MockCamera extends _i1.Mock implements _i10.Camera { + @override + int get textureId => + (super.noSuchMethod( + Invocation.getter(#textureId), + returnValue: 0, + returnValueForMissingStub: 0, + ) + as int); + + @override + _i3.CameraOptions get options => + (super.noSuchMethod( + Invocation.getter(#options), + returnValue: _FakeCameraOptions_3( + this, + Invocation.getter(#options), + ), + returnValueForMissingStub: _FakeCameraOptions_3( + this, + Invocation.getter(#options), + ), + ) + as _i3.CameraOptions); + + @override + ({int? audioBitrate, int? videoBitrate}) get recorderOptions => + (super.noSuchMethod( + Invocation.getter(#recorderOptions), + returnValue: (audioBitrate: null, videoBitrate: null), + returnValueForMissingStub: (audioBitrate: null, videoBitrate: null), + ) + as ({int? audioBitrate, int? videoBitrate})); + + @override + _i6.HTMLVideoElement get videoElement => + (super.noSuchMethod( + Invocation.getter(#videoElement), + returnValue: _i9.videoElementShim(), + returnValueForMissingStub: _i9.videoElementShim(), + ) + as _i6.HTMLVideoElement); + + @override + set videoElement(_i6.HTMLVideoElement? _videoElement) => super.noSuchMethod( + Invocation.setter(#videoElement, _videoElement), + returnValueForMissingStub: null, + ); + + @override + _i6.HTMLDivElement get divElement => + (super.noSuchMethod( + Invocation.getter(#divElement), + returnValue: _i9.divElementShim(), + returnValueForMissingStub: _i9.divElementShim(), + ) + as _i6.HTMLDivElement); + + @override + set divElement(_i6.HTMLDivElement? _divElement) => super.noSuchMethod( + Invocation.setter(#divElement, _divElement), + returnValueForMissingStub: null, + ); + + @override + set stream(_i6.MediaStream? _stream) => super.noSuchMethod( + Invocation.setter(#stream, _stream), + returnValueForMissingStub: null, + ); + + @override + _i5.StreamController<_i6.MediaStreamTrack> get onEndedController => + (super.noSuchMethod( + Invocation.getter(#onEndedController), + returnValue: _FakeStreamController_4<_i6.MediaStreamTrack>( + this, + Invocation.getter(#onEndedController), + ), + returnValueForMissingStub: + _FakeStreamController_4<_i6.MediaStreamTrack>( + this, + Invocation.getter(#onEndedController), + ), + ) + as _i5.StreamController<_i6.MediaStreamTrack>); + + @override + _i6.EventStreamProvider<_i6.Event> get mediaRecorderOnErrorProvider => + (super.noSuchMethod( + Invocation.getter(#mediaRecorderOnErrorProvider), + returnValue: _FakeEventStreamProvider_5<_i6.Event>( + this, + Invocation.getter(#mediaRecorderOnErrorProvider), + ), + returnValueForMissingStub: _FakeEventStreamProvider_5<_i6.Event>( + this, + Invocation.getter(#mediaRecorderOnErrorProvider), + ), + ) + as _i6.EventStreamProvider<_i6.Event>); + + @override + set mediaRecorderOnErrorProvider( + _i6.EventStreamProvider<_i6.Event>? _mediaRecorderOnErrorProvider, + ) => super.noSuchMethod( + Invocation.setter( + #mediaRecorderOnErrorProvider, + _mediaRecorderOnErrorProvider, + ), + returnValueForMissingStub: null, + ); + + @override + _i5.StreamController<_i6.ErrorEvent> get videoRecordingErrorController => + (super.noSuchMethod( + Invocation.getter(#videoRecordingErrorController), + returnValue: _FakeStreamController_4<_i6.ErrorEvent>( + this, + Invocation.getter(#videoRecordingErrorController), + ), + returnValueForMissingStub: _FakeStreamController_4<_i6.ErrorEvent>( + this, + Invocation.getter(#videoRecordingErrorController), + ), + ) + as _i5.StreamController<_i6.ErrorEvent>); + + @override + set flashMode(_i7.FlashMode? _flashMode) => super.noSuchMethod( + Invocation.setter(#flashMode, _flashMode), + returnValueForMissingStub: null, + ); + + @override + _i6.Window get window => + (super.noSuchMethod( + Invocation.getter(#window), + returnValue: _i9.windowShim(), + returnValueForMissingStub: _i9.windowShim(), + ) + as _i6.Window); + + @override + set window(_i6.Window? _window) => super.noSuchMethod( + Invocation.setter(#window, _window), + returnValueForMissingStub: null, + ); + + @override + set mediaRecorder(_i6.MediaRecorder? _mediaRecorder) => super.noSuchMethod( + Invocation.setter(#mediaRecorder, _mediaRecorder), + returnValueForMissingStub: null, + ); + + @override + bool Function(String) get isVideoTypeSupported => + (super.noSuchMethod( + Invocation.getter(#isVideoTypeSupported), + returnValue: (String __p0) => false, + returnValueForMissingStub: (String __p0) => false, + ) + as bool Function(String)); + + @override + set isVideoTypeSupported(bool Function(String)? _isVideoTypeSupported) => + super.noSuchMethod( + Invocation.setter(#isVideoTypeSupported, _isVideoTypeSupported), + returnValueForMissingStub: null, + ); + + @override + _i6.Blob Function(List<_i6.Blob>, String) get blobBuilder => + (super.noSuchMethod( + Invocation.getter(#blobBuilder), + returnValue: _i9.blobBuilderShim(), + returnValueForMissingStub: _i9.blobBuilderShim(), + ) + as _i6.Blob Function(List<_i6.Blob>, String)); + + @override + set blobBuilder(_i6.Blob Function(List<_i6.Blob>, String)? _blobBuilder) => + super.noSuchMethod( + Invocation.setter(#blobBuilder, _blobBuilder), + returnValueForMissingStub: null, + ); + + @override + _i5.StreamController<_i7.VideoRecordedEvent> get videoRecorderController => + (super.noSuchMethod( + Invocation.getter(#videoRecorderController), + returnValue: _FakeStreamController_4<_i7.VideoRecordedEvent>( + this, + Invocation.getter(#videoRecorderController), + ), + returnValueForMissingStub: + _FakeStreamController_4<_i7.VideoRecordedEvent>( + this, + Invocation.getter(#videoRecorderController), + ), + ) + as _i5.StreamController<_i7.VideoRecordedEvent>); + + @override + _i5.Stream<_i6.MediaStreamTrack> get onEnded => + (super.noSuchMethod( + Invocation.getter(#onEnded), + returnValue: _i5.Stream<_i6.MediaStreamTrack>.empty(), + returnValueForMissingStub: _i5.Stream<_i6.MediaStreamTrack>.empty(), + ) + as _i5.Stream<_i6.MediaStreamTrack>); + + @override + _i5.Stream<_i6.ErrorEvent> get onVideoRecordingError => + (super.noSuchMethod( + Invocation.getter(#onVideoRecordingError), + returnValue: _i5.Stream<_i6.ErrorEvent>.empty(), + returnValueForMissingStub: _i5.Stream<_i6.ErrorEvent>.empty(), + ) + as _i5.Stream<_i6.ErrorEvent>); + + @override + _i5.Stream<_i7.VideoRecordedEvent> get onVideoRecordedEvent => + (super.noSuchMethod( + Invocation.getter(#onVideoRecordedEvent), + returnValue: _i5.Stream<_i7.VideoRecordedEvent>.empty(), + returnValueForMissingStub: + _i5.Stream<_i7.VideoRecordedEvent>.empty(), + ) + as _i5.Stream<_i7.VideoRecordedEvent>); + + @override + _i5.Future initialize() => + (super.noSuchMethod( + Invocation.method(#initialize, []), + returnValue: _i5.Future.value(), + returnValueForMissingStub: _i5.Future.value(), + ) + as _i5.Future); + + @override + _i5.Future play() => + (super.noSuchMethod( + Invocation.method(#play, []), + returnValue: _i5.Future.value(), + returnValueForMissingStub: _i5.Future.value(), + ) + as _i5.Future); + + @override + void pause() => super.noSuchMethod( + Invocation.method(#pause, []), + returnValueForMissingStub: null, + ); + + @override + void stop() => super.noSuchMethod( + Invocation.method(#stop, []), + returnValueForMissingStub: null, + ); + + @override + _i5.Future<_i7.XFile> takePicture() => + (super.noSuchMethod( + Invocation.method(#takePicture, []), + returnValue: _i5.Future<_i7.XFile>.value( + _FakeXFile_6(this, Invocation.method(#takePicture, [])), + ), + returnValueForMissingStub: _i5.Future<_i7.XFile>.value( + _FakeXFile_6(this, Invocation.method(#takePicture, [])), + ), + ) + as _i5.Future<_i7.XFile>); + + @override + _i4.Size getVideoSize() => + (super.noSuchMethod( + Invocation.method(#getVideoSize, []), + returnValue: _FakeSize_2( + this, + Invocation.method(#getVideoSize, []), + ), + returnValueForMissingStub: _FakeSize_2( + this, + Invocation.method(#getVideoSize, []), + ), + ) + as _i4.Size); + + @override + void setFlashMode(_i7.FlashMode? mode) => super.noSuchMethod( + Invocation.method(#setFlashMode, [mode]), + returnValueForMissingStub: null, + ); + + @override + double getMaxZoomLevel() => + (super.noSuchMethod( + Invocation.method(#getMaxZoomLevel, []), + returnValue: 0.0, + returnValueForMissingStub: 0.0, + ) + as double); + + @override + double getMinZoomLevel() => + (super.noSuchMethod( + Invocation.method(#getMinZoomLevel, []), + returnValue: 0.0, + returnValueForMissingStub: 0.0, + ) + as double); + + @override + void setZoomLevel(double? zoom) => super.noSuchMethod( + Invocation.method(#setZoomLevel, [zoom]), + returnValueForMissingStub: null, + ); + + @override + String getViewType() => + (super.noSuchMethod( + Invocation.method(#getViewType, []), + returnValue: _i12.dummyValue( + this, + Invocation.method(#getViewType, []), + ), + returnValueForMissingStub: _i12.dummyValue( + this, + Invocation.method(#getViewType, []), + ), + ) + as String); + + @override + _i5.Future startVideoRecording() => + (super.noSuchMethod( + Invocation.method(#startVideoRecording, []), + returnValue: _i5.Future.value(), + returnValueForMissingStub: _i5.Future.value(), + ) + as _i5.Future); + + @override + _i5.Future pauseVideoRecording() => + (super.noSuchMethod( + Invocation.method(#pauseVideoRecording, []), + returnValue: _i5.Future.value(), + returnValueForMissingStub: _i5.Future.value(), + ) + as _i5.Future); + + @override + _i5.Future resumeVideoRecording() => + (super.noSuchMethod( + Invocation.method(#resumeVideoRecording, []), + returnValue: _i5.Future.value(), + returnValueForMissingStub: _i5.Future.value(), + ) + as _i5.Future); + + @override + _i5.Future<_i7.XFile> stopVideoRecording() => + (super.noSuchMethod( + Invocation.method(#stopVideoRecording, []), + returnValue: _i5.Future<_i7.XFile>.value( + _FakeXFile_6(this, Invocation.method(#stopVideoRecording, [])), + ), + returnValueForMissingStub: _i5.Future<_i7.XFile>.value( + _FakeXFile_6(this, Invocation.method(#stopVideoRecording, [])), + ), + ) + as _i5.Future<_i7.XFile>); + + @override + _i5.Future dispose() => + (super.noSuchMethod( + Invocation.method(#dispose, []), + returnValue: _i5.Future.value(), + returnValueForMissingStub: _i5.Future.value(), + ) + as _i5.Future); +} + +/// A class which mocks [CameraOptions]. +/// +/// See the documentation for Mockito's code generation for more information. +// ignore: must_be_immutable +class MockCameraOptions extends _i1.Mock implements _i3.CameraOptions { + @override + _i3.AudioConstraints get audio => + (super.noSuchMethod( + Invocation.getter(#audio), + returnValue: _FakeAudioConstraints_7( + this, + Invocation.getter(#audio), + ), + returnValueForMissingStub: _FakeAudioConstraints_7( + this, + Invocation.getter(#audio), + ), + ) + as _i3.AudioConstraints); + + @override + _i3.VideoConstraints get video => + (super.noSuchMethod( + Invocation.getter(#video), + returnValue: _FakeVideoConstraints_8( + this, + Invocation.getter(#video), + ), + returnValueForMissingStub: _FakeVideoConstraints_8( + this, + Invocation.getter(#video), + ), + ) + as _i3.VideoConstraints); + + @override + _i6.MediaStreamConstraints toMediaStreamConstraints() => + (super.noSuchMethod( + Invocation.method(#toMediaStreamConstraints, []), + returnValue: _i9.toMediaStreamConstraintsShim(), + returnValueForMissingStub: _i9.toMediaStreamConstraintsShim(), + ) + as _i6.MediaStreamConstraints); +} From 445cfa1f54a6451e3930151b7b3f414faa6530c6 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Sat, 23 May 2026 16:10:51 -0300 Subject: [PATCH 03/30] style: fix linting and formatting issues across camera packages --- .../io/flutter/plugins/camera/Camera.java | 25 +- .../io/flutter/plugins/camera/CameraTest.java | 4 +- .../plugins/camerax/CameraXLibrary.g.kt | 4803 ++++++++++------- .../lib/src/camerax_library.g.dart | 3000 +++++----- .../ios/RunnerTests/CameraSettingsTests.swift | 5 +- .../Sources/camera_avfoundation/Camera.swift | 13 + .../integration_test/camera_web_test.dart | 2 +- 7 files changed, 4703 insertions(+), 3149 deletions(-) diff --git a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java index b34ac0c71549..26fef241ff33 100644 --- a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java +++ b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java @@ -1278,6 +1278,19 @@ void prepareRecording(@Nullable String videoOutputPath) { throw new Messages.FlutterError("cannotCreateFile", e.getMessage(), null); } } + + try { + prepareMediaRecorder(captureFile.getAbsolutePath()); + } catch (IOException e) { + recordingVideo = false; + captureFile = null; + throw new Messages.FlutterError("videoRecordingFailed", e.getMessage(), null); + } + // Re-create autofocus feature so it's using video focus mode now. + cameraFeatures.setAutoFocus( + cameraFeatureFactory.createAutoFocusFeature(cameraProperties, true)); + // Update camera features with the desired fps range + setFpsCameraFeatureForRecording(cameraProperties); } private void validateOutputPath(String path) { @@ -1300,18 +1313,6 @@ private void validateOutputPath(String path) { throw new Messages.FlutterError( "IOError", "Invalid video extension. Supported: .mp4, .mov, .3gp, .m4v, .webm", null); } - try { - prepareMediaRecorder(captureFile.getAbsolutePath()); - } catch (IOException e) { - recordingVideo = false; - captureFile = null; - throw new Messages.FlutterError("videoRecordingFailed", e.getMessage(), null); - } - // Re-create autofocus feature so it's using video focus mode now. - cameraFeatures.setAutoFocus( - cameraFeatureFactory.createAutoFocusFeature(cameraProperties, true)); - // Update camera features with the desired fps range - setFpsCameraFeatureForRecording(cameraProperties); } private void setStreamHandler(EventChannel imageStreamChannel) { diff --git a/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java b/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java index 762dd6b2ab41..7a76d2759fab 100644 --- a/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java +++ b/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java @@ -714,7 +714,8 @@ public void resumeVideoRecording_shouldCallPauseWhenRecording() { @Test public void startVideoRecording_usesCustomPath() throws IOException, CameraAccessException { - final String customPath = "/custom/path.mp4"; + final String customPath = + new File(System.getProperty("java.io.tmpdir"), "custom_video.mp4").getAbsolutePath(); final MediaRecorder mockMediaRecorder = mock(MediaRecorder.class); try (MockedConstruction mockedBuilder = @@ -735,6 +736,7 @@ public void startVideoRecording_usesCustomPath() throws IOException, CameraAcces } } + @SuppressWarnings("try") @Test public void startVideoRecording_errorsOnInvalidPath() throws IOException, CameraAccessException { final String invalidPath = "/non/existent/path.mp4"; diff --git a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/CameraXLibrary.g.kt b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/CameraXLibrary.g.kt index a21dd1e7945c..2c11e70678a8 100644 --- a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/CameraXLibrary.g.kt +++ b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/CameraXLibrary.g.kt @@ -10,16 +10,17 @@ package io.flutter.plugins.camerax import android.util.Log import io.flutter.plugin.common.BasicMessageChannel import io.flutter.plugin.common.BinaryMessenger -import io.flutter.plugin.common.EventChannel import io.flutter.plugin.common.MessageCodec -import io.flutter.plugin.common.StandardMethodCodec import io.flutter.plugin.common.StandardMessageCodec import java.io.ByteArrayOutputStream import java.nio.ByteBuffer + private object CameraXLibraryPigeonUtils { fun createConnectionError(channelName: String): CameraXError { - return CameraXError("channel-error", "Unable to establish connection on channel: '$channelName'.", "") } + return CameraXError( + "channel-error", "Unable to establish connection on channel: '$channelName'.", "") + } fun wrapResult(result: Any?): List { return listOf(result) @@ -27,50 +28,48 @@ private object CameraXLibraryPigeonUtils { fun wrapError(exception: Throwable): List { return if (exception is CameraXError) { - listOf( - exception.code, - exception.message, - exception.details - ) + listOf(exception.code, exception.message, exception.details) } else { listOf( - exception.javaClass.simpleName, - exception.toString(), - "Cause: " + exception.cause + ", Stacktrace: " + Log.getStackTraceString(exception) - ) + exception.javaClass.simpleName, + exception.toString(), + "Cause: " + exception.cause + ", Stacktrace: " + Log.getStackTraceString(exception)) } } } /** * Error class for passing custom error details to Flutter via a thrown PlatformException. + * * @property code The error code. * @property message The error message. * @property details The error details. Must be a datatype supported by the api codec. */ -class CameraXError ( - val code: String, - override val message: String? = null, - val details: Any? = null +class CameraXError( + val code: String, + override val message: String? = null, + val details: Any? = null ) : Throwable() /** * Maintains instances used to communicate with the corresponding objects in Dart. * - * Objects stored in this container are represented by an object in Dart that is also stored in - * an InstanceManager with the same identifier. + * Objects stored in this container are represented by an object in Dart that is also stored in an + * InstanceManager with the same identifier. * * When an instance is added with an identifier, either can be used to retrieve the other. * - * Added instances are added as a weak reference and a strong reference. When the strong - * reference is removed with [remove] and the weak reference is deallocated, the - * `finalizationListener.onFinalize` is called with the instance's identifier. However, if the strong - * reference is removed and then the identifier is retrieved with the intention to pass the identifier - * to Dart (e.g. calling [getIdentifierForStrongReference]), the strong reference to the instance - * is recreated. The strong reference will then need to be removed manually again. + * Added instances are added as a weak reference and a strong reference. When the strong reference + * is removed with [remove] and the weak reference is deallocated, the + * `finalizationListener.onFinalize` is called with the instance's identifier. However, if the + * strong reference is removed and then the identifier is retrieved with the intention to pass the + * identifier to Dart (e.g. calling [getIdentifierForStrongReference]), the strong reference to the + * instance is recreated. The strong reference will then need to be removed manually again. */ @Suppress("UNCHECKED_CAST", "MemberVisibilityCanBePrivate") -class CameraXLibraryPigeonInstanceManager(private val finalizationListener: PigeonFinalizationListener) { - /** Interface for listening when a weak reference of an instance is removed from the manager. */ +class CameraXLibraryPigeonInstanceManager( + private val finalizationListener: PigeonFinalizationListener +) { + /** Interface for listening when a weak reference of an instance is removed from the manager. */ interface PigeonFinalizationListener { fun onFinalize(identifier: Long) } @@ -139,19 +138,20 @@ class CameraXLibraryPigeonInstanceManager(private val finalizationListener: Pige private const val tag = "PigeonInstanceManager" /** - * Instantiate a new manager with a listener for garbage collected weak - * references. + * Instantiate a new manager with a listener for garbage collected weak references. * * When the manager is no longer needed, [stopFinalizationListener] must be called. */ - fun create(finalizationListener: PigeonFinalizationListener): CameraXLibraryPigeonInstanceManager { + fun create( + finalizationListener: PigeonFinalizationListener + ): CameraXLibraryPigeonInstanceManager { return CameraXLibraryPigeonInstanceManager(finalizationListener) } } /** - * Removes `identifier` and return its associated strongly referenced instance, if present, - * from the manager. + * Removes `identifier` and return its associated strongly referenced instance, if present, from + * the manager. */ fun remove(identifier: Long): T? { logWarningIfFinalizationListenerHasStopped() @@ -161,15 +161,13 @@ class CameraXLibraryPigeonInstanceManager(private val finalizationListener: Pige /** * Retrieves the identifier paired with an instance, if present, otherwise `null`. * - * * If the manager contains a strong reference to `instance`, it will return the identifier * associated with `instance`. If the manager contains only a weak reference to `instance`, a new * strong reference to `instance` will be added and will need to be removed again with [remove]. * - * * If this method returns a nonnull identifier, this method also expects the Dart - * `CameraXLibraryPigeonInstanceManager` to have, or recreate, a weak reference to the Dart instance the - * identifier is associated with. + * `CameraXLibraryPigeonInstanceManager` to have, or recreate, a weak reference to the Dart + * instance the identifier is associated with. */ fun getIdentifierForStrongReference(instance: Any?): Long? { logWarningIfFinalizationListenerHasStopped() @@ -186,9 +184,9 @@ class CameraXLibraryPigeonInstanceManager(private val finalizationListener: Pige /** * Adds a new instance that was instantiated from Dart. * - * The same instance can be added multiple times, but each identifier must be unique. This - * allows two objects that are equivalent (e.g. the `equals` method returns true and their - * hashcodes are equal) to both be added. + * The same instance can be added multiple times, but each identifier must be unique. This allows + * two objects that are equivalent (e.g. the `equals` method returns true and their hashcodes are + * equal) to both be added. * * [identifier] must be >= 0 and unique. */ @@ -200,13 +198,15 @@ class CameraXLibraryPigeonInstanceManager(private val finalizationListener: Pige /** * Adds a new unique instance that was instantiated from the host platform. * - * If the manager contains [instance], this returns the corresponding identifier. If the - * manager does not contain [instance], this adds the instance and returns a unique - * identifier for that [instance]. + * If the manager contains [instance], this returns the corresponding identifier. If the manager + * does not contain [instance], this adds the instance and returns a unique identifier for that + * [instance]. */ fun addHostCreatedInstance(instance: Any): Long { logWarningIfFinalizationListenerHasStopped() - require(!containsInstance(instance)) { "Instance of ${instance.javaClass} has already been added." } + require(!containsInstance(instance)) { + "Instance of ${instance.javaClass} has already been added." + } val identifier = nextIdentifier++ addInstance(instance, identifier) return identifier @@ -290,39 +290,43 @@ class CameraXLibraryPigeonInstanceManager(private val finalizationListener: Pige private fun logWarningIfFinalizationListenerHasStopped() { if (hasFinalizationListenerStopped()) { Log.w( - tag, - "The manager was used after calls to the PigeonFinalizationListener has been stopped." - ) + tag, + "The manager was used after calls to the PigeonFinalizationListener has been stopped.") } } } - /** Generated API for managing the Dart and native `InstanceManager`s. */ private class CameraXLibraryPigeonInstanceManagerApi(val binaryMessenger: BinaryMessenger) { companion object { /** The codec used by CameraXLibraryPigeonInstanceManagerApi. */ - val codec: MessageCodec by lazy { - CameraXLibraryPigeonCodec() - } + val codec: MessageCodec by lazy { CameraXLibraryPigeonCodec() } /** * Sets up an instance of `CameraXLibraryPigeonInstanceManagerApi` to handle messages from the * `binaryMessenger`. */ - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, instanceManager: CameraXLibraryPigeonInstanceManager?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + instanceManager: CameraXLibraryPigeonInstanceManager? + ) { run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference", + codec) if (instanceManager != null) { channel.setMessageHandler { message, reply -> val args = message as List val identifierArg = args[0] as Long - val wrapped: List = try { - instanceManager.remove(identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + instanceManager.remove(identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -330,15 +334,20 @@ private class CameraXLibraryPigeonInstanceManagerApi(val binaryMessenger: Binary } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.clear", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.clear", + codec) if (instanceManager != null) { channel.setMessageHandler { _, reply -> - val wrapped: List = try { - instanceManager.clear() - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + instanceManager.clear() + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -348,9 +357,9 @@ private class CameraXLibraryPigeonInstanceManagerApi(val binaryMessenger: Binary } } - fun removeStrongReference(identifierArg: Long, callback: (Result) -> Unit) -{ - val channelName = "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference" + fun removeStrongReference(identifierArg: Long, callback: (Result) -> Unit) { + val channelName = + "dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(identifierArg)) { if (it is List<*>) { @@ -361,13 +370,13 @@ private class CameraXLibraryPigeonInstanceManagerApi(val binaryMessenger: Binary } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } /** - * Provides implementations for each ProxyApi implementation and provides access to resources - * needed by any implementation. + * Provides implementations for each ProxyApi implementation and provides access to resources needed + * by any implementation. */ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: BinaryMessenger) { /** Whether APIs should ignore calling to Dart. */ @@ -384,24 +393,23 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary init { val api = CameraXLibraryPigeonInstanceManagerApi(binaryMessenger) - instanceManager = CameraXLibraryPigeonInstanceManager.create( - object : CameraXLibraryPigeonInstanceManager.PigeonFinalizationListener { - override fun onFinalize(identifier: Long) { - api.removeStrongReference(identifier) { - if (it.isFailure) { - Log.e( - "PigeonProxyApiRegistrar", - "Failed to remove Dart strong reference with identifier: $identifier" - ) - } - } - } - } - ) + instanceManager = + CameraXLibraryPigeonInstanceManager.create( + object : CameraXLibraryPigeonInstanceManager.PigeonFinalizationListener { + override fun onFinalize(identifier: Long) { + api.removeStrongReference(identifier) { + if (it.isFailure) { + Log.e( + "PigeonProxyApiRegistrar", + "Failed to remove Dart strong reference with identifier: $identifier") + } + } + } + }) } /** - * An implementation of [PigeonApiCameraSize] used to add a new Dart instance of - * `CameraSize` to the Dart `InstanceManager`. + * An implementation of [PigeonApiCameraSize] used to add a new Dart instance of `CameraSize` to + * the Dart `InstanceManager`. */ abstract fun getPigeonApiCameraSize(): PigeonApiCameraSize @@ -421,8 +429,7 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary * An implementation of [PigeonApiVideoRecordEvent] used to add a new Dart instance of * `VideoRecordEvent` to the Dart `InstanceManager`. */ - open fun getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent - { + open fun getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent { return PigeonApiVideoRecordEvent(this) } @@ -430,8 +437,7 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary * An implementation of [PigeonApiVideoRecordEventStart] used to add a new Dart instance of * `VideoRecordEventStart` to the Dart `InstanceManager`. */ - open fun getPigeonApiVideoRecordEventStart(): PigeonApiVideoRecordEventStart - { + open fun getPigeonApiVideoRecordEventStart(): PigeonApiVideoRecordEventStart { return PigeonApiVideoRecordEventStart(this) } @@ -439,8 +445,7 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary * An implementation of [PigeonApiVideoRecordEventFinalize] used to add a new Dart instance of * `VideoRecordEventFinalize` to the Dart `InstanceManager`. */ - open fun getPigeonApiVideoRecordEventFinalize(): PigeonApiVideoRecordEventFinalize - { + open fun getPigeonApiVideoRecordEventFinalize(): PigeonApiVideoRecordEventFinalize { return PigeonApiVideoRecordEventFinalize(this) } @@ -451,14 +456,14 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiMeteringPoint(): PigeonApiMeteringPoint /** - * An implementation of [PigeonApiObserver] used to add a new Dart instance of - * `Observer` to the Dart `InstanceManager`. + * An implementation of [PigeonApiObserver] used to add a new Dart instance of `Observer` to the + * Dart `InstanceManager`. */ abstract fun getPigeonApiObserver(): PigeonApiObserver /** - * An implementation of [PigeonApiCameraInfo] used to add a new Dart instance of - * `CameraInfo` to the Dart `InstanceManager`. + * An implementation of [PigeonApiCameraInfo] used to add a new Dart instance of `CameraInfo` to + * the Dart `InstanceManager`. */ abstract fun getPigeonApiCameraInfo(): PigeonApiCameraInfo @@ -475,17 +480,16 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiProcessCameraProvider(): PigeonApiProcessCameraProvider /** - * An implementation of [PigeonApiUseCase] used to add a new Dart instance of - * `UseCase` to the Dart `InstanceManager`. + * An implementation of [PigeonApiUseCase] used to add a new Dart instance of `UseCase` to the + * Dart `InstanceManager`. */ - open fun getPigeonApiUseCase(): PigeonApiUseCase - { + open fun getPigeonApiUseCase(): PigeonApiUseCase { return PigeonApiUseCase(this) } /** - * An implementation of [PigeonApiCamera] used to add a new Dart instance of - * `Camera` to the Dart `InstanceManager`. + * An implementation of [PigeonApiCamera] used to add a new Dart instance of `Camera` to the Dart + * `InstanceManager`. */ abstract fun getPigeonApiCamera(): PigeonApiCamera @@ -508,29 +512,28 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiDeviceOrientationManager(): PigeonApiDeviceOrientationManager /** - * An implementation of [PigeonApiPreview] used to add a new Dart instance of - * `Preview` to the Dart `InstanceManager`. + * An implementation of [PigeonApiPreview] used to add a new Dart instance of `Preview` to the + * Dart `InstanceManager`. */ abstract fun getPigeonApiPreview(): PigeonApiPreview /** - * An implementation of [PigeonApiVideoCapture] used to add a new Dart instance of - * `VideoCapture` to the Dart `InstanceManager`. + * An implementation of [PigeonApiVideoCapture] used to add a new Dart instance of `VideoCapture` + * to the Dart `InstanceManager`. */ abstract fun getPigeonApiVideoCapture(): PigeonApiVideoCapture /** - * An implementation of [PigeonApiVideoOutput] used to add a new Dart instance of - * `VideoOutput` to the Dart `InstanceManager`. + * An implementation of [PigeonApiVideoOutput] used to add a new Dart instance of `VideoOutput` to + * the Dart `InstanceManager`. */ - open fun getPigeonApiVideoOutput(): PigeonApiVideoOutput - { + open fun getPigeonApiVideoOutput(): PigeonApiVideoOutput { return PigeonApiVideoOutput(this) } /** - * An implementation of [PigeonApiRecorder] used to add a new Dart instance of - * `Recorder` to the Dart `InstanceManager`. + * An implementation of [PigeonApiRecorder] used to add a new Dart instance of `Recorder` to the + * Dart `InstanceManager`. */ abstract fun getPigeonApiRecorder(): PigeonApiRecorder @@ -547,14 +550,14 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiPendingRecording(): PigeonApiPendingRecording /** - * An implementation of [PigeonApiRecording] used to add a new Dart instance of - * `Recording` to the Dart `InstanceManager`. + * An implementation of [PigeonApiRecording] used to add a new Dart instance of `Recording` to the + * Dart `InstanceManager`. */ abstract fun getPigeonApiRecording(): PigeonApiRecording /** - * An implementation of [PigeonApiImageCapture] used to add a new Dart instance of - * `ImageCapture` to the Dart `InstanceManager`. + * An implementation of [PigeonApiImageCapture] used to add a new Dart instance of `ImageCapture` + * to the Dart `InstanceManager`. */ abstract fun getPigeonApiImageCapture(): PigeonApiImageCapture @@ -577,8 +580,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiAspectRatioStrategy(): PigeonApiAspectRatioStrategy /** - * An implementation of [PigeonApiCameraState] used to add a new Dart instance of - * `CameraState` to the Dart `InstanceManager`. + * An implementation of [PigeonApiCameraState] used to add a new Dart instance of `CameraState` to + * the Dart `InstanceManager`. */ abstract fun getPigeonApiCameraState(): PigeonApiCameraState @@ -589,8 +592,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiExposureState(): PigeonApiExposureState /** - * An implementation of [PigeonApiZoomState] used to add a new Dart instance of - * `ZoomState` to the Dart `InstanceManager`. + * An implementation of [PigeonApiZoomState] used to add a new Dart instance of `ZoomState` to the + * Dart `InstanceManager`. */ abstract fun getPigeonApiZoomState(): PigeonApiZoomState @@ -601,8 +604,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiImageAnalysis(): PigeonApiImageAnalysis /** - * An implementation of [PigeonApiAnalyzer] used to add a new Dart instance of - * `Analyzer` to the Dart `InstanceManager`. + * An implementation of [PigeonApiAnalyzer] used to add a new Dart instance of `Analyzer` to the + * Dart `InstanceManager`. */ abstract fun getPigeonApiAnalyzer(): PigeonApiAnalyzer @@ -613,14 +616,14 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiCameraStateStateError(): PigeonApiCameraStateStateError /** - * An implementation of [PigeonApiLiveData] used to add a new Dart instance of - * `LiveData` to the Dart `InstanceManager`. + * An implementation of [PigeonApiLiveData] used to add a new Dart instance of `LiveData` to the + * Dart `InstanceManager`. */ abstract fun getPigeonApiLiveData(): PigeonApiLiveData /** - * An implementation of [PigeonApiImageProxy] used to add a new Dart instance of - * `ImageProxy` to the Dart `InstanceManager`. + * An implementation of [PigeonApiImageProxy] used to add a new Dart instance of `ImageProxy` to + * the Dart `InstanceManager`. */ abstract fun getPigeonApiImageProxy(): PigeonApiImageProxy @@ -631,8 +634,8 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiImageProxyUtils(): PigeonApiImageProxyUtils /** - * An implementation of [PigeonApiPlaneProxy] used to add a new Dart instance of - * `PlaneProxy` to the Dart `InstanceManager`. + * An implementation of [PigeonApiPlaneProxy] used to add a new Dart instance of `PlaneProxy` to + * the Dart `InstanceManager`. */ abstract fun getPigeonApiPlaneProxy(): PigeonApiPlaneProxy @@ -682,8 +685,7 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary * An implementation of [PigeonApiCaptureRequestKey] used to add a new Dart instance of * `CaptureRequestKey` to the Dart `InstanceManager`. */ - open fun getPigeonApiCaptureRequestKey(): PigeonApiCaptureRequestKey - { + open fun getPigeonApiCaptureRequestKey(): PigeonApiCaptureRequestKey { return PigeonApiCaptureRequestKey(this) } @@ -709,8 +711,7 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary * An implementation of [PigeonApiCameraCharacteristicsKey] used to add a new Dart instance of * `CameraCharacteristicsKey` to the Dart `InstanceManager`. */ - open fun getPigeonApiCameraCharacteristicsKey(): PigeonApiCameraCharacteristicsKey - { + open fun getPigeonApiCameraCharacteristicsKey(): PigeonApiCameraCharacteristicsKey { return PigeonApiCameraCharacteristicsKey(this) } @@ -733,33 +734,42 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary abstract fun getPigeonApiMeteringPointFactory(): PigeonApiMeteringPointFactory /** - * An implementation of [PigeonApiDisplayOrientedMeteringPointFactory] used to add a new Dart instance of - * `DisplayOrientedMeteringPointFactory` to the Dart `InstanceManager`. + * An implementation of [PigeonApiDisplayOrientedMeteringPointFactory] used to add a new Dart + * instance of `DisplayOrientedMeteringPointFactory` to the Dart `InstanceManager`. */ - abstract fun getPigeonApiDisplayOrientedMeteringPointFactory(): PigeonApiDisplayOrientedMeteringPointFactory + abstract fun getPigeonApiDisplayOrientedMeteringPointFactory(): + PigeonApiDisplayOrientedMeteringPointFactory fun setUp() { CameraXLibraryPigeonInstanceManagerApi.setUpMessageHandlers(binaryMessenger, instanceManager) PigeonApiCameraSize.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraSize()) - PigeonApiCameraIntegerRange.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraIntegerRange()) + PigeonApiCameraIntegerRange.setUpMessageHandlers( + binaryMessenger, getPigeonApiCameraIntegerRange()) PigeonApiMeteringPoint.setUpMessageHandlers(binaryMessenger, getPigeonApiMeteringPoint()) PigeonApiObserver.setUpMessageHandlers(binaryMessenger, getPigeonApiObserver()) PigeonApiCameraInfo.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraInfo()) PigeonApiCameraSelector.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraSelector()) - PigeonApiProcessCameraProvider.setUpMessageHandlers(binaryMessenger, getPigeonApiProcessCameraProvider()) + PigeonApiProcessCameraProvider.setUpMessageHandlers( + binaryMessenger, getPigeonApiProcessCameraProvider()) PigeonApiCamera.setUpMessageHandlers(binaryMessenger, getPigeonApiCamera()) - PigeonApiSystemServicesManager.setUpMessageHandlers(binaryMessenger, getPigeonApiSystemServicesManager()) - PigeonApiDeviceOrientationManager.setUpMessageHandlers(binaryMessenger, getPigeonApiDeviceOrientationManager()) + PigeonApiSystemServicesManager.setUpMessageHandlers( + binaryMessenger, getPigeonApiSystemServicesManager()) + PigeonApiDeviceOrientationManager.setUpMessageHandlers( + binaryMessenger, getPigeonApiDeviceOrientationManager()) PigeonApiPreview.setUpMessageHandlers(binaryMessenger, getPigeonApiPreview()) PigeonApiVideoCapture.setUpMessageHandlers(binaryMessenger, getPigeonApiVideoCapture()) PigeonApiRecorder.setUpMessageHandlers(binaryMessenger, getPigeonApiRecorder()) - PigeonApiVideoRecordEventListener.setUpMessageHandlers(binaryMessenger, getPigeonApiVideoRecordEventListener()) + PigeonApiVideoRecordEventListener.setUpMessageHandlers( + binaryMessenger, getPigeonApiVideoRecordEventListener()) PigeonApiPendingRecording.setUpMessageHandlers(binaryMessenger, getPigeonApiPendingRecording()) PigeonApiRecording.setUpMessageHandlers(binaryMessenger, getPigeonApiRecording()) PigeonApiImageCapture.setUpMessageHandlers(binaryMessenger, getPigeonApiImageCapture()) - PigeonApiResolutionStrategy.setUpMessageHandlers(binaryMessenger, getPigeonApiResolutionStrategy()) - PigeonApiResolutionSelector.setUpMessageHandlers(binaryMessenger, getPigeonApiResolutionSelector()) - PigeonApiAspectRatioStrategy.setUpMessageHandlers(binaryMessenger, getPigeonApiAspectRatioStrategy()) + PigeonApiResolutionStrategy.setUpMessageHandlers( + binaryMessenger, getPigeonApiResolutionStrategy()) + PigeonApiResolutionSelector.setUpMessageHandlers( + binaryMessenger, getPigeonApiResolutionSelector()) + PigeonApiAspectRatioStrategy.setUpMessageHandlers( + binaryMessenger, getPigeonApiAspectRatioStrategy()) PigeonApiImageAnalysis.setUpMessageHandlers(binaryMessenger, getPigeonApiImageAnalysis()) PigeonApiAnalyzer.setUpMessageHandlers(binaryMessenger, getPigeonApiAnalyzer()) PigeonApiLiveData.setUpMessageHandlers(binaryMessenger, getPigeonApiLiveData()) @@ -768,16 +778,24 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary PigeonApiQualitySelector.setUpMessageHandlers(binaryMessenger, getPigeonApiQualitySelector()) PigeonApiFallbackStrategy.setUpMessageHandlers(binaryMessenger, getPigeonApiFallbackStrategy()) PigeonApiCameraControl.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraControl()) - PigeonApiFocusMeteringActionBuilder.setUpMessageHandlers(binaryMessenger, getPigeonApiFocusMeteringActionBuilder()) + PigeonApiFocusMeteringActionBuilder.setUpMessageHandlers( + binaryMessenger, getPigeonApiFocusMeteringActionBuilder()) PigeonApiCaptureRequest.setUpMessageHandlers(binaryMessenger, getPigeonApiCaptureRequest()) - PigeonApiCaptureRequestOptions.setUpMessageHandlers(binaryMessenger, getPigeonApiCaptureRequestOptions()) - PigeonApiCamera2CameraControl.setUpMessageHandlers(binaryMessenger, getPigeonApiCamera2CameraControl()) + PigeonApiCaptureRequestOptions.setUpMessageHandlers( + binaryMessenger, getPigeonApiCaptureRequestOptions()) + PigeonApiCamera2CameraControl.setUpMessageHandlers( + binaryMessenger, getPigeonApiCamera2CameraControl()) PigeonApiResolutionFilter.setUpMessageHandlers(binaryMessenger, getPigeonApiResolutionFilter()) - PigeonApiCameraCharacteristics.setUpMessageHandlers(binaryMessenger, getPigeonApiCameraCharacteristics()) - PigeonApiCamera2CameraInfo.setUpMessageHandlers(binaryMessenger, getPigeonApiCamera2CameraInfo()) - PigeonApiMeteringPointFactory.setUpMessageHandlers(binaryMessenger, getPigeonApiMeteringPointFactory()) - PigeonApiDisplayOrientedMeteringPointFactory.setUpMessageHandlers(binaryMessenger, getPigeonApiDisplayOrientedMeteringPointFactory()) + PigeonApiCameraCharacteristics.setUpMessageHandlers( + binaryMessenger, getPigeonApiCameraCharacteristics()) + PigeonApiCamera2CameraInfo.setUpMessageHandlers( + binaryMessenger, getPigeonApiCamera2CameraInfo()) + PigeonApiMeteringPointFactory.setUpMessageHandlers( + binaryMessenger, getPigeonApiMeteringPointFactory()) + PigeonApiDisplayOrientedMeteringPointFactory.setUpMessageHandlers( + binaryMessenger, getPigeonApiDisplayOrientedMeteringPointFactory()) } + fun tearDown() { CameraXLibraryPigeonInstanceManagerApi.setUpMessageHandlers(binaryMessenger, null) PigeonApiCameraSize.setUpMessageHandlers(binaryMessenger, null) @@ -819,17 +837,17 @@ abstract class CameraXLibraryPigeonProxyApiRegistrar(val binaryMessenger: Binary PigeonApiDisplayOrientedMeteringPointFactory.setUpMessageHandlers(binaryMessenger, null) } } -private class CameraXLibraryPigeonProxyApiBaseCodec(val registrar: CameraXLibraryPigeonProxyApiRegistrar) : CameraXLibraryPigeonCodec() { + +private class CameraXLibraryPigeonProxyApiBaseCodec( + val registrar: CameraXLibraryPigeonProxyApiRegistrar +) : CameraXLibraryPigeonCodec() { override fun readValueOfType(type: Byte, buffer: ByteBuffer): Any? { return when (type) { 128.toByte() -> { val identifier: Long = readValue(buffer) as Long val instance: Any? = registrar.instanceManager.getInstance(identifier) if (instance == null) { - Log.e( - "PigeonProxyApiBaseCodec", - "Failed to find instance with identifier: $identifier" - ) + Log.e("PigeonProxyApiBaseCodec", "Failed to find instance with identifier: $identifier") } return instance } @@ -838,16 +856,38 @@ private class CameraXLibraryPigeonProxyApiBaseCodec(val registrar: CameraXLibrar } override fun writeValue(stream: ByteArrayOutputStream, value: Any?) { - if (value is Boolean || value is ByteArray || value is Double || value is DoubleArray || value is FloatArray || value is Int || value is IntArray || value is List<*> || value is Long || value is LongArray || value is Map<*, *> || value is String || value is InfoSupportedHardwareLevel || value is AspectRatio || value is CameraStateType || value is LiveDataSupportedType || value is VideoQuality || value is MeteringMode || value is LensFacing || value is CameraXFlashMode || value is ResolutionStrategyFallbackRule || value is AspectRatioStrategyFallbackRule || value is CameraStateErrorCode || value == null) { + if (value is Boolean || + value is ByteArray || + value is Double || + value is DoubleArray || + value is FloatArray || + value is Int || + value is IntArray || + value is List<*> || + value is Long || + value is LongArray || + value is Map<*, *> || + value is String || + value is InfoSupportedHardwareLevel || + value is AspectRatio || + value is CameraStateType || + value is LiveDataSupportedType || + value is VideoQuality || + value is MeteringMode || + value is LensFacing || + value is CameraXFlashMode || + value is ResolutionStrategyFallbackRule || + value is AspectRatioStrategyFallbackRule || + value is CameraStateErrorCode || + value == null) { super.writeValue(stream, value) return } fun logNewInstanceFailure(apiName: String, value: Any, exception: Throwable?) { Log.w( - "PigeonProxyApiBaseCodec", - "Failed to create new Dart proxy instance of $apiName: $value. $exception" - ) + "PigeonProxyApiBaseCodec", + "Failed to create new Dart proxy instance of $apiName: $value. $exception") } if (value is android.util.Size) { @@ -856,365 +896,313 @@ private class CameraXLibraryPigeonProxyApiBaseCodec(val registrar: CameraXLibrar logNewInstanceFailure("CameraSize", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.ResolutionInfo) { + } else if (value is androidx.camera.core.ResolutionInfo) { registrar.getPigeonApiResolutionInfo().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ResolutionInfo", value, it.exceptionOrNull()) } } - } - else if (value is android.util.Range<*>) { + } else if (value is android.util.Range<*>) { registrar.getPigeonApiCameraIntegerRange().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraIntegerRange", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.video.VideoRecordEvent.Start) { + } else if (value is androidx.camera.video.VideoRecordEvent.Start) { registrar.getPigeonApiVideoRecordEventStart().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoRecordEventStart", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.video.VideoRecordEvent.Finalize) { + } else if (value is androidx.camera.video.VideoRecordEvent.Finalize) { registrar.getPigeonApiVideoRecordEventFinalize().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoRecordEventFinalize", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.video.VideoRecordEvent) { + } else if (value is androidx.camera.video.VideoRecordEvent) { registrar.getPigeonApiVideoRecordEvent().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoRecordEvent", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.MeteringPoint) { + } else if (value is androidx.camera.core.MeteringPoint) { registrar.getPigeonApiMeteringPoint().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("MeteringPoint", value, it.exceptionOrNull()) } } - } - else if (value is androidx.lifecycle.Observer<*>) { + } else if (value is androidx.lifecycle.Observer<*>) { registrar.getPigeonApiObserver().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Observer", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.CameraInfo) { + } else if (value is androidx.camera.core.CameraInfo) { registrar.getPigeonApiCameraInfo().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraInfo", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.CameraSelector) { + } else if (value is androidx.camera.core.CameraSelector) { registrar.getPigeonApiCameraSelector().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraSelector", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.lifecycle.ProcessCameraProvider) { + } else if (value is androidx.camera.lifecycle.ProcessCameraProvider) { registrar.getPigeonApiProcessCameraProvider().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ProcessCameraProvider", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.Camera) { + } else if (value is androidx.camera.core.Camera) { registrar.getPigeonApiCamera().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Camera", value, it.exceptionOrNull()) } } - } - else if (value is SystemServicesManager) { + } else if (value is SystemServicesManager) { registrar.getPigeonApiSystemServicesManager().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("SystemServicesManager", value, it.exceptionOrNull()) } } - } - else if (value is CameraPermissionsError) { + } else if (value is CameraPermissionsError) { registrar.getPigeonApiCameraPermissionsError().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraPermissionsError", value, it.exceptionOrNull()) } } - } - else if (value is DeviceOrientationManager) { + } else if (value is DeviceOrientationManager) { registrar.getPigeonApiDeviceOrientationManager().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("DeviceOrientationManager", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.Preview) { + } else if (value is androidx.camera.core.Preview) { registrar.getPigeonApiPreview().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Preview", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.video.VideoCapture<*>) { + } else if (value is androidx.camera.video.VideoCapture<*>) { registrar.getPigeonApiVideoCapture().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoCapture", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.video.Recorder) { + } else if (value is androidx.camera.video.Recorder) { registrar.getPigeonApiRecorder().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Recorder", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.video.VideoOutput) { + } else if (value is androidx.camera.video.VideoOutput) { registrar.getPigeonApiVideoOutput().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoOutput", value, it.exceptionOrNull()) } } - } - else if (value is VideoRecordEventListener) { + } else if (value is VideoRecordEventListener) { registrar.getPigeonApiVideoRecordEventListener().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("VideoRecordEventListener", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.video.PendingRecording) { + } else if (value is androidx.camera.video.PendingRecording) { registrar.getPigeonApiPendingRecording().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("PendingRecording", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.video.Recording) { + } else if (value is androidx.camera.video.Recording) { registrar.getPigeonApiRecording().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Recording", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.ImageCapture) { + } else if (value is androidx.camera.core.ImageCapture) { registrar.getPigeonApiImageCapture().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ImageCapture", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.resolutionselector.ResolutionStrategy) { + } else if (value is androidx.camera.core.resolutionselector.ResolutionStrategy) { registrar.getPigeonApiResolutionStrategy().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ResolutionStrategy", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.resolutionselector.ResolutionSelector) { + } else if (value is androidx.camera.core.resolutionselector.ResolutionSelector) { registrar.getPigeonApiResolutionSelector().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ResolutionSelector", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.resolutionselector.AspectRatioStrategy) { + } else if (value is androidx.camera.core.resolutionselector.AspectRatioStrategy) { registrar.getPigeonApiAspectRatioStrategy().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("AspectRatioStrategy", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.CameraState) { + } else if (value is androidx.camera.core.CameraState) { registrar.getPigeonApiCameraState().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraState", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.ExposureState) { + } else if (value is androidx.camera.core.ExposureState) { registrar.getPigeonApiExposureState().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ExposureState", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.ZoomState) { + } else if (value is androidx.camera.core.ZoomState) { registrar.getPigeonApiZoomState().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ZoomState", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.ImageAnalysis) { + } else if (value is androidx.camera.core.ImageAnalysis) { registrar.getPigeonApiImageAnalysis().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ImageAnalysis", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.UseCase) { + } else if (value is androidx.camera.core.UseCase) { registrar.getPigeonApiUseCase().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("UseCase", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.ImageAnalysis.Analyzer) { + } else if (value is androidx.camera.core.ImageAnalysis.Analyzer) { registrar.getPigeonApiAnalyzer().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Analyzer", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.CameraState.StateError) { + } else if (value is androidx.camera.core.CameraState.StateError) { registrar.getPigeonApiCameraStateStateError().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraStateStateError", value, it.exceptionOrNull()) } } - } - else if (value is io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper) { + } else if (value is io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper) { registrar.getPigeonApiLiveData().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("LiveData", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.ImageProxy) { + } else if (value is androidx.camera.core.ImageProxy) { registrar.getPigeonApiImageProxy().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ImageProxy", value, it.exceptionOrNull()) } } - } - else if (value is ImageProxyUtils) { + } else if (value is ImageProxyUtils) { registrar.getPigeonApiImageProxyUtils().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ImageProxyUtils", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.ImageProxy.PlaneProxy) { + } else if (value is androidx.camera.core.ImageProxy.PlaneProxy) { registrar.getPigeonApiPlaneProxy().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("PlaneProxy", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.video.QualitySelector) { + } else if (value is androidx.camera.video.QualitySelector) { registrar.getPigeonApiQualitySelector().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("QualitySelector", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.video.FallbackStrategy) { + } else if (value is androidx.camera.video.FallbackStrategy) { registrar.getPigeonApiFallbackStrategy().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("FallbackStrategy", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.CameraControl) { + } else if (value is androidx.camera.core.CameraControl) { registrar.getPigeonApiCameraControl().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraControl", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.FocusMeteringAction.Builder) { + } else if (value is androidx.camera.core.FocusMeteringAction.Builder) { registrar.getPigeonApiFocusMeteringActionBuilder().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("FocusMeteringActionBuilder", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.FocusMeteringAction) { + } else if (value is androidx.camera.core.FocusMeteringAction) { registrar.getPigeonApiFocusMeteringAction().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("FocusMeteringAction", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.FocusMeteringResult) { + } else if (value is androidx.camera.core.FocusMeteringResult) { registrar.getPigeonApiFocusMeteringResult().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("FocusMeteringResult", value, it.exceptionOrNull()) } } - } - else if (value is android.hardware.camera2.CaptureRequest) { + } else if (value is android.hardware.camera2.CaptureRequest) { registrar.getPigeonApiCaptureRequest().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CaptureRequest", value, it.exceptionOrNull()) } } - } - else if (value is android.hardware.camera2.CaptureRequest.Key<*>) { + } else if (value is android.hardware.camera2.CaptureRequest.Key<*>) { registrar.getPigeonApiCaptureRequestKey().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CaptureRequestKey", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.camera2.interop.CaptureRequestOptions) { + } else if (value is androidx.camera.camera2.interop.CaptureRequestOptions) { registrar.getPigeonApiCaptureRequestOptions().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CaptureRequestOptions", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.camera2.interop.Camera2CameraControl) { + } else if (value is androidx.camera.camera2.interop.Camera2CameraControl) { registrar.getPigeonApiCamera2CameraControl().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Camera2CameraControl", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.resolutionselector.ResolutionFilter) { + } else if (value is androidx.camera.core.resolutionselector.ResolutionFilter) { registrar.getPigeonApiResolutionFilter().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("ResolutionFilter", value, it.exceptionOrNull()) } } - } - else if (value is android.hardware.camera2.CameraCharacteristics.Key<*>) { + } else if (value is android.hardware.camera2.CameraCharacteristics.Key<*>) { registrar.getPigeonApiCameraCharacteristicsKey().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraCharacteristicsKey", value, it.exceptionOrNull()) } } - } - else if (value is android.hardware.camera2.CameraCharacteristics) { + } else if (value is android.hardware.camera2.CameraCharacteristics) { registrar.getPigeonApiCameraCharacteristics().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("CameraCharacteristics", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.camera2.interop.Camera2CameraInfo) { + } else if (value is androidx.camera.camera2.interop.Camera2CameraInfo) { registrar.getPigeonApiCamera2CameraInfo().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("Camera2CameraInfo", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.DisplayOrientedMeteringPointFactory) { + } else if (value is androidx.camera.core.DisplayOrientedMeteringPointFactory) { registrar.getPigeonApiDisplayOrientedMeteringPointFactory().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("DisplayOrientedMeteringPointFactory", value, it.exceptionOrNull()) } } - } - else if (value is androidx.camera.core.MeteringPointFactory) { + } else if (value is androidx.camera.core.MeteringPointFactory) { registrar.getPigeonApiMeteringPointFactory().pigeon_newInstance(value) { if (it.isFailure) { logNewInstanceFailure("MeteringPointFactory", value, it.exceptionOrNull()) @@ -1227,7 +1215,9 @@ private class CameraXLibraryPigeonProxyApiBaseCodec(val registrar: CameraXLibrar stream.write(128) writeValue(stream, registrar.instanceManager.getIdentifierForStrongReference(value)) } - else -> throw IllegalArgumentException("Unsupported value: '$value' of type '${value.javaClass.name}'") + else -> + throw IllegalArgumentException( + "Unsupported value: '$value' of type '${value.javaClass.name}'") } } } @@ -1235,27 +1225,22 @@ private class CameraXLibraryPigeonProxyApiBaseCodec(val registrar: CameraXLibrar /** * Generally classifies the overall set of the camera device functionality. * - * See https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_3. + * See + * https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_3. */ enum class InfoSupportedHardwareLevel(val raw: Int) { /** - * This camera device is capable of YUV reprocessing and RAW data capture, in - * addition to FULL-level capabilities. + * This camera device is capable of YUV reprocessing and RAW data capture, in addition to + * FULL-level capabilities. */ LEVEL3(0), - /** - * This camera device is backed by an external camera connected to this - * Android device. - */ + /** This camera device is backed by an external camera connected to this Android device. */ EXTERNAL(1), /** This camera device is capable of supporting advanced imaging applications. */ FULL(2), /** This camera device is running in backward compatibility mode. */ LEGACY(3), - /** - * This camera device does not have enough capabilities to qualify as a FULL - * device or better. - */ + /** This camera device does not have enough capabilities to qualify as a FULL device or better. */ LIMITED(4); companion object { @@ -1302,8 +1287,8 @@ enum class CameraStateType(val raw: Int) { /** Represents a state where the camera device is currently opening. */ OPENING(3), /** - * Represents a state where the camera is waiting for a signal to attempt to - * open the camera device. + * Represents a state where the camera is waiting for a signal to attempt to open the camera + * device. */ PENDING_OPEN(4), /** This value is not recognized by this wrapper. */ @@ -1329,8 +1314,8 @@ enum class LiveDataSupportedType(val raw: Int) { } /** - * Video quality constraints that will be used by a QualitySelector to choose - * an appropriate video resolution. + * Video quality constraints that will be used by a QualitySelector to choose an appropriate video + * resolution. * * These are pre-defined quality constants that are universally used for video. * @@ -1360,23 +1345,15 @@ enum class VideoQuality(val raw: Int) { /** * A flag used for indicating metering mode regions. * - * See https://developer.android.com/reference/kotlin/androidx/camera/core/FocusMeteringAction#FLAG_AF(). + * See + * https://developer.android.com/reference/kotlin/androidx/camera/core/FocusMeteringAction#FLAG_AF(). */ enum class MeteringMode(val raw: Int) { - /** - * A flag used in metering mode indicating the AE (Auto Exposure) region is - * enabled. - */ + /** A flag used in metering mode indicating the AE (Auto Exposure) region is enabled. */ AE(0), - /** - * A flag used in metering mode indicating the AF (Auto Focus) region is - * enabled. - */ + /** A flag used in metering mode indicating the AF (Auto Focus) region is enabled. */ AF(1), - /** - * A flag used in metering mode indicating the AWB (Auto White Balance) - * region is enabled. - */ + /** A flag used in metering mode indicating the AWB (Auto White Balance) region is enabled. */ AWB(2); companion object { @@ -1389,20 +1366,15 @@ enum class MeteringMode(val raw: Int) { /** * Direction of lens of a camera. * - * See https://developer.android.com/reference/androidx/camera/core/CameraSelector#LENS_FACING_BACK(). + * See + * https://developer.android.com/reference/androidx/camera/core/CameraSelector#LENS_FACING_BACK(). */ enum class LensFacing(val raw: Int) { /** A camera on the device facing the same direction as the device's screen. */ FRONT(0), - /** - * A camera on the device facing the opposite direction as the device's - * screen. - */ + /** A camera on the device facing the opposite direction as the device's screen. */ BACK(1), - /** - * An external camera that has no fixed facing relative to the device's - * screen. - */ + /** An external camera that has no fixed facing relative to the device's screen. */ EXTERNAL(2), /** A camera on the devices that its lens facing is resolved. */ UNKNOWN(3); @@ -1417,14 +1389,14 @@ enum class LensFacing(val raw: Int) { /** * FlashModes for image capture. * - * See https://developer.android.com/reference/kotlin/androidx/camera/core/ImageCapture#FLASH_MODE_AUTO(). + * See + * https://developer.android.com/reference/kotlin/androidx/camera/core/ImageCapture#FLASH_MODE_AUTO(). */ enum class CameraXFlashMode(val raw: Int) { /** * Auto flash. * - * The flash will be used according to the camera system's determination when - * taking a picture. + * The flash will be used according to the camera system's determination when taking a picture. */ AUTO(0), /** @@ -1448,39 +1420,36 @@ enum class CameraXFlashMode(val raw: Int) { } /** - * Fallback rule for choosing an alternate size when the specified bound size - * is unavailable. + * Fallback rule for choosing an alternate size when the specified bound size is unavailable. * - * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionStrategy. + * See + * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionStrategy. */ enum class ResolutionStrategyFallbackRule(val raw: Int) { /** - * When the specified bound size is unavailable, CameraX falls back to the - * closest higher resolution size. + * When the specified bound size is unavailable, CameraX falls back to the closest higher + * resolution size. */ CLOSEST_HIGHER(0), /** - * When the specified bound size is unavailable, CameraX falls back to select - * the closest higher resolution size. + * When the specified bound size is unavailable, CameraX falls back to select the closest higher + * resolution size. */ CLOSEST_HIGHER_THEN_LOWER(1), /** - * When the specified bound size is unavailable, CameraX falls back to the - * closest lower resolution size. + * When the specified bound size is unavailable, CameraX falls back to the closest lower + * resolution size. */ CLOSEST_LOWER(2), /** - * When the specified bound size is unavailable, CameraX falls back to select - * the closest lower resolution size. + * When the specified bound size is unavailable, CameraX falls back to select the closest lower + * resolution size. * - * If CameraX still cannot find any available resolution, it will fallback to - * select other higher resolutions. + * If CameraX still cannot find any available resolution, it will fallback to select other higher + * resolutions. */ CLOSEST_LOWER_THEN_HIGHER(3), - /** - * CameraX doesn't select an alternate size when the specified bound size is - * unavailable. - */ + /** CameraX doesn't select an alternate size when the specified bound size is unavailable. */ NONE(4), /** The value is not recognized by the wrapper. */ UNKNOWN(5); @@ -1493,21 +1462,20 @@ enum class ResolutionStrategyFallbackRule(val raw: Int) { } /** - * Fallback rule for choosing the aspect ratio when the preferred aspect ratio - * is not available. + * Fallback rule for choosing the aspect ratio when the preferred aspect ratio is not available. * - * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/AspectRatioStrategy#FALLBACK_RULE_AUTO(). + * See + * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/AspectRatioStrategy#FALLBACK_RULE_AUTO(). */ enum class AspectRatioStrategyFallbackRule(val raw: Int) { /** - * CameraX automatically chooses the next best aspect ratio which contains - * the closest field of view (FOV) of the camera sensor, from the remaining - * options. + * CameraX automatically chooses the next best aspect ratio which contains the closest field of + * view (FOV) of the camera sensor, from the remaining options. */ AUTO(0), /** - * CameraX doesn't fall back to select sizes of any other aspect ratio when - * this fallback rule is used. + * CameraX doesn't fall back to select sizes of any other aspect ratio when this fallback rule is + * used. */ NONE(1), /** The value is not recognized by the wrapper. */ @@ -1526,34 +1494,23 @@ enum class AspectRatioStrategyFallbackRule(val raw: Int) { * https://developer.android.com/reference/androidx/camera/core/CameraState#ERROR_CAMERA_DISABLED() */ enum class CameraStateErrorCode(val raw: Int) { - /** - * An error indicating that the camera device could not be opened due to a - * device policy. - */ + /** An error indicating that the camera device could not be opened due to a device policy. */ CAMERA_DISABLED(0), - /** - * An error indicating that the camera device was closed due to a fatal - * error. - */ + /** An error indicating that the camera device was closed due to a fatal error. */ CAMERA_FATAL_ERROR(1), /** An error indicating that the camera device is already in use. */ CAMERA_IN_USE(2), /** - * An error indicating that the camera could not be opened because "Do Not - * Disturb" mode is enabled on devices affected by a bug in Android 9 (API - * level 28). + * An error indicating that the camera could not be opened because "Do Not Disturb" mode is + * enabled on devices affected by a bug in Android 9 (API level 28). */ DO_NOT_DISTURB_MODE_ENABLED(3), /** - * An error indicating that the limit number of open cameras has been - * reached, and more cameras cannot be opened until other instances are - * closed. + * An error indicating that the limit number of open cameras has been reached, and more cameras + * cannot be opened until other instances are closed. */ MAX_CAMERAS_IN_USE(4), - /** - * An error indicating that the camera device has encountered a recoverable - * error. - */ + /** An error indicating that the camera device has encountered a recoverable error. */ OTHER_RECOVERABLE_ERROR(5), /** An error indicating that configuring the camera has failed. */ STREAM_CONFIG(6), @@ -1566,48 +1523,33 @@ enum class CameraStateErrorCode(val raw: Int) { } } } + private open class CameraXLibraryPigeonCodec : StandardMessageCodec() { override fun readValueOfType(type: Byte, buffer: ByteBuffer): Any? { return when (type) { 129.toByte() -> { - return (readValue(buffer) as Long?)?.let { - InfoSupportedHardwareLevel.ofRaw(it.toInt()) - } + return (readValue(buffer) as Long?)?.let { InfoSupportedHardwareLevel.ofRaw(it.toInt()) } } 130.toByte() -> { - return (readValue(buffer) as Long?)?.let { - AspectRatio.ofRaw(it.toInt()) - } + return (readValue(buffer) as Long?)?.let { AspectRatio.ofRaw(it.toInt()) } } 131.toByte() -> { - return (readValue(buffer) as Long?)?.let { - CameraStateType.ofRaw(it.toInt()) - } + return (readValue(buffer) as Long?)?.let { CameraStateType.ofRaw(it.toInt()) } } 132.toByte() -> { - return (readValue(buffer) as Long?)?.let { - LiveDataSupportedType.ofRaw(it.toInt()) - } + return (readValue(buffer) as Long?)?.let { LiveDataSupportedType.ofRaw(it.toInt()) } } 133.toByte() -> { - return (readValue(buffer) as Long?)?.let { - VideoQuality.ofRaw(it.toInt()) - } + return (readValue(buffer) as Long?)?.let { VideoQuality.ofRaw(it.toInt()) } } 134.toByte() -> { - return (readValue(buffer) as Long?)?.let { - MeteringMode.ofRaw(it.toInt()) - } + return (readValue(buffer) as Long?)?.let { MeteringMode.ofRaw(it.toInt()) } } 135.toByte() -> { - return (readValue(buffer) as Long?)?.let { - LensFacing.ofRaw(it.toInt()) - } + return (readValue(buffer) as Long?)?.let { LensFacing.ofRaw(it.toInt()) } } 136.toByte() -> { - return (readValue(buffer) as Long?)?.let { - CameraXFlashMode.ofRaw(it.toInt()) - } + return (readValue(buffer) as Long?)?.let { CameraXFlashMode.ofRaw(it.toInt()) } } 137.toByte() -> { return (readValue(buffer) as Long?)?.let { @@ -1620,14 +1562,13 @@ private open class CameraXLibraryPigeonCodec : StandardMessageCodec() { } } 139.toByte() -> { - return (readValue(buffer) as Long?)?.let { - CameraStateErrorCode.ofRaw(it.toInt()) - } + return (readValue(buffer) as Long?)?.let { CameraStateErrorCode.ofRaw(it.toInt()) } } else -> super.readValueOfType(type, buffer) } } - override fun writeValue(stream: ByteArrayOutputStream, value: Any?) { + + override fun writeValue(stream: ByteArrayOutputStream, value: Any?) { when (value) { is InfoSupportedHardwareLevel -> { stream.write(129) @@ -1684,7 +1625,9 @@ private open class CameraXLibraryPigeonCodec : StandardMessageCodec() { * See https://developer.android.com/reference/android/util/Size.html. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraSize(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCameraSize( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { abstract fun pigeon_defaultConstructor(width: Long, height: Long): android.util.Size /** The width of the size (in pixels). */ @@ -1698,19 +1641,25 @@ abstract class PigeonApiCameraSize(open val pigeonRegistrar: CameraXLibraryPigeo fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraSize?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val widthArg = args[1] as Long val heightArg = args[2] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(widthArg,heightArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(widthArg, heightArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -1722,16 +1671,16 @@ abstract class PigeonApiCameraSize(open val pigeonRegistrar: CameraXLibraryPigeo @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraSize and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: android.util.Size, callback: (Result) -> Unit) -{ + fun pigeon_newInstance(pigeon_instanceArg: android.util.Size, callback: (Result) -> Unit) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val widthArg = width(pigeon_instanceArg) val heightArg = height(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -1741,60 +1690,66 @@ abstract class PigeonApiCameraSize(open val pigeonRegistrar: CameraXLibraryPigeo channel.send(listOf(pigeon_identifierArg, widthArg, heightArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * A `ResolutionInfo` allows the application to know the resolution information - * of a specific use case. + * A `ResolutionInfo` allows the application to know the resolution information of a specific use + * case. * * See https://developer.android.com/reference/androidx/camera/core/ResolutionInfo. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiResolutionInfo(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiResolutionInfo( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** Returns the output resolution used for the use case. */ abstract fun resolution(pigeon_instance: androidx.camera.core.ResolutionInfo): android.util.Size @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ResolutionInfo and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ResolutionInfo, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.ResolutionInfo, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val resolutionArg = resolution(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, resolutionArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * Immutable class for describing the range of two integer values. @@ -1804,7 +1759,9 @@ abstract class PigeonApiResolutionInfo(open val pigeonRegistrar: CameraXLibraryP * See https://developer.android.com/reference/android/util/Range.html. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraIntegerRange(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCameraIntegerRange( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { abstract fun pigeon_defaultConstructor(lower: Long, upper: Long): android.util.Range<*> /** The lower endpoint. */ @@ -1818,19 +1775,25 @@ abstract class PigeonApiCameraIntegerRange(open val pigeonRegistrar: CameraXLibr fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraIntegerRange?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val lowerArg = args[1] as Long val upperArg = args[2] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(lowerArg,upperArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(lowerArg, upperArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -1842,36 +1805,40 @@ abstract class PigeonApiCameraIntegerRange(open val pigeonRegistrar: CameraXLibr @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraIntegerRange and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: android.util.Range<*>, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: android.util.Range<*>, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val lowerArg = lower(pigeon_instanceArg) val upperArg = upper(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, lowerArg, upperArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * VideoRecordEvent is used to report video recording events and status. @@ -1879,37 +1846,43 @@ abstract class PigeonApiCameraIntegerRange(open val pigeonRegistrar: CameraXLibr * See https://developer.android.com/reference/androidx/camera/video/VideoRecordEvent. */ @Suppress("UNCHECKED_CAST") -open class PigeonApiVideoRecordEvent(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +open class PigeonApiVideoRecordEvent( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of VideoRecordEvent and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.VideoRecordEvent, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.video.VideoRecordEvent, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.VideoRecordEvent.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.VideoRecordEvent.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * Indicates the start of recording. @@ -1917,44 +1890,49 @@ open class PigeonApiVideoRecordEvent(open val pigeonRegistrar: CameraXLibraryPig * See https://developer.android.com/reference/androidx/camera/video/VideoRecordEvent.Start. */ @Suppress("UNCHECKED_CAST") -open class PigeonApiVideoRecordEventStart(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +open class PigeonApiVideoRecordEventStart( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of VideoRecordEventStart and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.VideoRecordEvent.Start, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.video.VideoRecordEvent.Start, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventStart.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventStart.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiVideoRecordEvent] used to access callback methods */ - fun pigeon_getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent - { + fun pigeon_getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent { return pigeonRegistrar.getPigeonApiVideoRecordEvent() } - } /** * Indicates the finalization of recording. @@ -1962,58 +1940,67 @@ open class PigeonApiVideoRecordEventStart(open val pigeonRegistrar: CameraXLibra * See https://developer.android.com/reference/androidx/camera/video/VideoRecordEvent.Finalize. */ @Suppress("UNCHECKED_CAST") -open class PigeonApiVideoRecordEventFinalize(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +open class PigeonApiVideoRecordEventFinalize( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { @Suppress("LocalVariableName", "FunctionName") - /** Creates a Dart instance of VideoRecordEventFinalize and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.VideoRecordEvent.Finalize, callback: (Result) -> Unit) -{ + /** + * Creates a Dart instance of VideoRecordEventFinalize and attaches it to [pigeon_instanceArg]. + */ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.video.VideoRecordEvent.Finalize, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventFinalize.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventFinalize.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiVideoRecordEvent] used to access callback methods */ - fun pigeon_getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent - { + fun pigeon_getPigeonApiVideoRecordEvent(): PigeonApiVideoRecordEvent { return pigeonRegistrar.getPigeonApiVideoRecordEvent() } - } /** - * A MeteringPoint is used to specify a region which can then be converted to - * sensor coordinate system for focus and metering purpose. + * A MeteringPoint is used to specify a region which can then be converted to sensor coordinate + * system for focus and metering purpose. * * See https://developer.android.com/reference/androidx/camera/core/MeteringPoint. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiMeteringPoint(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiMeteringPoint( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** * Size of the MeteringPoint width and height (ranging from 0 to 1). * - * It is the percentage of the sensor width/height (or crop region - * width/height if crop region is set). + * It is the percentage of the sensor width/height (or crop region width/height if crop region is + * set). */ abstract fun getSize(pigeon_instance: androidx.camera.core.MeteringPoint): Double @@ -2022,16 +2009,21 @@ abstract class PigeonApiMeteringPoint(open val pigeonRegistrar: CameraXLibraryPi fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiMeteringPoint?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.MeteringPoint.getSize", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.MeteringPoint.getSize", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.MeteringPoint - val wrapped: List = try { - listOf(api.getSize(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getSize(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2043,16 +2035,19 @@ abstract class PigeonApiMeteringPoint(open val pigeonRegistrar: CameraXLibraryPi @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of MeteringPoint and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.MeteringPoint, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.MeteringPoint, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.MeteringPoint.pigeon_newInstance" @@ -2060,17 +2055,17 @@ abstract class PigeonApiMeteringPoint(open val pigeonRegistrar: CameraXLibraryPi channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * A simple callback that can receive from LiveData. @@ -2086,17 +2081,23 @@ abstract class PigeonApiObserver(open val pigeonRegistrar: CameraXLibraryPigeonP fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiObserver?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Observer.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Observer.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2108,33 +2109,44 @@ abstract class PigeonApiObserver(open val pigeonRegistrar: CameraXLibraryPigeonP @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Observer and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.lifecycle.Observer<*>, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.lifecycle.Observer<*>, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { + } else { callback( Result.failure( - CameraXError("new-instance-error", "Attempting to create a new Dart instance of Observer, but the class has a nonnull callback method.", ""))) + CameraXError( + "new-instance-error", + "Attempting to create a new Dart instance of Observer, but the class has a nonnull callback method.", + ""))) } } /** Called when the data is changed to value. */ - fun onChanged(pigeon_instanceArg: androidx.lifecycle.Observer<*>, valueArg: Any, callback: (Result) -> Unit) -{ + fun onChanged( + pigeon_instanceArg: androidx.lifecycle.Observer<*>, + valueArg: Any, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) return - } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback( Result.failure( - CameraXError("missing-instance-error", "Callback to `Observer.onChanged` failed because native instance was not in the instance manager.", ""))) + CameraXError( + "missing-instance-error", + "Callback to `Observer.onChanged` failed because native instance was not in the instance manager.", + ""))) return } val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -2150,10 +2162,9 @@ abstract class PigeonApiObserver(open val pigeonRegistrar: CameraXLibraryPigeonP } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } - } /** * An interface for retrieving camera information. @@ -2161,10 +2172,12 @@ abstract class PigeonApiObserver(open val pigeonRegistrar: CameraXLibraryPigeonP * See https://developer.android.com/reference/androidx/camera/core/CameraInfo. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraInfo(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCameraInfo( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** - * Returns the sensor rotation in degrees, relative to the device's "natural" - * (default) orientation. + * Returns the sensor rotation in degrees, relative to the device's "natural" (default) + * orientation. */ abstract fun sensorRotationDegrees(pigeon_instance: androidx.camera.core.CameraInfo): Long @@ -2172,29 +2185,40 @@ abstract class PigeonApiCameraInfo(open val pigeonRegistrar: CameraXLibraryPigeo abstract fun lensFacing(pigeon_instance: androidx.camera.core.CameraInfo): LensFacing /** Returns a ExposureState. */ - abstract fun exposureState(pigeon_instance: androidx.camera.core.CameraInfo): androidx.camera.core.ExposureState + abstract fun exposureState( + pigeon_instance: androidx.camera.core.CameraInfo + ): androidx.camera.core.ExposureState /** A LiveData of the camera's state. */ - abstract fun getCameraState(pigeon_instance: androidx.camera.core.CameraInfo): io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + abstract fun getCameraState( + pigeon_instance: androidx.camera.core.CameraInfo + ): io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper /** A LiveData of ZoomState. */ - abstract fun getZoomState(pigeon_instance: androidx.camera.core.CameraInfo): io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + abstract fun getZoomState( + pigeon_instance: androidx.camera.core.CameraInfo + ): io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraInfo?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraInfo.getCameraState", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraInfo.getCameraState", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.CameraInfo - val wrapped: List = try { - listOf(api.getCameraState(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getCameraState(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2202,16 +2226,21 @@ abstract class PigeonApiCameraInfo(open val pigeonRegistrar: CameraXLibraryPigeo } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraInfo.getZoomState", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraInfo.getZoomState", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.CameraInfo - val wrapped: List = try { - listOf(api.getZoomState(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getZoomState(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2223,16 +2252,19 @@ abstract class PigeonApiCameraInfo(open val pigeonRegistrar: CameraXLibraryPigeo @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraInfo and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.CameraInfo, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.CameraInfo, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val sensorRotationDegreesArg = sensorRotationDegrees(pigeon_instanceArg) val lensFacingArg = lensFacing(pigeon_instanceArg) val exposureStateArg = exposureState(pigeon_instanceArg) @@ -2240,30 +2272,36 @@ abstract class PigeonApiCameraInfo(open val pigeonRegistrar: CameraXLibraryPigeo val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) - channel.send(listOf(pigeon_identifierArg, sensorRotationDegreesArg, lensFacingArg, exposureStateArg)) { - if (it is List<*>) { - if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) - } else { - callback(Result.success(Unit)) + channel.send( + listOf(pigeon_identifierArg, sensorRotationDegreesArg, lensFacingArg, exposureStateArg)) { + if (it is List<*>) { + if (it.size > 1) { + callback( + Result.failure( + CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + } else { + callback(Result.success(Unit)) + } + } else { + callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) + } } - } else { - callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } - } } } - } /** - * A set of requirements and priorities used to select a camera or return a - * filtered set of cameras. + * A set of requirements and priorities used to select a camera or return a filtered set of cameras. * * See https://developer.android.com/reference/androidx/camera/core/CameraSelector. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraSelector(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun pigeon_defaultConstructor(requireLensFacing: LensFacing?, cameraInfoForFilter: androidx.camera.core.CameraInfo?): androidx.camera.core.CameraSelector +abstract class PigeonApiCameraSelector( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { + abstract fun pigeon_defaultConstructor( + requireLensFacing: LensFacing?, + cameraInfoForFilter: androidx.camera.core.CameraInfo? + ): androidx.camera.core.CameraSelector /** A static `CameraSelector` that selects the default back facing camera. */ abstract fun defaultBackCamera(): androidx.camera.core.CameraSelector @@ -2271,30 +2309,37 @@ abstract class PigeonApiCameraSelector(open val pigeonRegistrar: CameraXLibraryP /** A static `CameraSelector` that selects the default front facing camera. */ abstract fun defaultFrontCamera(): androidx.camera.core.CameraSelector - /** - * Filters the input `CameraInfo`s using the `CameraFilter`s assigned to the - * selector. - */ - abstract fun filter(pigeon_instance: androidx.camera.core.CameraSelector, cameraInfos: List): List + /** Filters the input `CameraInfo`s using the `CameraFilter`s assigned to the selector. */ + abstract fun filter( + pigeon_instance: androidx.camera.core.CameraSelector, + cameraInfos: List + ): List companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraSelector?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val requireLensFacingArg = args[1] as LensFacing? val cameraInfoForFilterArg = args[2] as androidx.camera.core.CameraInfo? - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(requireLensFacingArg,cameraInfoForFilterArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(requireLensFacingArg, cameraInfoForFilterArg), + pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2302,17 +2347,23 @@ abstract class PigeonApiCameraSelector(open val pigeonRegistrar: CameraXLibraryP } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraSelector.defaultBackCamera", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraSelector.defaultBackCamera", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.defaultBackCamera(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.defaultBackCamera(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2320,17 +2371,23 @@ abstract class PigeonApiCameraSelector(open val pigeonRegistrar: CameraXLibraryP } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraSelector.defaultFrontCamera", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraSelector.defaultFrontCamera", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.defaultFrontCamera(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.defaultFrontCamera(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2338,17 +2395,22 @@ abstract class PigeonApiCameraSelector(open val pigeonRegistrar: CameraXLibraryP } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraSelector.filter", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraSelector.filter", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.CameraSelector val cameraInfosArg = args[1] as List - val wrapped: List = try { - listOf(api.filter(pigeon_instanceArg, cameraInfosArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.filter(pigeon_instanceArg, cameraInfosArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2360,73 +2422,97 @@ abstract class PigeonApiCameraSelector(open val pigeonRegistrar: CameraXLibraryP @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraSelector and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.CameraSelector, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.CameraSelector, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * A singleton which can be used to bind the lifecycle of cameras to any - * `LifecycleOwner` within an application's process. + * A singleton which can be used to bind the lifecycle of cameras to any `LifecycleOwner` within an + * application's process. * * See https://developer.android.com/reference/androidx/camera/lifecycle/ProcessCameraProvider. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiProcessCameraProvider(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiProcessCameraProvider( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** Retrieves the ProcessCameraProvider associated with the current process. */ - abstract fun getInstance(callback: (Result) -> Unit) + abstract fun getInstance( + callback: (Result) -> Unit + ) /** The `CameraInfo` instances of the available cameras. */ - abstract fun getAvailableCameraInfos(pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider): List + abstract fun getAvailableCameraInfos( + pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider + ): List /** Binds the collection of `UseCase` to a `LifecycleOwner`. */ - abstract fun bindToLifecycle(pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, cameraSelector: androidx.camera.core.CameraSelector, useCases: List): androidx.camera.core.Camera + abstract fun bindToLifecycle( + pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, + cameraSelector: androidx.camera.core.CameraSelector, + useCases: List + ): androidx.camera.core.Camera /** Returns true if the `UseCase` is bound to a lifecycle. */ - abstract fun isBound(pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, useCase: androidx.camera.core.UseCase): Boolean + abstract fun isBound( + pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, + useCase: androidx.camera.core.UseCase + ): Boolean /** Unbinds all specified use cases from the lifecycle provider. */ - abstract fun unbind(pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, useCases: List) + abstract fun unbind( + pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider, + useCases: List + ) - /** - * Unbinds all use cases from the lifecycle provider and removes them from - * CameraX. - */ + /** Unbinds all use cases from the lifecycle provider and removes them from CameraX. */ abstract fun unbindAll(pigeon_instance: androidx.camera.lifecycle.ProcessCameraProvider) companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiProcessCameraProvider?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + api: PigeonApiProcessCameraProvider? + ) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.getInstance", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.getInstance", + codec) if (api != null) { channel.setMessageHandler { _, reply -> - api.getInstance{ result: Result -> + api.getInstance { result: Result -> val error = result.exceptionOrNull() if (error != null) { reply.reply(CameraXLibraryPigeonUtils.wrapError(error)) @@ -2441,16 +2527,21 @@ abstract class PigeonApiProcessCameraProvider(open val pigeonRegistrar: CameraXL } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.getAvailableCameraInfos", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.getAvailableCameraInfos", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.lifecycle.ProcessCameraProvider - val wrapped: List = try { - listOf(api.getAvailableCameraInfos(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getAvailableCameraInfos(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2458,18 +2549,23 @@ abstract class PigeonApiProcessCameraProvider(open val pigeonRegistrar: CameraXL } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.bindToLifecycle", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.bindToLifecycle", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.lifecycle.ProcessCameraProvider val cameraSelectorArg = args[1] as androidx.camera.core.CameraSelector val useCasesArg = args[2] as List - val wrapped: List = try { - listOf(api.bindToLifecycle(pigeon_instanceArg, cameraSelectorArg, useCasesArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.bindToLifecycle(pigeon_instanceArg, cameraSelectorArg, useCasesArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2477,17 +2573,22 @@ abstract class PigeonApiProcessCameraProvider(open val pigeonRegistrar: CameraXL } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.isBound", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.isBound", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.lifecycle.ProcessCameraProvider val useCaseArg = args[1] as androidx.camera.core.UseCase - val wrapped: List = try { - listOf(api.isBound(pigeon_instanceArg, useCaseArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.isBound(pigeon_instanceArg, useCaseArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2495,18 +2596,23 @@ abstract class PigeonApiProcessCameraProvider(open val pigeonRegistrar: CameraXL } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.unbind", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.unbind", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.lifecycle.ProcessCameraProvider val useCasesArg = args[1] as List - val wrapped: List = try { - api.unbind(pigeon_instanceArg, useCasesArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.unbind(pigeon_instanceArg, useCasesArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2514,17 +2620,22 @@ abstract class PigeonApiProcessCameraProvider(open val pigeonRegistrar: CameraXL } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.unbindAll", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.unbindAll", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.lifecycle.ProcessCameraProvider - val wrapped: List = try { - api.unbindAll(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.unbindAll(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2536,34 +2647,38 @@ abstract class PigeonApiProcessCameraProvider(open val pigeonRegistrar: CameraXL @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ProcessCameraProvider and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.lifecycle.ProcessCameraProvider, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.lifecycle.ProcessCameraProvider, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * The use case which all other use cases are built on top of. @@ -2574,16 +2689,19 @@ abstract class PigeonApiProcessCameraProvider(open val pigeonRegistrar: CameraXL open class PigeonApiUseCase(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of UseCase and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.UseCase, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.UseCase, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.UseCase.pigeon_newInstance" @@ -2591,48 +2709,56 @@ open class PigeonApiUseCase(open val pigeonRegistrar: CameraXLibraryPigeonProxyA channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * The camera interface is used to control the flow of data to use cases, - * control the camera via the `CameraControl`, and publish the state of the - * camera via CameraInfo. + * The camera interface is used to control the flow of data to use cases, control the camera via the + * `CameraControl`, and publish the state of the camera via CameraInfo. * * See https://developer.android.com/reference/kotlin/androidx/camera/core/Camera. */ @Suppress("UNCHECKED_CAST") abstract class PigeonApiCamera(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** The `CameraControl` for the Camera. */ - abstract fun cameraControl(pigeon_instance: androidx.camera.core.Camera): androidx.camera.core.CameraControl + abstract fun cameraControl( + pigeon_instance: androidx.camera.core.Camera + ): androidx.camera.core.CameraControl /** Returns information about this camera. */ - abstract fun getCameraInfo(pigeon_instance: androidx.camera.core.Camera): androidx.camera.core.CameraInfo + abstract fun getCameraInfo( + pigeon_instance: androidx.camera.core.Camera + ): androidx.camera.core.CameraInfo companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCamera?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera.getCameraInfo", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Camera.getCameraInfo", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Camera - val wrapped: List = try { - listOf(api.getCameraInfo(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getCameraInfo(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2644,16 +2770,19 @@ abstract class PigeonApiCamera(open val pigeonRegistrar: CameraXLibraryPigeonPro @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Camera and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.Camera, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.Camera, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val cameraControlArg = cameraControl(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec @@ -2662,47 +2791,63 @@ abstract class PigeonApiCamera(open val pigeonRegistrar: CameraXLibraryPigeonPro channel.send(listOf(pigeon_identifierArg, cameraControlArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** Convenience class for accessing system resources. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiSystemServicesManager(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiSystemServicesManager( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { abstract fun pigeon_defaultConstructor(): SystemServicesManager - abstract fun requestCameraPermissions(pigeon_instance: SystemServicesManager, enableAudio: Boolean, callback: (Result) -> Unit) + abstract fun requestCameraPermissions( + pigeon_instance: SystemServicesManager, + enableAudio: Boolean, + callback: (Result) -> Unit + ) - /** - * Returns a path to be used to create a temp file in the current cache - * directory. - */ - abstract fun getTempFilePath(pigeon_instance: SystemServicesManager, prefix: String, suffix: String): String + /** Returns a path to be used to create a temp file in the current cache directory. */ + abstract fun getTempFilePath( + pigeon_instance: SystemServicesManager, + prefix: String, + suffix: String + ): String companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiSystemServicesManager?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + api: PigeonApiSystemServicesManager? + ) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2710,13 +2855,18 @@ abstract class PigeonApiSystemServicesManager(open val pigeonRegistrar: CameraXL } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.requestCameraPermissions", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.requestCameraPermissions", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as SystemServicesManager val enableAudioArg = args[1] as Boolean - api.requestCameraPermissions(pigeon_instanceArg, enableAudioArg) { result: Result -> + api.requestCameraPermissions(pigeon_instanceArg, enableAudioArg) { + result: Result -> val error = result.exceptionOrNull() if (error != null) { reply.reply(CameraXLibraryPigeonUtils.wrapError(error)) @@ -2731,18 +2881,23 @@ abstract class PigeonApiSystemServicesManager(open val pigeonRegistrar: CameraXL } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.getTempFilePath", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.getTempFilePath", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as SystemServicesManager val prefixArg = args[1] as String val suffixArg = args[2] as String - val wrapped: List = try { - listOf(api.getTempFilePath(pigeon_instanceArg, prefixArg, suffixArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getTempFilePath(pigeon_instanceArg, prefixArg, suffixArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2754,37 +2909,49 @@ abstract class PigeonApiSystemServicesManager(open val pigeonRegistrar: CameraXL @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of SystemServicesManager and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: SystemServicesManager, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: SystemServicesManager, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { + } else { callback( Result.failure( - CameraXError("new-instance-error", "Attempting to create a new Dart instance of SystemServicesManager, but the class has a nonnull callback method.", ""))) + CameraXError( + "new-instance-error", + "Attempting to create a new Dart instance of SystemServicesManager, but the class has a nonnull callback method.", + ""))) } } - fun onCameraError(pigeon_instanceArg: SystemServicesManager, errorDescriptionArg: String, callback: (Result) -> Unit) -{ + fun onCameraError( + pigeon_instanceArg: SystemServicesManager, + errorDescriptionArg: String, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) return - } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback( Result.failure( - CameraXError("missing-instance-error", "Callback to `SystemServicesManager.onCameraError` failed because native instance was not in the instance manager.", ""))) + CameraXError( + "missing-instance-error", + "Callback to `SystemServicesManager.onCameraError` failed because native instance was not in the instance manager.", + ""))) return } val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_instanceArg, errorDescriptionArg)) { if (it is List<*>) { @@ -2795,57 +2962,63 @@ abstract class PigeonApiSystemServicesManager(open val pigeonRegistrar: CameraXL } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } - } /** Contains data when an attempt to retrieve camera permissions fails. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraPermissionsError(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCameraPermissionsError( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { abstract fun errorCode(pigeon_instance: CameraPermissionsError): String abstract fun description(pigeon_instance: CameraPermissionsError): String @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraPermissionsError and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: CameraPermissionsError, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: CameraPermissionsError, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val errorCodeArg = errorCode(pigeon_instanceArg) val descriptionArg = description(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, errorCodeArg, descriptionArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * Support class to help to determine the media orientation based on the - * orientation of the device. + * Support class to help to determine the media orientation based on the orientation of the device. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiDeviceOrientationManager(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiDeviceOrientationManager( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { abstract fun pigeon_defaultConstructor(): DeviceOrientationManager abstract fun startListeningForDeviceOrientationChange(pigeon_instance: DeviceOrientationManager) @@ -2858,20 +3031,29 @@ abstract class PigeonApiDeviceOrientationManager(open val pigeonRegistrar: Camer companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiDeviceOrientationManager?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + api: PigeonApiDeviceOrientationManager? + ) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2879,17 +3061,22 @@ abstract class PigeonApiDeviceOrientationManager(open val pigeonRegistrar: Camer } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.startListeningForDeviceOrientationChange", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.startListeningForDeviceOrientationChange", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as DeviceOrientationManager - val wrapped: List = try { - api.startListeningForDeviceOrientationChange(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.startListeningForDeviceOrientationChange(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2897,17 +3084,22 @@ abstract class PigeonApiDeviceOrientationManager(open val pigeonRegistrar: Camer } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.stopListeningForDeviceOrientationChange", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.stopListeningForDeviceOrientationChange", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as DeviceOrientationManager - val wrapped: List = try { - api.stopListeningForDeviceOrientationChange(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.stopListeningForDeviceOrientationChange(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2915,16 +3107,21 @@ abstract class PigeonApiDeviceOrientationManager(open val pigeonRegistrar: Camer } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.getDefaultDisplayRotation", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.getDefaultDisplayRotation", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as DeviceOrientationManager - val wrapped: List = try { - listOf(api.getDefaultDisplayRotation(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getDefaultDisplayRotation(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2932,16 +3129,21 @@ abstract class PigeonApiDeviceOrientationManager(open val pigeonRegistrar: Camer } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.getUiOrientation", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.getUiOrientation", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as DeviceOrientationManager - val wrapped: List = try { - listOf(api.getUiOrientation(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getUiOrientation(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -2952,38 +3154,52 @@ abstract class PigeonApiDeviceOrientationManager(open val pigeonRegistrar: Camer } @Suppress("LocalVariableName", "FunctionName") - /** Creates a Dart instance of DeviceOrientationManager and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: DeviceOrientationManager, callback: (Result) -> Unit) -{ + /** + * Creates a Dart instance of DeviceOrientationManager and attaches it to [pigeon_instanceArg]. + */ + fun pigeon_newInstance( + pigeon_instanceArg: DeviceOrientationManager, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { + } else { callback( Result.failure( - CameraXError("new-instance-error", "Attempting to create a new Dart instance of DeviceOrientationManager, but the class has a nonnull callback method.", ""))) + CameraXError( + "new-instance-error", + "Attempting to create a new Dart instance of DeviceOrientationManager, but the class has a nonnull callback method.", + ""))) } } - fun onDeviceOrientationChanged(pigeon_instanceArg: DeviceOrientationManager, orientationArg: String, callback: (Result) -> Unit) -{ + fun onDeviceOrientationChanged( + pigeon_instanceArg: DeviceOrientationManager, + orientationArg: String, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) return - } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback( Result.failure( - CameraXError("missing-instance-error", "Callback to `DeviceOrientationManager.onDeviceOrientationChanged` failed because native instance was not in the instance manager.", ""))) + CameraXError( + "missing-instance-error", + "Callback to `DeviceOrientationManager.onDeviceOrientationChanged` failed because native instance was not in the instance manager.", + ""))) return } val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_instanceArg, orientationArg)) { if (it is List<*>) { @@ -2994,10 +3210,9 @@ abstract class PigeonApiDeviceOrientationManager(open val pigeonRegistrar: Camer } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } - } /** * A use case that provides a camera preview stream for displaying on-screen. @@ -3006,59 +3221,76 @@ abstract class PigeonApiDeviceOrientationManager(open val pigeonRegistrar: Camer */ @Suppress("UNCHECKED_CAST") abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun pigeon_defaultConstructor(resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, targetRotation: Long?, targetFpsRange: android.util.Range<*>?): androidx.camera.core.Preview + abstract fun pigeon_defaultConstructor( + resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, + targetRotation: Long?, + targetFpsRange: android.util.Range<*>? + ): androidx.camera.core.Preview - abstract fun resolutionSelector(pigeon_instance: androidx.camera.core.Preview): androidx.camera.core.resolutionselector.ResolutionSelector? + abstract fun resolutionSelector( + pigeon_instance: androidx.camera.core.Preview + ): androidx.camera.core.resolutionselector.ResolutionSelector? /** * Sets a SurfaceProvider to provide a Surface for Preview. * * This is a convenience function that - * 1. Creates a `SurfaceProvider` using the `SurfaceProducer` provided by the - * Flutter engine. + * 1. Creates a `SurfaceProvider` using the `SurfaceProducer` provided by the Flutter engine. * 2. Sets this method with the created `SurfaceProvider`. - * 3. Returns the texture id of the `TextureEntry` that provided the - * `SurfaceProducer`. + * 3. Returns the texture id of the `TextureEntry` that provided the `SurfaceProducer`. */ - abstract fun setSurfaceProvider(pigeon_instance: androidx.camera.core.Preview, systemServicesManager: SystemServicesManager): Long + abstract fun setSurfaceProvider( + pigeon_instance: androidx.camera.core.Preview, + systemServicesManager: SystemServicesManager + ): Long - /** - * Releases the `SurfaceProducer` created in `setSurfaceProvider` if one was - * created. - */ + /** Releases the `SurfaceProducer` created in `setSurfaceProvider` if one was created. */ abstract fun releaseSurfaceProvider(pigeon_instance: androidx.camera.core.Preview) /** Gets selected resolution information of the `Preview`. */ - abstract fun getResolutionInfo(pigeon_instance: androidx.camera.core.Preview): androidx.camera.core.ResolutionInfo? + abstract fun getResolutionInfo( + pigeon_instance: androidx.camera.core.Preview + ): androidx.camera.core.ResolutionInfo? /** Sets the target rotation. */ abstract fun setTargetRotation(pigeon_instance: androidx.camera.core.Preview, rotation: Long) /** - * Returns whether or not the preview's surface producer handles correctly - * rotating the camera preview automatically. + * Returns whether or not the preview's surface producer handles correctly rotating the camera + * preview automatically. */ - abstract fun surfaceProducerHandlesCropAndRotation(pigeon_instance: androidx.camera.core.Preview): Boolean + abstract fun surfaceProducerHandlesCropAndRotation( + pigeon_instance: androidx.camera.core.Preview + ): Boolean companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiPreview?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Preview.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val resolutionSelectorArg = args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? + val resolutionSelectorArg = + args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? val targetRotationArg = args[2] as Long? val targetFpsRangeArg = args[3] as android.util.Range<*>? - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(resolutionSelectorArg,targetRotationArg,targetFpsRangeArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor( + resolutionSelectorArg, targetRotationArg, targetFpsRangeArg), + pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3066,17 +3298,22 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.setSurfaceProvider", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Preview.setSurfaceProvider", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Preview val systemServicesManagerArg = args[1] as SystemServicesManager - val wrapped: List = try { - listOf(api.setSurfaceProvider(pigeon_instanceArg, systemServicesManagerArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.setSurfaceProvider(pigeon_instanceArg, systemServicesManagerArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3084,17 +3321,22 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.releaseSurfaceProvider", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Preview.releaseSurfaceProvider", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Preview - val wrapped: List = try { - api.releaseSurfaceProvider(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.releaseSurfaceProvider(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3102,16 +3344,21 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.getResolutionInfo", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Preview.getResolutionInfo", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Preview - val wrapped: List = try { - listOf(api.getResolutionInfo(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getResolutionInfo(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3119,18 +3366,23 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.setTargetRotation", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Preview.setTargetRotation", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Preview val rotationArg = args[1] as Long - val wrapped: List = try { - api.setTargetRotation(pigeon_instanceArg, rotationArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.setTargetRotation(pigeon_instanceArg, rotationArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3138,16 +3390,21 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Preview.surfaceProducerHandlesCropAndRotation", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Preview.surfaceProducerHandlesCropAndRotation", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.Preview - val wrapped: List = try { - listOf(api.surfaceProducerHandlesCropAndRotation(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.surfaceProducerHandlesCropAndRotation(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3159,16 +3416,19 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Preview and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.Preview, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.Preview, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val resolutionSelectorArg = resolutionSelector(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec @@ -3177,24 +3437,23 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr channel.send(listOf(pigeon_identifierArg, resolutionSelectorArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiUseCase] used to access callback methods */ - fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase - { + fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase { return pigeonRegistrar.getPigeonApiUseCase() } - } /** * A use case that provides camera stream suitable for video application. @@ -3202,34 +3461,50 @@ abstract class PigeonApiPreview(open val pigeonRegistrar: CameraXLibraryPigeonPr * See https://developer.android.com/reference/kotlin/androidx/camera/video/VideoCapture. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiVideoCapture(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiVideoCapture( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** Create a `VideoCapture` associated with the given `VideoOutput`. */ - abstract fun withOutput(videoOutput: androidx.camera.video.VideoOutput, targetFpsRange: android.util.Range<*>?): androidx.camera.video.VideoCapture<*> + abstract fun withOutput( + videoOutput: androidx.camera.video.VideoOutput, + targetFpsRange: android.util.Range<*>? + ): androidx.camera.video.VideoCapture<*> /** Gets the VideoOutput associated with this VideoCapture. */ - abstract fun getOutput(pigeon_instance: androidx.camera.video.VideoCapture<*>): androidx.camera.video.VideoOutput + abstract fun getOutput( + pigeon_instance: androidx.camera.video.VideoCapture<*> + ): androidx.camera.video.VideoOutput /** Sets the desired rotation of the output video. */ - abstract fun setTargetRotation(pigeon_instance: androidx.camera.video.VideoCapture<*>, rotation: Long) + abstract fun setTargetRotation( + pigeon_instance: androidx.camera.video.VideoCapture<*>, + rotation: Long + ) companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiVideoCapture?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.VideoCapture.withOutput", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.VideoCapture.withOutput", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val videoOutputArg = args[1] as androidx.camera.video.VideoOutput val targetFpsRangeArg = args[2] as android.util.Range<*>? - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.withOutput(videoOutputArg,targetFpsRangeArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.withOutput(videoOutputArg, targetFpsRangeArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3237,16 +3512,21 @@ abstract class PigeonApiVideoCapture(open val pigeonRegistrar: CameraXLibraryPig } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.VideoCapture.getOutput", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.VideoCapture.getOutput", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.VideoCapture<*> - val wrapped: List = try { - listOf(api.getOutput(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getOutput(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3254,18 +3534,23 @@ abstract class PigeonApiVideoCapture(open val pigeonRegistrar: CameraXLibraryPig } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.VideoCapture.setTargetRotation", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.VideoCapture.setTargetRotation", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.VideoCapture<*> val rotationArg = args[1] as Long - val wrapped: List = try { - api.setTargetRotation(pigeon_instanceArg, rotationArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.setTargetRotation(pigeon_instanceArg, rotationArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3277,16 +3562,19 @@ abstract class PigeonApiVideoCapture(open val pigeonRegistrar: CameraXLibraryPig @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of VideoCapture and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.VideoCapture<*>, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.video.VideoCapture<*>, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.VideoCapture.pigeon_newInstance" @@ -3294,24 +3582,23 @@ abstract class PigeonApiVideoCapture(open val pigeonRegistrar: CameraXLibraryPig channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiUseCase] used to access callback methods */ - fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase - { + fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase { return pigeonRegistrar.getPigeonApiUseCase() } - } /** * A class that will produce video data from a Surface. @@ -3322,16 +3609,19 @@ abstract class PigeonApiVideoCapture(open val pigeonRegistrar: CameraXLibraryPig open class PigeonApiVideoOutput(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of VideoOutput and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.VideoOutput, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.video.VideoOutput, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.VideoOutput.pigeon_newInstance" @@ -3339,27 +3629,31 @@ open class PigeonApiVideoOutput(open val pigeonRegistrar: CameraXLibraryPigeonPr channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * An implementation of `VideoOutput` for starting video recordings that are - * saved to a File, ParcelFileDescriptor, or MediaStore. + * An implementation of `VideoOutput` for starting video recordings that are saved to a File, + * ParcelFileDescriptor, or MediaStore. * * See https://developer.android.com/reference/kotlin/androidx/camera/video/Recorder. */ @Suppress("UNCHECKED_CAST") abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun pigeon_defaultConstructor(aspectRatio: Long?, targetVideoEncodingBitRate: Long?, qualitySelector: androidx.camera.video.QualitySelector?): androidx.camera.video.Recorder + abstract fun pigeon_defaultConstructor( + aspectRatio: Long?, + targetVideoEncodingBitRate: Long?, + qualitySelector: androidx.camera.video.QualitySelector? + ): androidx.camera.video.Recorder /** Gets the aspect ratio of this Recorder. */ abstract fun getAspectRatio(pigeon_instance: androidx.camera.video.Recorder): Long @@ -3368,17 +3662,26 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP abstract fun getTargetVideoEncodingBitRate(pigeon_instance: androidx.camera.video.Recorder): Long /** The quality selector of this Recorder. */ - abstract fun getQualitySelector(pigeon_instance: androidx.camera.video.Recorder): androidx.camera.video.QualitySelector + abstract fun getQualitySelector( + pigeon_instance: androidx.camera.video.Recorder + ): androidx.camera.video.QualitySelector /** Prepares a recording that will be saved to a File. */ - abstract fun prepareRecording(pigeon_instance: androidx.camera.video.Recorder, path: String): androidx.camera.video.PendingRecording + abstract fun prepareRecording( + pigeon_instance: androidx.camera.video.Recorder, + path: String + ): androidx.camera.video.PendingRecording companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiRecorder?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -3386,12 +3689,16 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP val aspectRatioArg = args[1] as Long? val targetVideoEncodingBitRateArg = args[2] as Long? val qualitySelectorArg = args[3] as androidx.camera.video.QualitySelector? - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(aspectRatioArg,targetVideoEncodingBitRateArg,qualitySelectorArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor( + aspectRatioArg, targetVideoEncodingBitRateArg, qualitySelectorArg), + pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3399,16 +3706,21 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recorder.getAspectRatio", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Recorder.getAspectRatio", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recorder - val wrapped: List = try { - listOf(api.getAspectRatio(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getAspectRatio(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3416,16 +3728,21 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recorder.getTargetVideoEncodingBitRate", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Recorder.getTargetVideoEncodingBitRate", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recorder - val wrapped: List = try { - listOf(api.getTargetVideoEncodingBitRate(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getTargetVideoEncodingBitRate(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3433,16 +3750,21 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recorder.getQualitySelector", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Recorder.getQualitySelector", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recorder - val wrapped: List = try { - listOf(api.getQualitySelector(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getQualitySelector(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3450,17 +3772,22 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recorder.prepareRecording", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Recorder.prepareRecording", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recorder val pathArg = args[1] as String - val wrapped: List = try { - listOf(api.prepareRecording(pigeon_instanceArg, pathArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.prepareRecording(pigeon_instanceArg, pathArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3472,16 +3799,19 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Recorder and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.Recorder, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.video.Recorder, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_newInstance" @@ -3489,46 +3819,56 @@ abstract class PigeonApiRecorder(open val pigeonRegistrar: CameraXLibraryPigeonP channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiVideoOutput] used to access callback methods */ - fun pigeon_getPigeonApiVideoOutput(): PigeonApiVideoOutput - { + fun pigeon_getPigeonApiVideoOutput(): PigeonApiVideoOutput { return pigeonRegistrar.getPigeonApiVideoOutput() } - } /** Listens for `VideoRecordEvent`s from a `PendingRecording`. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiVideoRecordEventListener(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiVideoRecordEventListener( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { abstract fun pigeon_defaultConstructor(): VideoRecordEventListener companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiVideoRecordEventListener?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + api: PigeonApiVideoRecordEventListener? + ) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3539,33 +3879,46 @@ abstract class PigeonApiVideoRecordEventListener(open val pigeonRegistrar: Camer } @Suppress("LocalVariableName", "FunctionName") - /** Creates a Dart instance of VideoRecordEventListener and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: VideoRecordEventListener, callback: (Result) -> Unit) -{ + /** + * Creates a Dart instance of VideoRecordEventListener and attaches it to [pigeon_instanceArg]. + */ + fun pigeon_newInstance( + pigeon_instanceArg: VideoRecordEventListener, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { + } else { callback( Result.failure( - CameraXError("new-instance-error", "Attempting to create a new Dart instance of VideoRecordEventListener, but the class has a nonnull callback method.", ""))) + CameraXError( + "new-instance-error", + "Attempting to create a new Dart instance of VideoRecordEventListener, but the class has a nonnull callback method.", + ""))) } } - fun onEvent(pigeon_instanceArg: VideoRecordEventListener, eventArg: androidx.camera.video.VideoRecordEvent, callback: (Result) -> Unit) -{ + fun onEvent( + pigeon_instanceArg: VideoRecordEventListener, + eventArg: androidx.camera.video.VideoRecordEvent, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) return - } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback( Result.failure( - CameraXError("missing-instance-error", "Callback to `VideoRecordEventListener.onEvent` failed because native instance was not in the instance manager.", ""))) + CameraXError( + "missing-instance-error", + "Callback to `VideoRecordEventListener.onEvent` failed because native instance was not in the instance manager.", + ""))) return } val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -3581,10 +3934,9 @@ abstract class PigeonApiVideoRecordEventListener(open val pigeonRegistrar: Camer } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } - } /** * A recording that can be started at a future time. @@ -3592,42 +3944,58 @@ abstract class PigeonApiVideoRecordEventListener(open val pigeonRegistrar: Camer * See https://developer.android.com/reference/kotlin/androidx/camera/video/PendingRecording. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiPendingRecording(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiPendingRecording( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** Enables/disables audio to be recorded for this recording. */ - abstract fun withAudioEnabled(pigeon_instance: androidx.camera.video.PendingRecording, initialMuted: Boolean): androidx.camera.video.PendingRecording + abstract fun withAudioEnabled( + pigeon_instance: androidx.camera.video.PendingRecording, + initialMuted: Boolean + ): androidx.camera.video.PendingRecording /** * Configures the recording to be a persistent recording. * - * A persistent recording will only be stopped by explicitly calling [Recording.stop] or [Recording.close] - * and will ignore events that would normally cause recording to stop, such as lifecycle events - * or explicit unbinding of a [VideoCapture] use case that the recording's Recorder is attached to. + * A persistent recording will only be stopped by explicitly calling [Recording.stop] or + * [Recording.close] and will ignore events that would normally cause recording to stop, such as + * lifecycle events or explicit unbinding of a [VideoCapture] use case that the recording's + * Recorder is attached to. * - * To switch to a different camera stream while a recording is in progress, - * first create the recording as persistent recording, - * then rebind the [VideoCapture] it's associated with to a different camera. + * To switch to a different camera stream while a recording is in progress, first create the + * recording as persistent recording, then rebind the [VideoCapture] it's associated with to a + * different camera. */ - abstract fun asPersistentRecording(pigeon_instance: androidx.camera.video.PendingRecording): androidx.camera.video.PendingRecording + abstract fun asPersistentRecording( + pigeon_instance: androidx.camera.video.PendingRecording + ): androidx.camera.video.PendingRecording /** Starts the recording, making it an active recording. */ - abstract fun start(pigeon_instance: androidx.camera.video.PendingRecording, listener: VideoRecordEventListener): androidx.camera.video.Recording + abstract fun start( + pigeon_instance: androidx.camera.video.PendingRecording, + listener: VideoRecordEventListener + ): androidx.camera.video.Recording companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiPendingRecording?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.PendingRecording.withAudioEnabled", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.PendingRecording.withAudioEnabled", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.PendingRecording val initialMutedArg = args[1] as Boolean - val wrapped: List = try { - listOf(api.withAudioEnabled(pigeon_instanceArg, initialMutedArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.withAudioEnabled(pigeon_instanceArg, initialMutedArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3635,16 +4003,21 @@ abstract class PigeonApiPendingRecording(open val pigeonRegistrar: CameraXLibrar } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.PendingRecording.asPersistentRecording", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.PendingRecording.asPersistentRecording", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.PendingRecording - val wrapped: List = try { - listOf(api.asPersistentRecording(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.asPersistentRecording(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3652,17 +4025,22 @@ abstract class PigeonApiPendingRecording(open val pigeonRegistrar: CameraXLibrar } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.PendingRecording.start", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.PendingRecording.start", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.PendingRecording val listenerArg = args[1] as VideoRecordEventListener - val wrapped: List = try { - listOf(api.start(pigeon_instanceArg, listenerArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.start(pigeon_instanceArg, listenerArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3674,34 +4052,38 @@ abstract class PigeonApiPendingRecording(open val pigeonRegistrar: CameraXLibrar @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of PendingRecording and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.PendingRecording, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.video.PendingRecording, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.PendingRecording.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.PendingRecording.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * Provides controls for the currently active recording. @@ -3731,17 +4113,20 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiRecording?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.close", codec) + val channel = + BasicMessageChannel( + binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.close", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recording - val wrapped: List = try { - api.close(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.close(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3749,17 +4134,20 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.pause", codec) + val channel = + BasicMessageChannel( + binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.pause", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recording - val wrapped: List = try { - api.pause(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pause(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3767,17 +4155,22 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.resume", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Recording.resume", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recording - val wrapped: List = try { - api.resume(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.resume(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3785,17 +4178,20 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.stop", codec) + val channel = + BasicMessageChannel( + binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Recording.stop", codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.video.Recording - val wrapped: List = try { - api.stop(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.stop(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3807,16 +4203,19 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Recording and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.Recording, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.video.Recording, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.Recording.pigeon_newInstance" @@ -3824,17 +4223,17 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * A use case for taking a picture. @@ -3842,16 +4241,31 @@ abstract class PigeonApiRecording(open val pigeonRegistrar: CameraXLibraryPigeon * See https://developer.android.com/reference/kotlin/androidx/camera/core/ImageCapture. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiImageCapture(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun pigeon_defaultConstructor(resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, targetRotation: Long?, flashMode: CameraXFlashMode?): androidx.camera.core.ImageCapture - - abstract fun resolutionSelector(pigeon_instance: androidx.camera.core.ImageCapture): androidx.camera.core.resolutionselector.ResolutionSelector? +abstract class PigeonApiImageCapture( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { + abstract fun pigeon_defaultConstructor( + resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, + targetRotation: Long?, + flashMode: CameraXFlashMode? + ): androidx.camera.core.ImageCapture + + abstract fun resolutionSelector( + pigeon_instance: androidx.camera.core.ImageCapture + ): androidx.camera.core.resolutionselector.ResolutionSelector? /** Set the flash mode. */ - abstract fun setFlashMode(pigeon_instance: androidx.camera.core.ImageCapture, flashMode: CameraXFlashMode) + abstract fun setFlashMode( + pigeon_instance: androidx.camera.core.ImageCapture, + flashMode: CameraXFlashMode + ) /** Captures a new still image for in memory access. */ - abstract fun takePicture(pigeon_instance: androidx.camera.core.ImageCapture, systemServicesManager: SystemServicesManager, callback: (Result) -> Unit) + abstract fun takePicture( + pigeon_instance: androidx.camera.core.ImageCapture, + systemServicesManager: SystemServicesManager, + callback: (Result) -> Unit + ) /** Sets the desired rotation of the output image. */ abstract fun setTargetRotation(pigeon_instance: androidx.camera.core.ImageCapture, rotation: Long) @@ -3861,20 +4275,29 @@ abstract class PigeonApiImageCapture(open val pigeonRegistrar: CameraXLibraryPig fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiImageCapture?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageCapture.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageCapture.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val resolutionSelectorArg = args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? + val resolutionSelectorArg = + args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? val targetRotationArg = args[2] as Long? val flashModeArg = args[3] as CameraXFlashMode? - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(resolutionSelectorArg,targetRotationArg,flashModeArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor( + resolutionSelectorArg, targetRotationArg, flashModeArg), + pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3882,18 +4305,23 @@ abstract class PigeonApiImageCapture(open val pigeonRegistrar: CameraXLibraryPig } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageCapture.setFlashMode", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageCapture.setFlashMode", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageCapture val flashModeArg = args[1] as CameraXFlashMode - val wrapped: List = try { - api.setFlashMode(pigeon_instanceArg, flashModeArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.setFlashMode(pigeon_instanceArg, flashModeArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3901,13 +4329,18 @@ abstract class PigeonApiImageCapture(open val pigeonRegistrar: CameraXLibraryPig } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageCapture.takePicture", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageCapture.takePicture", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageCapture val systemServicesManagerArg = args[1] as SystemServicesManager - api.takePicture(pigeon_instanceArg, systemServicesManagerArg) { result: Result -> + api.takePicture(pigeon_instanceArg, systemServicesManagerArg) { result: Result + -> val error = result.exceptionOrNull() if (error != null) { reply.reply(CameraXLibraryPigeonUtils.wrapError(error)) @@ -3922,18 +4355,23 @@ abstract class PigeonApiImageCapture(open val pigeonRegistrar: CameraXLibraryPig } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageCapture.setTargetRotation", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageCapture.setTargetRotation", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageCapture val rotationArg = args[1] as Long - val wrapped: List = try { - api.setTargetRotation(pigeon_instanceArg, rotationArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.setTargetRotation(pigeon_instanceArg, rotationArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -3945,16 +4383,19 @@ abstract class PigeonApiImageCapture(open val pigeonRegistrar: CameraXLibraryPig @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ImageCapture and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ImageCapture, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.ImageCapture, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val resolutionSelectorArg = resolutionSelector(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec @@ -3963,65 +4404,80 @@ abstract class PigeonApiImageCapture(open val pigeonRegistrar: CameraXLibraryPig channel.send(listOf(pigeon_identifierArg, resolutionSelectorArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiUseCase] used to access callback methods */ - fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase - { + fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase { return pigeonRegistrar.getPigeonApiUseCase() } - } /** - * The resolution strategy defines the resolution selection sequence to select - * the best size. + * The resolution strategy defines the resolution selection sequence to select the best size. * - * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionStrategy. + * See + * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionStrategy. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiResolutionStrategy(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun pigeon_defaultConstructor(boundSize: android.util.Size, fallbackRule: ResolutionStrategyFallbackRule): androidx.camera.core.resolutionselector.ResolutionStrategy +abstract class PigeonApiResolutionStrategy( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { + abstract fun pigeon_defaultConstructor( + boundSize: android.util.Size, + fallbackRule: ResolutionStrategyFallbackRule + ): androidx.camera.core.resolutionselector.ResolutionStrategy /** A resolution strategy chooses the highest available resolution. */ - abstract fun highestAvailableStrategy(): androidx.camera.core.resolutionselector.ResolutionStrategy + abstract fun highestAvailableStrategy(): + androidx.camera.core.resolutionselector.ResolutionStrategy /** The specified bound size. */ - abstract fun getBoundSize(pigeon_instance: androidx.camera.core.resolutionselector.ResolutionStrategy): android.util.Size? + abstract fun getBoundSize( + pigeon_instance: androidx.camera.core.resolutionselector.ResolutionStrategy + ): android.util.Size? /** - * The fallback rule for choosing an alternate size when the specified bound - * size is unavailable. + * The fallback rule for choosing an alternate size when the specified bound size is unavailable. */ - abstract fun getFallbackRule(pigeon_instance: androidx.camera.core.resolutionselector.ResolutionStrategy): ResolutionStrategyFallbackRule + abstract fun getFallbackRule( + pigeon_instance: androidx.camera.core.resolutionselector.ResolutionStrategy + ): ResolutionStrategyFallbackRule companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiResolutionStrategy?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val boundSizeArg = args[1] as android.util.Size val fallbackRuleArg = args[2] as ResolutionStrategyFallbackRule - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(boundSizeArg,fallbackRuleArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(boundSizeArg, fallbackRuleArg), + pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4029,17 +4485,23 @@ abstract class PigeonApiResolutionStrategy(open val pigeonRegistrar: CameraXLibr } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.highestAvailableStrategy", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.highestAvailableStrategy", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.highestAvailableStrategy(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.highestAvailableStrategy(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4047,16 +4509,22 @@ abstract class PigeonApiResolutionStrategy(open val pigeonRegistrar: CameraXLibr } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.getBoundSize", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.getBoundSize", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = args[0] as androidx.camera.core.resolutionselector.ResolutionStrategy - val wrapped: List = try { - listOf(api.getBoundSize(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = + args[0] as androidx.camera.core.resolutionselector.ResolutionStrategy + val wrapped: List = + try { + listOf(api.getBoundSize(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4064,16 +4532,22 @@ abstract class PigeonApiResolutionStrategy(open val pigeonRegistrar: CameraXLibr } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.getFallbackRule", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.getFallbackRule", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = args[0] as androidx.camera.core.resolutionselector.ResolutionStrategy - val wrapped: List = try { - listOf(api.getFallbackRule(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = + args[0] as androidx.camera.core.resolutionselector.ResolutionStrategy + val wrapped: List = + try { + listOf(api.getFallbackRule(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4085,77 +4559,104 @@ abstract class PigeonApiResolutionStrategy(open val pigeonRegistrar: CameraXLibr @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ResolutionStrategy and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionStrategy, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionStrategy, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * A set of requirements and priorities used to select a resolution for the - * `UseCase`. + * A set of requirements and priorities used to select a resolution for the `UseCase`. * - * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionSelector. + * See + * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionSelector. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiResolutionSelector(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun pigeon_defaultConstructor(resolutionFilter: androidx.camera.core.resolutionselector.ResolutionFilter?, resolutionStrategy: androidx.camera.core.resolutionselector.ResolutionStrategy?, aspectRatioStrategy: androidx.camera.core.resolutionselector.AspectRatioStrategy?): androidx.camera.core.resolutionselector.ResolutionSelector +abstract class PigeonApiResolutionSelector( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { + abstract fun pigeon_defaultConstructor( + resolutionFilter: androidx.camera.core.resolutionselector.ResolutionFilter?, + resolutionStrategy: androidx.camera.core.resolutionselector.ResolutionStrategy?, + aspectRatioStrategy: androidx.camera.core.resolutionselector.AspectRatioStrategy? + ): androidx.camera.core.resolutionselector.ResolutionSelector /** The resolution filter to output the final desired sizes list. */ - abstract fun resolutionFilter(pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector): androidx.camera.core.resolutionselector.ResolutionFilter? + abstract fun resolutionFilter( + pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector + ): androidx.camera.core.resolutionselector.ResolutionFilter? /** The resolution selection strategy for the `UseCase`. */ - abstract fun resolutionStrategy(pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector): androidx.camera.core.resolutionselector.ResolutionStrategy? + abstract fun resolutionStrategy( + pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector + ): androidx.camera.core.resolutionselector.ResolutionStrategy? /** * Returns the specified `AspectRatioStrategy`, or - * `AspectRatioStrategy.ratio_4_3FallbackAutoStrategy` if none is specified - * when creating the ResolutionSelector. + * `AspectRatioStrategy.ratio_4_3FallbackAutoStrategy` if none is specified when creating the + * ResolutionSelector. */ - abstract fun getAspectRatioStrategy(pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector): androidx.camera.core.resolutionselector.AspectRatioStrategy + abstract fun getAspectRatioStrategy( + pigeon_instance: androidx.camera.core.resolutionselector.ResolutionSelector + ): androidx.camera.core.resolutionselector.AspectRatioStrategy companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiResolutionSelector?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val resolutionFilterArg = args[1] as androidx.camera.core.resolutionselector.ResolutionFilter? - val resolutionStrategyArg = args[2] as androidx.camera.core.resolutionselector.ResolutionStrategy? - val aspectRatioStrategyArg = args[3] as androidx.camera.core.resolutionselector.AspectRatioStrategy? - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(resolutionFilterArg,resolutionStrategyArg,aspectRatioStrategyArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val resolutionFilterArg = + args[1] as androidx.camera.core.resolutionselector.ResolutionFilter? + val resolutionStrategyArg = + args[2] as androidx.camera.core.resolutionselector.ResolutionStrategy? + val aspectRatioStrategyArg = + args[3] as androidx.camera.core.resolutionselector.AspectRatioStrategy? + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor( + resolutionFilterArg, resolutionStrategyArg, aspectRatioStrategyArg), + pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4163,16 +4664,22 @@ abstract class PigeonApiResolutionSelector(open val pigeonRegistrar: CameraXLibr } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.getAspectRatioStrategy", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.getAspectRatioStrategy", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = args[0] as androidx.camera.core.resolutionselector.ResolutionSelector - val wrapped: List = try { - listOf(api.getAspectRatioStrategy(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = + args[0] as androidx.camera.core.resolutionselector.ResolutionSelector + val wrapped: List = + try { + listOf(api.getAspectRatioStrategy(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4184,90 +4691,109 @@ abstract class PigeonApiResolutionSelector(open val pigeonRegistrar: CameraXLibr @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ResolutionSelector and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionSelector, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionSelector, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val resolutionFilterArg = resolutionFilter(pigeon_instanceArg) val resolutionStrategyArg = resolutionStrategy(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, resolutionFilterArg, resolutionStrategyArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * The aspect ratio strategy defines the sequence of aspect ratios that are - * used to select the best size for a particular image. + * The aspect ratio strategy defines the sequence of aspect ratios that are used to select the best + * size for a particular image. * - * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/AspectRatioStrategy. + * See + * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/AspectRatioStrategy. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiAspectRatioStrategy(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiAspectRatioStrategy( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** - * Creates a new AspectRatioStrategy instance, configured with the specified - * preferred aspect ratio and fallback rule. + * Creates a new AspectRatioStrategy instance, configured with the specified preferred aspect + * ratio and fallback rule. */ - abstract fun pigeon_defaultConstructor(preferredAspectRatio: AspectRatio, fallbackRule: AspectRatioStrategyFallbackRule): androidx.camera.core.resolutionselector.AspectRatioStrategy + abstract fun pigeon_defaultConstructor( + preferredAspectRatio: AspectRatio, + fallbackRule: AspectRatioStrategyFallbackRule + ): androidx.camera.core.resolutionselector.AspectRatioStrategy - /** - * The pre-defined aspect ratio strategy that selects sizes with RATIO_16_9 - * in priority. - */ - abstract fun ratio_16_9FallbackAutoStrategy(): androidx.camera.core.resolutionselector.AspectRatioStrategy + /** The pre-defined aspect ratio strategy that selects sizes with RATIO_16_9 in priority. */ + abstract fun ratio_16_9FallbackAutoStrategy(): + androidx.camera.core.resolutionselector.AspectRatioStrategy /** - * The pre-defined default aspect ratio strategy that selects sizes with - * RATIO_4_3 in priority. + * The pre-defined default aspect ratio strategy that selects sizes with RATIO_4_3 in priority. */ - abstract fun ratio_4_3FallbackAutoStrategy(): androidx.camera.core.resolutionselector.AspectRatioStrategy + abstract fun ratio_4_3FallbackAutoStrategy(): + androidx.camera.core.resolutionselector.AspectRatioStrategy /** - * The specified fallback rule for choosing the aspect ratio when the - * preferred aspect ratio is not available. + * The specified fallback rule for choosing the aspect ratio when the preferred aspect ratio is + * not available. */ - abstract fun getFallbackRule(pigeon_instance: androidx.camera.core.resolutionselector.AspectRatioStrategy): AspectRatioStrategyFallbackRule + abstract fun getFallbackRule( + pigeon_instance: androidx.camera.core.resolutionselector.AspectRatioStrategy + ): AspectRatioStrategyFallbackRule /** The specified preferred aspect ratio. */ - abstract fun getPreferredAspectRatio(pigeon_instance: androidx.camera.core.resolutionselector.AspectRatioStrategy): AspectRatio + abstract fun getPreferredAspectRatio( + pigeon_instance: androidx.camera.core.resolutionselector.AspectRatioStrategy + ): AspectRatio companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiAspectRatioStrategy?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val preferredAspectRatioArg = args[1] as AspectRatio val fallbackRuleArg = args[2] as AspectRatioStrategyFallbackRule - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(preferredAspectRatioArg,fallbackRuleArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(preferredAspectRatioArg, fallbackRuleArg), + pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4275,17 +4801,23 @@ abstract class PigeonApiAspectRatioStrategy(open val pigeonRegistrar: CameraXLib } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.ratio_16_9FallbackAutoStrategy", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.ratio_16_9FallbackAutoStrategy", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.ratio_16_9FallbackAutoStrategy(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.ratio_16_9FallbackAutoStrategy(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4293,17 +4825,23 @@ abstract class PigeonApiAspectRatioStrategy(open val pigeonRegistrar: CameraXLib } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.ratio_4_3FallbackAutoStrategy", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.ratio_4_3FallbackAutoStrategy", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.ratio_4_3FallbackAutoStrategy(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.ratio_4_3FallbackAutoStrategy(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4311,16 +4849,22 @@ abstract class PigeonApiAspectRatioStrategy(open val pigeonRegistrar: CameraXLib } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.getFallbackRule", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.getFallbackRule", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = args[0] as androidx.camera.core.resolutionselector.AspectRatioStrategy - val wrapped: List = try { - listOf(api.getFallbackRule(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = + args[0] as androidx.camera.core.resolutionselector.AspectRatioStrategy + val wrapped: List = + try { + listOf(api.getFallbackRule(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4328,16 +4872,22 @@ abstract class PigeonApiAspectRatioStrategy(open val pigeonRegistrar: CameraXLib } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.getPreferredAspectRatio", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.getPreferredAspectRatio", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = args[0] as androidx.camera.core.resolutionselector.AspectRatioStrategy - val wrapped: List = try { - listOf(api.getPreferredAspectRatio(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = + args[0] as androidx.camera.core.resolutionselector.AspectRatioStrategy + val wrapped: List = + try { + listOf(api.getPreferredAspectRatio(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4349,34 +4899,38 @@ abstract class PigeonApiAspectRatioStrategy(open val pigeonRegistrar: CameraXLib @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of AspectRatioStrategy and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.resolutionselector.AspectRatioStrategy, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.resolutionselector.AspectRatioStrategy, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * Represents the different states the camera can be in. @@ -4384,25 +4938,32 @@ abstract class PigeonApiAspectRatioStrategy(open val pigeonRegistrar: CameraXLib * See https://developer.android.com/reference/androidx/camera/core/CameraState. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraState(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCameraState( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** The camera's state. */ abstract fun type(pigeon_instance: androidx.camera.core.CameraState): CameraStateType /** Potentially returns an error the camera encountered. */ - abstract fun error(pigeon_instance: androidx.camera.core.CameraState): androidx.camera.core.CameraState.StateError? + abstract fun error( + pigeon_instance: androidx.camera.core.CameraState + ): androidx.camera.core.CameraState.StateError? @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraState and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.CameraState, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.CameraState, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val typeArg = type(pigeon_instanceArg) val errorArg = error(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -4412,17 +4973,17 @@ abstract class PigeonApiCameraState(open val pigeonRegistrar: CameraXLibraryPige channel.send(listOf(pigeon_identifierArg, typeArg, errorArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * An interface which contains the camera exposure related information. @@ -4430,48 +4991,57 @@ abstract class PigeonApiCameraState(open val pigeonRegistrar: CameraXLibraryPige * See https://developer.android.com/reference/androidx/camera/core/ExposureState. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiExposureState(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiExposureState( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** * Get the maximum and minimum exposure compensation values for * `CameraControl.setExposureCompensationIndex`. */ - abstract fun exposureCompensationRange(pigeon_instance: androidx.camera.core.ExposureState): android.util.Range<*> + abstract fun exposureCompensationRange( + pigeon_instance: androidx.camera.core.ExposureState + ): android.util.Range<*> /** Get the smallest step by which the exposure compensation can be changed. */ abstract fun exposureCompensationStep(pigeon_instance: androidx.camera.core.ExposureState): Double @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ExposureState and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ExposureState, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.ExposureState, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val exposureCompensationRangeArg = exposureCompensationRange(pigeon_instanceArg) val exposureCompensationStepArg = exposureCompensationStep(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.ExposureState.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) - channel.send(listOf(pigeon_identifierArg, exposureCompensationRangeArg, exposureCompensationStepArg)) { - if (it is List<*>) { - if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) - } else { - callback(Result.success(Unit)) + channel.send( + listOf(pigeon_identifierArg, exposureCompensationRangeArg, exposureCompensationStepArg)) { + if (it is List<*>) { + if (it.size > 1) { + callback( + Result.failure( + CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + } else { + callback(Result.success(Unit)) + } + } else { + callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) + } } - } else { - callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } - } } } - } /** * An interface which contains the zoom related information from a camera. @@ -4488,16 +5058,19 @@ abstract class PigeonApiZoomState(open val pigeonRegistrar: CameraXLibraryPigeon @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ZoomState and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ZoomState, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.ZoomState, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val minZoomRatioArg = minZoomRatio(pigeon_instanceArg) val maxZoomRatioArg = maxZoomRatio(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -4507,59 +5080,85 @@ abstract class PigeonApiZoomState(open val pigeonRegistrar: CameraXLibraryPigeon channel.send(listOf(pigeon_identifierArg, minZoomRatioArg, maxZoomRatioArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * A use case providing CPU accessible images for an app to perform image - * analysis on. + * A use case providing CPU accessible images for an app to perform image analysis on. * * See https://developer.android.com/reference/kotlin/androidx/camera/core/ImageAnalysis. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiImageAnalysis(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun pigeon_defaultConstructor(resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, targetRotation: Long?, targetFpsRange: android.util.Range<*>?, outputImageFormat: Long?): androidx.camera.core.ImageAnalysis - - abstract fun resolutionSelector(pigeon_instance: androidx.camera.core.ImageAnalysis): androidx.camera.core.resolutionselector.ResolutionSelector? +abstract class PigeonApiImageAnalysis( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { + abstract fun pigeon_defaultConstructor( + resolutionSelector: androidx.camera.core.resolutionselector.ResolutionSelector?, + targetRotation: Long?, + targetFpsRange: android.util.Range<*>?, + outputImageFormat: Long? + ): androidx.camera.core.ImageAnalysis + + abstract fun resolutionSelector( + pigeon_instance: androidx.camera.core.ImageAnalysis + ): androidx.camera.core.resolutionselector.ResolutionSelector? /** Sets an analyzer to receive and analyze images. */ - abstract fun setAnalyzer(pigeon_instance: androidx.camera.core.ImageAnalysis, analyzer: androidx.camera.core.ImageAnalysis.Analyzer) + abstract fun setAnalyzer( + pigeon_instance: androidx.camera.core.ImageAnalysis, + analyzer: androidx.camera.core.ImageAnalysis.Analyzer + ) /** Removes a previously set analyzer. */ abstract fun clearAnalyzer(pigeon_instance: androidx.camera.core.ImageAnalysis) /** Sets the target rotation. */ - abstract fun setTargetRotation(pigeon_instance: androidx.camera.core.ImageAnalysis, rotation: Long) + abstract fun setTargetRotation( + pigeon_instance: androidx.camera.core.ImageAnalysis, + rotation: Long + ) companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiImageAnalysis?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val resolutionSelectorArg = args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? + val resolutionSelectorArg = + args[1] as androidx.camera.core.resolutionselector.ResolutionSelector? val targetRotationArg = args[2] as Long? val targetFpsRangeArg = args[3] as android.util.Range<*>? val outputImageFormatArg = args[4] as Long? - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(resolutionSelectorArg,targetRotationArg,targetFpsRangeArg,outputImageFormatArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor( + resolutionSelectorArg, + targetRotationArg, + targetFpsRangeArg, + outputImageFormatArg), + pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4567,18 +5166,23 @@ abstract class PigeonApiImageAnalysis(open val pigeonRegistrar: CameraXLibraryPi } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.setAnalyzer", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.setAnalyzer", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageAnalysis val analyzerArg = args[1] as androidx.camera.core.ImageAnalysis.Analyzer - val wrapped: List = try { - api.setAnalyzer(pigeon_instanceArg, analyzerArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.setAnalyzer(pigeon_instanceArg, analyzerArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4586,17 +5190,22 @@ abstract class PigeonApiImageAnalysis(open val pigeonRegistrar: CameraXLibraryPi } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.clearAnalyzer", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.clearAnalyzer", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageAnalysis - val wrapped: List = try { - api.clearAnalyzer(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.clearAnalyzer(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4604,18 +5213,23 @@ abstract class PigeonApiImageAnalysis(open val pigeonRegistrar: CameraXLibraryPi } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.setTargetRotation", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.setTargetRotation", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageAnalysis val rotationArg = args[1] as Long - val wrapped: List = try { - api.setTargetRotation(pigeon_instanceArg, rotationArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.setTargetRotation(pigeon_instanceArg, rotationArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4627,16 +5241,19 @@ abstract class PigeonApiImageAnalysis(open val pigeonRegistrar: CameraXLibraryPi @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ImageAnalysis and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ImageAnalysis, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.ImageAnalysis, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val resolutionSelectorArg = resolutionSelector(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec @@ -4645,24 +5262,23 @@ abstract class PigeonApiImageAnalysis(open val pigeonRegistrar: CameraXLibraryPi channel.send(listOf(pigeon_identifierArg, resolutionSelectorArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiUseCase] used to access callback methods */ - fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase - { + fun pigeon_getPigeonApiUseCase(): PigeonApiUseCase { return pigeonRegistrar.getPigeonApiUseCase() } - } /** * Interface for analyzing images. @@ -4678,17 +5294,23 @@ abstract class PigeonApiAnalyzer(open val pigeonRegistrar: CameraXLibraryPigeonP fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiAnalyzer?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Analyzer.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Analyzer.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4700,33 +5322,44 @@ abstract class PigeonApiAnalyzer(open val pigeonRegistrar: CameraXLibraryPigeonP @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Analyzer and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ImageAnalysis.Analyzer, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.ImageAnalysis.Analyzer, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { + } else { callback( Result.failure( - CameraXError("new-instance-error", "Attempting to create a new Dart instance of Analyzer, but the class has a nonnull callback method.", ""))) + CameraXError( + "new-instance-error", + "Attempting to create a new Dart instance of Analyzer, but the class has a nonnull callback method.", + ""))) } } /** Analyzes an image to produce a result. */ - fun analyze(pigeon_instanceArg: androidx.camera.core.ImageAnalysis.Analyzer, imageArg: androidx.camera.core.ImageProxy, callback: (Result) -> Unit) -{ + fun analyze( + pigeon_instanceArg: androidx.camera.core.ImageAnalysis.Analyzer, + imageArg: androidx.camera.core.ImageProxy, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) return - } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (!pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback( Result.failure( - CameraXError("missing-instance-error", "Callback to `Analyzer.analyze` failed because native instance was not in the instance manager.", ""))) + CameraXError( + "missing-instance-error", + "Callback to `Analyzer.analyze` failed because native instance was not in the instance manager.", + ""))) return } val binaryMessenger = pigeonRegistrar.binaryMessenger @@ -4742,10 +5375,9 @@ abstract class PigeonApiAnalyzer(open val pigeonRegistrar: CameraXLibraryPigeonP } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } - } /** * Error that the camera has encountered. @@ -4753,85 +5385,104 @@ abstract class PigeonApiAnalyzer(open val pigeonRegistrar: CameraXLibraryPigeonP * See https://developer.android.com/reference/androidx/camera/core/CameraState.StateError. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraStateStateError(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCameraStateStateError( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** The code of this error. */ - abstract fun code(pigeon_instance: androidx.camera.core.CameraState.StateError): CameraStateErrorCode + abstract fun code( + pigeon_instance: androidx.camera.core.CameraState.StateError + ): CameraStateErrorCode @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraStateStateError and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.CameraState.StateError, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.CameraState.StateError, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val codeArg = code(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, codeArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * LiveData is a data holder class that can be observed within a given - * lifecycle. + * LiveData is a data holder class that can be observed within a given lifecycle. * - * This is a wrapper around the native class to better support the generic - * type. Java has type erasure; + * This is a wrapper around the native class to better support the generic type. Java has type + * erasure; * * See https://developer.android.com/reference/androidx/lifecycle/LiveData. */ @Suppress("UNCHECKED_CAST") abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { /** The generic type used by this instance. */ - abstract fun type(pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper): LiveDataSupportedType + abstract fun type( + pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + ): LiveDataSupportedType - /** - * Adds the given observer to the observers list within the lifespan of the - * given owner. - */ - abstract fun observe(pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper, observer: androidx.lifecycle.Observer<*>) + /** Adds the given observer to the observers list within the lifespan of the given owner. */ + abstract fun observe( + pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper, + observer: androidx.lifecycle.Observer<*> + ) /** Removes all observers that are tied to the given `LifecycleOwner`. */ - abstract fun removeObservers(pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper) + abstract fun removeObservers( + pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + ) /** Returns the current value. */ - abstract fun getValue(pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper): Any? + abstract fun getValue( + pigeon_instance: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + ): Any? companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiLiveData?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.LiveData.observe", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.LiveData.observe", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + val pigeon_instanceArg = + args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper val observerArg = args[1] as androidx.lifecycle.Observer<*> - val wrapped: List = try { - api.observe(pigeon_instanceArg, observerArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.observe(pigeon_instanceArg, observerArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4839,17 +5490,23 @@ abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.LiveData.removeObservers", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.LiveData.removeObservers", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper - val wrapped: List = try { - api.removeObservers(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = + args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + val wrapped: List = + try { + api.removeObservers(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4857,16 +5514,22 @@ abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonP } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.LiveData.getValue", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.LiveData.getValue", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper - val wrapped: List = try { - listOf(api.getValue(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val pigeon_instanceArg = + args[0] as io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper + val wrapped: List = + try { + listOf(api.getValue(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4878,16 +5541,19 @@ abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonP @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of LiveData and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: io.flutter.plugins.camerax.LiveDataProxyApi.LiveDataWrapper, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val typeArg = type(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec @@ -4896,17 +5562,17 @@ abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonP channel.send(listOf(pigeon_identifierArg, typeArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * An image proxy which has a similar interface as `android.media.Image`. @@ -4914,7 +5580,9 @@ abstract class PigeonApiLiveData(open val pigeonRegistrar: CameraXLibraryPigeonP * See https://developer.android.com/reference/kotlin/androidx/camera/core/ImageProxy. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiImageProxy(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiImageProxy( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** The image format. */ abstract fun format(pigeon_instance: androidx.camera.core.ImageProxy): Long @@ -4925,7 +5593,9 @@ abstract class PigeonApiImageProxy(open val pigeonRegistrar: CameraXLibraryPigeo abstract fun height(pigeon_instance: androidx.camera.core.ImageProxy): Long /** Returns the array of planes. */ - abstract fun getPlanes(pigeon_instance: androidx.camera.core.ImageProxy): List + abstract fun getPlanes( + pigeon_instance: androidx.camera.core.ImageProxy + ): List /** Closes the underlying `android.media.Image`. */ abstract fun close(pigeon_instance: androidx.camera.core.ImageProxy) @@ -4935,16 +5605,21 @@ abstract class PigeonApiImageProxy(open val pigeonRegistrar: CameraXLibraryPigeo fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiImageProxy?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageProxy.getPlanes", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageProxy.getPlanes", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageProxy - val wrapped: List = try { - listOf(api.getPlanes(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getPlanes(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4952,17 +5627,22 @@ abstract class PigeonApiImageProxy(open val pigeonRegistrar: CameraXLibraryPigeo } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageProxy.close", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageProxy.close", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.ImageProxy - val wrapped: List = try { - api.close(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.close(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -4974,16 +5654,19 @@ abstract class PigeonApiImageProxy(open val pigeonRegistrar: CameraXLibraryPigeo @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ImageProxy and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ImageProxy, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.ImageProxy, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val formatArg = format(pigeon_instanceArg) val widthArg = width(pigeon_instanceArg) val heightArg = height(pigeon_instanceArg) @@ -4994,41 +5677,52 @@ abstract class PigeonApiImageProxy(open val pigeonRegistrar: CameraXLibraryPigeo channel.send(listOf(pigeon_identifierArg, formatArg, widthArg, heightArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** Utilities for working with [ImageProxy]s. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiImageProxyUtils(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiImageProxyUtils( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** Returns a single buffer that is representative of three NV21-compatible [planes]. */ - abstract fun getNv21Buffer(imageWidth: Long, imageHeight: Long, planes: List): ByteArray + abstract fun getNv21Buffer( + imageWidth: Long, + imageHeight: Long, + planes: List + ): ByteArray companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiImageProxyUtils?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.getNv21Buffer", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.getNv21Buffer", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val imageWidthArg = args[0] as Long val imageHeightArg = args[1] as Long val planesArg = args[2] as List - val wrapped: List = try { - listOf(api.getNv21Buffer(imageWidthArg, imageHeightArg, planesArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getNv21Buffer(imageWidthArg, imageHeightArg, planesArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5040,43 +5734,45 @@ abstract class PigeonApiImageProxyUtils(open val pigeonRegistrar: CameraXLibrary @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ImageProxyUtils and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: ImageProxyUtils, callback: (Result) -> Unit) -{ + fun pigeon_newInstance(pigeon_instanceArg: ImageProxyUtils, callback: (Result) -> Unit) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * A plane proxy which has an analogous interface as - * `android.media.Image.Plane`. + * A plane proxy which has an analogous interface as `android.media.Image.Plane`. * * See https://developer.android.com/reference/kotlin/androidx/camera/core/ImageProxy.PlaneProxy. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiPlaneProxy(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiPlaneProxy( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** The pixels buffer. */ abstract fun buffer(pigeon_instance: androidx.camera.core.ImageProxy.PlaneProxy): ByteArray @@ -5088,16 +5784,19 @@ abstract class PigeonApiPlaneProxy(open val pigeonRegistrar: CameraXLibraryPigeo @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of PlaneProxy and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.ImageProxy.PlaneProxy, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.ImageProxy.PlaneProxy, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val bufferArg = buffer(pigeon_instanceArg) val pixelStrideArg = pixelStride(pigeon_instanceArg) val rowStrideArg = rowStride(pigeon_instanceArg) @@ -5108,53 +5807,70 @@ abstract class PigeonApiPlaneProxy(open val pigeonRegistrar: CameraXLibraryPigeo channel.send(listOf(pigeon_identifierArg, bufferArg, pixelStrideArg, rowStrideArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * Defines a desired quality setting that can be used to configure components - * with quality setting requirements such as creating a Recorder. + * Defines a desired quality setting that can be used to configure components with quality setting + * requirements such as creating a Recorder. * * See https://developer.android.com/reference/kotlin/androidx/camera/video/QualitySelector. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiQualitySelector(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiQualitySelector( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** Gets an instance of QualitySelector with a desired quality. */ - abstract fun from(quality: VideoQuality, fallbackStrategy: androidx.camera.video.FallbackStrategy?): androidx.camera.video.QualitySelector + abstract fun from( + quality: VideoQuality, + fallbackStrategy: androidx.camera.video.FallbackStrategy? + ): androidx.camera.video.QualitySelector /** Gets an instance of QualitySelector with ordered desired qualities. */ - abstract fun fromOrderedList(qualities: List, fallbackStrategy: androidx.camera.video.FallbackStrategy?): androidx.camera.video.QualitySelector + abstract fun fromOrderedList( + qualities: List, + fallbackStrategy: androidx.camera.video.FallbackStrategy? + ): androidx.camera.video.QualitySelector /** Gets the corresponding resolution from the input quality. */ - abstract fun getResolution(cameraInfo: androidx.camera.core.CameraInfo, quality: VideoQuality): android.util.Size? + abstract fun getResolution( + cameraInfo: androidx.camera.core.CameraInfo, + quality: VideoQuality + ): android.util.Size? companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiQualitySelector?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.QualitySelector.from", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.QualitySelector.from", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualityArg = args[1] as VideoQuality val fallbackStrategyArg = args[2] as androidx.camera.video.FallbackStrategy? - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.from(qualityArg,fallbackStrategyArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.from(qualityArg, fallbackStrategyArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5162,19 +5878,25 @@ abstract class PigeonApiQualitySelector(open val pigeonRegistrar: CameraXLibrary } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.QualitySelector.fromOrderedList", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.QualitySelector.fromOrderedList", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualitiesArg = args[1] as List val fallbackStrategyArg = args[2] as androidx.camera.video.FallbackStrategy? - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.fromOrderedList(qualitiesArg,fallbackStrategyArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.fromOrderedList(qualitiesArg, fallbackStrategyArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5182,17 +5904,22 @@ abstract class PigeonApiQualitySelector(open val pigeonRegistrar: CameraXLibrary } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.QualitySelector.getResolution", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.QualitySelector.getResolution", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val cameraInfoArg = args[0] as androidx.camera.core.CameraInfo val qualityArg = args[1] as VideoQuality - val wrapped: List = try { - listOf(api.getResolution(cameraInfoArg, qualityArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getResolution(cameraInfoArg, qualityArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5204,65 +5931,74 @@ abstract class PigeonApiQualitySelector(open val pigeonRegistrar: CameraXLibrary @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of QualitySelector and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.QualitySelector, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.video.QualitySelector, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.QualitySelector.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.QualitySelector.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * A class represents the strategy that will be adopted when the device does - * not support all the desired Quality in QualitySelector in order to select - * the quality as possible. + * A class represents the strategy that will be adopted when the device does not support all the + * desired Quality in QualitySelector in order to select the quality as possible. * * See https://developer.android.com/reference/androidx/camera/video/FallbackStrategy. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiFallbackStrategy(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiFallbackStrategy( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** - * Returns a fallback strategy that will choose the quality that is closest - * to and higher than the input quality. + * Returns a fallback strategy that will choose the quality that is closest to and higher than the + * input quality. */ - abstract fun higherQualityOrLowerThan(quality: VideoQuality): androidx.camera.video.FallbackStrategy + abstract fun higherQualityOrLowerThan( + quality: VideoQuality + ): androidx.camera.video.FallbackStrategy /** - * Returns a fallback strategy that will choose the quality that is closest - * to and higher than the input quality. + * Returns a fallback strategy that will choose the quality that is closest to and higher than the + * input quality. */ abstract fun higherQualityThan(quality: VideoQuality): androidx.camera.video.FallbackStrategy /** - * Returns a fallback strategy that will choose the quality that is closest - * to and lower than the input quality. + * Returns a fallback strategy that will choose the quality that is closest to and lower than the + * input quality. */ - abstract fun lowerQualityOrHigherThan(quality: VideoQuality): androidx.camera.video.FallbackStrategy + abstract fun lowerQualityOrHigherThan( + quality: VideoQuality + ): androidx.camera.video.FallbackStrategy /** - * Returns a fallback strategy that will choose the quality that is closest - * to and lower than the input quality. + * Returns a fallback strategy that will choose the quality that is closest to and lower than the + * input quality. */ abstract fun lowerQualityThan(quality: VideoQuality): androidx.camera.video.FallbackStrategy @@ -5271,18 +6007,24 @@ abstract class PigeonApiFallbackStrategy(open val pigeonRegistrar: CameraXLibrar fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiFallbackStrategy?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.higherQualityOrLowerThan", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.higherQualityOrLowerThan", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualityArg = args[1] as VideoQuality - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.higherQualityOrLowerThan(qualityArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.higherQualityOrLowerThan(qualityArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5290,18 +6032,24 @@ abstract class PigeonApiFallbackStrategy(open val pigeonRegistrar: CameraXLibrar } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.higherQualityThan", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.higherQualityThan", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualityArg = args[1] as VideoQuality - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.higherQualityThan(qualityArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.higherQualityThan(qualityArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5309,18 +6057,24 @@ abstract class PigeonApiFallbackStrategy(open val pigeonRegistrar: CameraXLibrar } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.lowerQualityOrHigherThan", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.lowerQualityOrHigherThan", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualityArg = args[1] as VideoQuality - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.lowerQualityOrHigherThan(qualityArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.lowerQualityOrHigherThan(qualityArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5328,18 +6082,24 @@ abstract class PigeonApiFallbackStrategy(open val pigeonRegistrar: CameraXLibrar } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.lowerQualityThan", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.lowerQualityThan", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val qualityArg = args[1] as VideoQuality - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.lowerQualityThan(qualityArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.lowerQualityThan(qualityArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5351,68 +6111,93 @@ abstract class PigeonApiFallbackStrategy(open val pigeonRegistrar: CameraXLibrar @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of FallbackStrategy and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.video.FallbackStrategy, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.video.FallbackStrategy, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * The CameraControl provides various asynchronous operations like zoom, focus - * and metering which affects output of all UseCases currently bound to that - * camera. + * The CameraControl provides various asynchronous operations like zoom, focus and metering which + * affects output of all UseCases currently bound to that camera. * * See https://developer.android.com/reference/androidx/camera/core/CameraControl. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraControl(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCameraControl( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** Enable the torch or disable the torch. */ - abstract fun enableTorch(pigeon_instance: androidx.camera.core.CameraControl, torch: Boolean, callback: (Result) -> Unit) + abstract fun enableTorch( + pigeon_instance: androidx.camera.core.CameraControl, + torch: Boolean, + callback: (Result) -> Unit + ) /** Sets current zoom by ratio. */ - abstract fun setZoomRatio(pigeon_instance: androidx.camera.core.CameraControl, ratio: Double, callback: (Result) -> Unit) - - /** - * Starts a focus and metering action configured by the - * `FocusMeteringAction`. - */ - abstract fun startFocusAndMetering(pigeon_instance: androidx.camera.core.CameraControl, action: androidx.camera.core.FocusMeteringAction, callback: (Result) -> Unit) + abstract fun setZoomRatio( + pigeon_instance: androidx.camera.core.CameraControl, + ratio: Double, + callback: (Result) -> Unit + ) + + /** Starts a focus and metering action configured by the `FocusMeteringAction`. */ + abstract fun startFocusAndMetering( + pigeon_instance: androidx.camera.core.CameraControl, + action: androidx.camera.core.FocusMeteringAction, + callback: (Result) -> Unit + ) /** Cancels current FocusMeteringAction and clears AF/AE/AWB regions. */ - abstract fun cancelFocusAndMetering(pigeon_instance: androidx.camera.core.CameraControl, callback: (Result) -> Unit) + abstract fun cancelFocusAndMetering( + pigeon_instance: androidx.camera.core.CameraControl, + callback: (Result) -> Unit + ) /** Set the exposure compensation value for the camera. */ - abstract fun setExposureCompensationIndex(pigeon_instance: androidx.camera.core.CameraControl, index: Long, callback: (Result) -> Unit) + abstract fun setExposureCompensationIndex( + pigeon_instance: androidx.camera.core.CameraControl, + index: Long, + callback: (Result) -> Unit + ) companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraControl?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraControl.enableTorch", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraControl.enableTorch", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -5432,7 +6217,11 @@ abstract class PigeonApiCameraControl(open val pigeonRegistrar: CameraXLibraryPi } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraControl.setZoomRatio", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraControl.setZoomRatio", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -5452,13 +6241,18 @@ abstract class PigeonApiCameraControl(open val pigeonRegistrar: CameraXLibraryPi } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraControl.startFocusAndMetering", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraControl.startFocusAndMetering", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.CameraControl val actionArg = args[1] as androidx.camera.core.FocusMeteringAction - api.startFocusAndMetering(pigeon_instanceArg, actionArg) { result: Result -> + api.startFocusAndMetering(pigeon_instanceArg, actionArg) { + result: Result -> val error = result.exceptionOrNull() if (error != null) { reply.reply(CameraXLibraryPigeonUtils.wrapError(error)) @@ -5473,7 +6267,11 @@ abstract class PigeonApiCameraControl(open val pigeonRegistrar: CameraXLibraryPi } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraControl.cancelFocusAndMetering", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraControl.cancelFocusAndMetering", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -5492,13 +6290,18 @@ abstract class PigeonApiCameraControl(open val pigeonRegistrar: CameraXLibraryPi } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraControl.setExposureCompensationIndex", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraControl.setExposureCompensationIndex", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.CameraControl val indexArg = args[1] as Long - api.setExposureCompensationIndex(pigeon_instanceArg, indexArg) { result: Result -> + api.setExposureCompensationIndex(pigeon_instanceArg, indexArg) { result: Result + -> val error = result.exceptionOrNull() if (error != null) { reply.reply(CameraXLibraryPigeonUtils.wrapError(error)) @@ -5517,16 +6320,19 @@ abstract class PigeonApiCameraControl(open val pigeonRegistrar: CameraXLibraryPi @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraControl and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.CameraControl, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.CameraControl, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraControl.pigeon_newInstance" @@ -5534,63 +6340,86 @@ abstract class PigeonApiCameraControl(open val pigeonRegistrar: CameraXLibraryPi channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * The builder used to create the `FocusMeteringAction`. * - * See https://developer.android.com/reference/kotlin/androidx/camera/core/FocusMeteringAction.Builder. + * See + * https://developer.android.com/reference/kotlin/androidx/camera/core/FocusMeteringAction.Builder. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiFocusMeteringActionBuilder(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - /** - * Creates a Builder from a `MeteringPoint` with default mode FLAG_AF | - * FLAG_AE | FLAG_AWB. - */ - abstract fun pigeon_defaultConstructor(point: androidx.camera.core.MeteringPoint): androidx.camera.core.FocusMeteringAction.Builder +abstract class PigeonApiFocusMeteringActionBuilder( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { + /** Creates a Builder from a `MeteringPoint` with default mode FLAG_AF | FLAG_AE | FLAG_AWB. */ + abstract fun pigeon_defaultConstructor( + point: androidx.camera.core.MeteringPoint + ): androidx.camera.core.FocusMeteringAction.Builder /** Creates a Builder from a `MeteringPoint` and `MeteringMode`. */ - abstract fun withMode(point: androidx.camera.core.MeteringPoint, mode: MeteringMode): androidx.camera.core.FocusMeteringAction.Builder + abstract fun withMode( + point: androidx.camera.core.MeteringPoint, + mode: MeteringMode + ): androidx.camera.core.FocusMeteringAction.Builder /** Adds another MeteringPoint with default metering mode. */ - abstract fun addPoint(pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder, point: androidx.camera.core.MeteringPoint) + abstract fun addPoint( + pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder, + point: androidx.camera.core.MeteringPoint + ) /** Adds another MeteringPoint with specified meteringMode. */ - abstract fun addPointWithMode(pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder, point: androidx.camera.core.MeteringPoint, mode: MeteringMode) + abstract fun addPointWithMode( + pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder, + point: androidx.camera.core.MeteringPoint, + mode: MeteringMode + ) /** Disables the auto-cancel. */ abstract fun disableAutoCancel(pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder) /** Builds the `FocusMeteringAction` instance. */ - abstract fun build(pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder): androidx.camera.core.FocusMeteringAction + abstract fun build( + pigeon_instance: androidx.camera.core.FocusMeteringAction.Builder + ): androidx.camera.core.FocusMeteringAction companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiFocusMeteringActionBuilder?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + api: PigeonApiFocusMeteringActionBuilder? + ) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val pointArg = args[1] as androidx.camera.core.MeteringPoint - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(pointArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(pointArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5598,19 +6427,25 @@ abstract class PigeonApiFocusMeteringActionBuilder(open val pigeonRegistrar: Cam } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.withMode", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.withMode", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val pointArg = args[1] as androidx.camera.core.MeteringPoint val modeArg = args[2] as MeteringMode - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.withMode(pointArg,modeArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.withMode(pointArg, modeArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5618,18 +6453,23 @@ abstract class PigeonApiFocusMeteringActionBuilder(open val pigeonRegistrar: Cam } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.addPoint", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.addPoint", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.FocusMeteringAction.Builder val pointArg = args[1] as androidx.camera.core.MeteringPoint - val wrapped: List = try { - api.addPoint(pigeon_instanceArg, pointArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.addPoint(pigeon_instanceArg, pointArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5637,19 +6477,24 @@ abstract class PigeonApiFocusMeteringActionBuilder(open val pigeonRegistrar: Cam } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.addPointWithMode", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.addPointWithMode", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.FocusMeteringAction.Builder val pointArg = args[1] as androidx.camera.core.MeteringPoint val modeArg = args[2] as MeteringMode - val wrapped: List = try { - api.addPointWithMode(pigeon_instanceArg, pointArg, modeArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.addPointWithMode(pigeon_instanceArg, pointArg, modeArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5657,17 +6502,22 @@ abstract class PigeonApiFocusMeteringActionBuilder(open val pigeonRegistrar: Cam } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.disableAutoCancel", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.disableAutoCancel", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.FocusMeteringAction.Builder - val wrapped: List = try { - api.disableAutoCancel(pigeon_instanceArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.disableAutoCancel(pigeon_instanceArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5675,16 +6525,21 @@ abstract class PigeonApiFocusMeteringActionBuilder(open val pigeonRegistrar: Cam } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.build", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.build", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.FocusMeteringAction.Builder - val wrapped: List = try { - listOf(api.build(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.build(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5695,35 +6550,41 @@ abstract class PigeonApiFocusMeteringActionBuilder(open val pigeonRegistrar: Cam } @Suppress("LocalVariableName", "FunctionName") - /** Creates a Dart instance of FocusMeteringActionBuilder and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.FocusMeteringAction.Builder, callback: (Result) -> Unit) -{ + /** + * Creates a Dart instance of FocusMeteringActionBuilder and attaches it to [pigeon_instanceArg]. + */ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.FocusMeteringAction.Builder, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * A configuration used to trigger a focus and/or metering action. @@ -5731,53 +6592,74 @@ abstract class PigeonApiFocusMeteringActionBuilder(open val pigeonRegistrar: Cam * See https://developer.android.com/reference/kotlin/androidx/camera/core/FocusMeteringAction. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiFocusMeteringAction(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiFocusMeteringAction( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** All MeteringPoints used for AE regions. */ - abstract fun meteringPointsAe(pigeon_instance: androidx.camera.core.FocusMeteringAction): List + abstract fun meteringPointsAe( + pigeon_instance: androidx.camera.core.FocusMeteringAction + ): List /** All MeteringPoints used for AF regions. */ - abstract fun meteringPointsAf(pigeon_instance: androidx.camera.core.FocusMeteringAction): List + abstract fun meteringPointsAf( + pigeon_instance: androidx.camera.core.FocusMeteringAction + ): List /** All MeteringPoints used for AWB regions. */ - abstract fun meteringPointsAwb(pigeon_instance: androidx.camera.core.FocusMeteringAction): List + abstract fun meteringPointsAwb( + pigeon_instance: androidx.camera.core.FocusMeteringAction + ): List /** If auto-cancel is enabled or not. */ - abstract fun isAutoCancelEnabled(pigeon_instance: androidx.camera.core.FocusMeteringAction): Boolean + abstract fun isAutoCancelEnabled( + pigeon_instance: androidx.camera.core.FocusMeteringAction + ): Boolean @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of FocusMeteringAction and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.FocusMeteringAction, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.FocusMeteringAction, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val meteringPointsAeArg = meteringPointsAe(pigeon_instanceArg) val meteringPointsAfArg = meteringPointsAf(pigeon_instanceArg) val meteringPointsAwbArg = meteringPointsAwb(pigeon_instanceArg) val isAutoCancelEnabledArg = isAutoCancelEnabled(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) - channel.send(listOf(pigeon_identifierArg, meteringPointsAeArg, meteringPointsAfArg, meteringPointsAwbArg, isAutoCancelEnabledArg)) { - if (it is List<*>) { - if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) - } else { - callback(Result.success(Unit)) + channel.send( + listOf( + pigeon_identifierArg, + meteringPointsAeArg, + meteringPointsAfArg, + meteringPointsAwbArg, + isAutoCancelEnabledArg)) { + if (it is List<*>) { + if (it.size > 1) { + callback( + Result.failure( + CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + } else { + callback(Result.success(Unit)) + } + } else { + callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) + } } - } else { - callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } - } } } - } /** * Result of the `CameraControl.startFocusAndMetering`. @@ -5785,53 +6667,60 @@ abstract class PigeonApiFocusMeteringAction(open val pigeonRegistrar: CameraXLib * See https://developer.android.com/reference/androidx/camera/core/FocusMeteringResult. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiFocusMeteringResult(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiFocusMeteringResult( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** If auto focus is successful. */ abstract fun isFocusSuccessful(pigeon_instance: androidx.camera.core.FocusMeteringResult): Boolean @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of FocusMeteringResult and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.FocusMeteringResult, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.FocusMeteringResult, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val isFocusSuccessfulArg = isFocusSuccessful(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg, isFocusSuccessfulArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * An immutable package of settings and outputs needed to capture a single - * image from the camera device. + * An immutable package of settings and outputs needed to capture a single image from the camera + * device. * * See https://developer.android.com/reference/android/hardware/camera2/CaptureRequest. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCaptureRequest(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCaptureRequest( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** - * Whether auto-exposure (AE) is currently locked to its latest calculated - * values. + * Whether auto-exposure (AE) is currently locked to its latest calculated values. * * Value is boolean. * @@ -5853,17 +6742,23 @@ abstract class PigeonApiCaptureRequest(open val pigeonRegistrar: CameraXLibraryP fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCaptureRequest?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.controlAELock", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.controlAELock", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.controlAELock(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.controlAELock(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5871,17 +6766,23 @@ abstract class PigeonApiCaptureRequest(open val pigeonRegistrar: CameraXLibraryP } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.controlVideoStabilizationMode", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.controlVideoStabilizationMode", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.controlVideoStabilizationMode(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.controlVideoStabilizationMode(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -5893,106 +6794,130 @@ abstract class PigeonApiCaptureRequest(open val pigeonRegistrar: CameraXLibraryP @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CaptureRequest and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: android.hardware.camera2.CaptureRequest, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: android.hardware.camera2.CaptureRequest, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.CaptureRequest.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * A Key is used to do capture request field lookups with CaptureRequest.get or - * to set fields with `CaptureRequest.Builder.set`. + * A Key is used to do capture request field lookups with CaptureRequest.get or to set fields with + * `CaptureRequest.Builder.set`. * * See https://developer.android.com/reference/android/hardware/camera2/CaptureRequest.Key.html. */ @Suppress("UNCHECKED_CAST") -open class PigeonApiCaptureRequestKey(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +open class PigeonApiCaptureRequestKey( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CaptureRequestKey and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: android.hardware.camera2.CaptureRequest.Key<*>, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: android.hardware.camera2.CaptureRequest.Key<*>, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.CaptureRequestKey.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.CaptureRequestKey.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * A bundle of Camera2 capture request options. * - * See https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/CaptureRequestOptions. + * See + * https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/CaptureRequestOptions. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCaptureRequestOptions(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun pigeon_defaultConstructor(options: Map, Any?>): androidx.camera.camera2.interop.CaptureRequestOptions - - /** - * Returns a value for the given CaptureRequestKey or null if it hasn't been - * set. - */ - abstract fun getCaptureRequestOption(pigeon_instance: androidx.camera.camera2.interop.CaptureRequestOptions, key: android.hardware.camera2.CaptureRequest.Key<*>): Any? +abstract class PigeonApiCaptureRequestOptions( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { + abstract fun pigeon_defaultConstructor( + options: Map, Any?> + ): androidx.camera.camera2.interop.CaptureRequestOptions + + /** Returns a value for the given CaptureRequestKey or null if it hasn't been set. */ + abstract fun getCaptureRequestOption( + pigeon_instance: androidx.camera.camera2.interop.CaptureRequestOptions, + key: android.hardware.camera2.CaptureRequest.Key<*> + ): Any? companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCaptureRequestOptions?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + api: PigeonApiCaptureRequestOptions? + ) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val optionsArg = args[1] as Map, Any?> - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(optionsArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(optionsArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6000,17 +6925,23 @@ abstract class PigeonApiCaptureRequestOptions(open val pigeonRegistrar: CameraXL } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.getCaptureRequestOption", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.getCaptureRequestOption", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List - val pigeon_instanceArg = args[0] as androidx.camera.camera2.interop.CaptureRequestOptions + val pigeon_instanceArg = + args[0] as androidx.camera.camera2.interop.CaptureRequestOptions val keyArg = args[1] as android.hardware.camera2.CaptureRequest.Key<*> - val wrapped: List = try { - listOf(api.getCaptureRequestOption(pigeon_instanceArg, keyArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getCaptureRequestOption(pigeon_instanceArg, keyArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6022,69 +6953,87 @@ abstract class PigeonApiCaptureRequestOptions(open val pigeonRegistrar: CameraXL @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CaptureRequestOptions and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.camera2.interop.CaptureRequestOptions, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.camera2.interop.CaptureRequestOptions, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * An class that provides ability to interoperate with the - * 1android.hardware.camera21 APIs. + * An class that provides ability to interoperate with the 1android.hardware.camera21 APIs. * - * See https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/Camera2CameraControl. + * See + * https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/Camera2CameraControl. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCamera2CameraControl(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCamera2CameraControl( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** Gets the `Camera2CameraControl` from a `CameraControl`. */ - abstract fun from(cameraControl: androidx.camera.core.CameraControl): androidx.camera.camera2.interop.Camera2CameraControl + abstract fun from( + cameraControl: androidx.camera.core.CameraControl + ): androidx.camera.camera2.interop.Camera2CameraControl - /** - * Adds a `CaptureRequestOptions` updates the session with the options it - * contains. - */ - abstract fun addCaptureRequestOptions(pigeon_instance: androidx.camera.camera2.interop.Camera2CameraControl, bundle: androidx.camera.camera2.interop.CaptureRequestOptions, callback: (Result) -> Unit) + /** Adds a `CaptureRequestOptions` updates the session with the options it contains. */ + abstract fun addCaptureRequestOptions( + pigeon_instance: androidx.camera.camera2.interop.Camera2CameraControl, + bundle: androidx.camera.camera2.interop.CaptureRequestOptions, + callback: (Result) -> Unit + ) companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCamera2CameraControl?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + api: PigeonApiCamera2CameraControl? + ) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.from", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.from", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val cameraControlArg = args[1] as androidx.camera.core.CameraControl - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.from(cameraControlArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.from(cameraControlArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6092,7 +7041,11 @@ abstract class PigeonApiCamera2CameraControl(open val pigeonRegistrar: CameraXLi } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.addCaptureRequestOptions", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.addCaptureRequestOptions", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -6116,62 +7069,77 @@ abstract class PigeonApiCamera2CameraControl(open val pigeonRegistrar: CameraXLi @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Camera2CameraControl and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.camera2.interop.Camera2CameraControl, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.camera2.interop.Camera2CameraControl, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * Applications can filter out unsuitable sizes and sort the resolution list in - * the preferred order by implementing the resolution filter interface. + * Applications can filter out unsuitable sizes and sort the resolution list in the preferred order + * by implementing the resolution filter interface. * - * See https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionFilter. + * See + * https://developer.android.com/reference/kotlin/androidx/camera/core/resolutionselector/ResolutionFilter. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiResolutionFilter(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { - abstract fun createWithOnePreferredSize(preferredSize: android.util.Size): androidx.camera.core.resolutionselector.ResolutionFilter +abstract class PigeonApiResolutionFilter( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { + abstract fun createWithOnePreferredSize( + preferredSize: android.util.Size + ): androidx.camera.core.resolutionselector.ResolutionFilter companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiResolutionFilter?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.createWithOnePreferredSize", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.createWithOnePreferredSize", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val preferredSizeArg = args[1] as android.util.Size - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.createWithOnePreferredSize(preferredSizeArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.createWithOnePreferredSize(preferredSizeArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6183,73 +7151,85 @@ abstract class PigeonApiResolutionFilter(open val pigeonRegistrar: CameraXLibrar @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of ResolutionFilter and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionFilter, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.resolutionselector.ResolutionFilter, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * A Key is used to do camera characteristics field lookups with - * `CameraCharacteristics.get`. + * A Key is used to do camera characteristics field lookups with `CameraCharacteristics.get`. * - * See https://developer.android.com/reference/android/hardware/camera2/CameraCharacteristics.Key.html. + * See + * https://developer.android.com/reference/android/hardware/camera2/CameraCharacteristics.Key.html. */ @Suppress("UNCHECKED_CAST") -open class PigeonApiCameraCharacteristicsKey(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +open class PigeonApiCameraCharacteristicsKey( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { @Suppress("LocalVariableName", "FunctionName") - /** Creates a Dart instance of CameraCharacteristicsKey and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: android.hardware.camera2.CameraCharacteristics.Key<*>, callback: (Result) -> Unit) -{ + /** + * Creates a Dart instance of CameraCharacteristicsKey and attaches it to [pigeon_instanceArg]. + */ + fun pigeon_newInstance( + pigeon_instanceArg: android.hardware.camera2.CameraCharacteristics.Key<*>, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristicsKey.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristicsKey.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * The properties describing a `CameraDevice`. @@ -6257,7 +7237,9 @@ open class PigeonApiCameraCharacteristicsKey(open val pigeonRegistrar: CameraXLi * See https://developer.android.com/reference/android/hardware/camera2/CameraCharacteristics. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCameraCharacteristics(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCameraCharacteristics( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** * Generally classifies the overall set of the camera device functionality. * @@ -6268,8 +7250,8 @@ abstract class PigeonApiCameraCharacteristics(open val pigeonRegistrar: CameraXL abstract fun infoSupportedHardwareLevel(): android.hardware.camera2.CameraCharacteristics.Key<*> /** - * Clockwise angle through which the output image needs to be rotated to be - * upright on the device screen in its native orientation.. + * Clockwise angle through which the output image needs to be rotated to be upright on the device + * screen in its native orientation.. * * Value is int. * @@ -6278,31 +7260,41 @@ abstract class PigeonApiCameraCharacteristics(open val pigeonRegistrar: CameraXL abstract fun sensorOrientation(): android.hardware.camera2.CameraCharacteristics.Key<*> /** - * List of video stabilization modes for android.control.videoStabilizationMode - * that are supported by this camera device. + * List of video stabilization modes for android.control.videoStabilizationMode that are supported + * by this camera device. * * Value is `ControlAvailableVideoStabilizationMode`. * * This key is available on all devices. */ - abstract fun controlAvailableVideoStabilizationModes(): android.hardware.camera2.CameraCharacteristics.Key<*> + abstract fun controlAvailableVideoStabilizationModes(): + android.hardware.camera2.CameraCharacteristics.Key<*> companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCameraCharacteristics?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + api: PigeonApiCameraCharacteristics? + ) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.infoSupportedHardwareLevel", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.infoSupportedHardwareLevel", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.infoSupportedHardwareLevel(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.infoSupportedHardwareLevel(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6310,17 +7302,23 @@ abstract class PigeonApiCameraCharacteristics(open val pigeonRegistrar: CameraXL } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.sensorOrientation", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.sensorOrientation", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.sensorOrientation(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.sensorOrientation(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6328,17 +7326,23 @@ abstract class PigeonApiCameraCharacteristics(open val pigeonRegistrar: CameraXL } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.controlAvailableVideoStabilizationModes", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.controlAvailableVideoStabilizationModes", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.controlAvailableVideoStabilizationModes(), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.controlAvailableVideoStabilizationModes(), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6350,68 +7354,88 @@ abstract class PigeonApiCameraCharacteristics(open val pigeonRegistrar: CameraXL @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of CameraCharacteristics and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: android.hardware.camera2.CameraCharacteristics, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: android.hardware.camera2.CameraCharacteristics, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * An interface for retrieving Camera2-related camera information. * - * See https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/Camera2CameraInfo. + * See + * https://developer.android.com/reference/kotlin/androidx/camera/camera2/interop/Camera2CameraInfo. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiCamera2CameraInfo(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiCamera2CameraInfo( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** Gets the `Camera2CameraInfo` from a `CameraInfo`. */ - abstract fun from(cameraInfo: androidx.camera.core.CameraInfo): androidx.camera.camera2.interop.Camera2CameraInfo + abstract fun from( + cameraInfo: androidx.camera.core.CameraInfo + ): androidx.camera.camera2.interop.Camera2CameraInfo /** Gets the string camera ID. */ - abstract fun getCameraId(pigeon_instance: androidx.camera.camera2.interop.Camera2CameraInfo): String + abstract fun getCameraId( + pigeon_instance: androidx.camera.camera2.interop.Camera2CameraInfo + ): String /** Gets a camera characteristic value. */ - abstract fun getCameraCharacteristic(pigeon_instance: androidx.camera.camera2.interop.Camera2CameraInfo, key: android.hardware.camera2.CameraCharacteristics.Key<*>): Any? + abstract fun getCameraCharacteristic( + pigeon_instance: androidx.camera.camera2.interop.Camera2CameraInfo, + key: android.hardware.camera2.CameraCharacteristics.Key<*> + ): Any? companion object { @Suppress("LocalVariableName") fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiCamera2CameraInfo?) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.from", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.from", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_identifierArg = args[0] as Long val cameraInfoArg = args[1] as androidx.camera.core.CameraInfo - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.from(cameraInfoArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.from(cameraInfoArg), pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6419,16 +7443,21 @@ abstract class PigeonApiCamera2CameraInfo(open val pigeonRegistrar: CameraXLibra } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.getCameraId", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.getCameraId", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.camera2.interop.Camera2CameraInfo - val wrapped: List = try { - listOf(api.getCameraId(pigeon_instanceArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getCameraId(pigeon_instanceArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6436,17 +7465,22 @@ abstract class PigeonApiCamera2CameraInfo(open val pigeonRegistrar: CameraXLibra } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.getCameraCharacteristic", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.getCameraCharacteristic", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.camera2.interop.Camera2CameraInfo val keyArg = args[1] as android.hardware.camera2.CameraCharacteristics.Key<*> - val wrapped: List = try { - listOf(api.getCameraCharacteristic(pigeon_instanceArg, keyArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.getCameraCharacteristic(pigeon_instanceArg, keyArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6458,34 +7492,38 @@ abstract class PigeonApiCamera2CameraInfo(open val pigeonRegistrar: CameraXLibra @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of Camera2CameraInfo and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.camera2.interop.Camera2CameraInfo, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.camera2.interop.Camera2CameraInfo, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** * A factory to create a MeteringPoint. @@ -6493,30 +7531,49 @@ abstract class PigeonApiCamera2CameraInfo(open val pigeonRegistrar: CameraXLibra * See https://developer.android.com/reference/androidx/camera/core/MeteringPointFactory. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiMeteringPointFactory(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiMeteringPointFactory( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** Creates a MeteringPoint by x, y. */ - abstract fun createPoint(pigeon_instance: androidx.camera.core.MeteringPointFactory, x: Double, y: Double): androidx.camera.core.MeteringPoint + abstract fun createPoint( + pigeon_instance: androidx.camera.core.MeteringPointFactory, + x: Double, + y: Double + ): androidx.camera.core.MeteringPoint /** Creates a MeteringPoint by x, y, size. */ - abstract fun createPointWithSize(pigeon_instance: androidx.camera.core.MeteringPointFactory, x: Double, y: Double, size: Double): androidx.camera.core.MeteringPoint + abstract fun createPointWithSize( + pigeon_instance: androidx.camera.core.MeteringPointFactory, + x: Double, + y: Double, + size: Double + ): androidx.camera.core.MeteringPoint companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiMeteringPointFactory?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + api: PigeonApiMeteringPointFactory? + ) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.createPoint", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.createPoint", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List val pigeon_instanceArg = args[0] as androidx.camera.core.MeteringPointFactory val xArg = args[1] as Double val yArg = args[2] as Double - val wrapped: List = try { - listOf(api.createPoint(pigeon_instanceArg, xArg, yArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.createPoint(pigeon_instanceArg, xArg, yArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6524,7 +7581,11 @@ abstract class PigeonApiMeteringPointFactory(open val pigeonRegistrar: CameraXLi } } run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.createPointWithSize", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.createPointWithSize", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -6532,11 +7593,12 @@ abstract class PigeonApiMeteringPointFactory(open val pigeonRegistrar: CameraXLi val xArg = args[1] as Double val yArg = args[2] as Double val sizeArg = args[3] as Double - val wrapped: List = try { - listOf(api.createPointWithSize(pigeon_instanceArg, xArg, yArg, sizeArg)) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + listOf(api.createPointWithSize(pigeon_instanceArg, xArg, yArg, sizeArg)) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6548,57 +7610,73 @@ abstract class PigeonApiMeteringPointFactory(open val pigeonRegistrar: CameraXLi @Suppress("LocalVariableName", "FunctionName") /** Creates a Dart instance of MeteringPointFactory and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.MeteringPointFactory, callback: (Result) -> Unit) -{ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.MeteringPointFactory, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } - } /** - * A MeteringPointFactory that can convert a View (x, y) into a MeteringPoint - * which can then be used to construct a FocusMeteringAction to start a focus - * and metering action. + * A MeteringPointFactory that can convert a View (x, y) into a MeteringPoint which can then be used + * to construct a FocusMeteringAction to start a focus and metering action. * - * See https://developer.android.com/reference/androidx/camera/core/DisplayOrientedMeteringPointFactory. + * See + * https://developer.android.com/reference/androidx/camera/core/DisplayOrientedMeteringPointFactory. */ @Suppress("UNCHECKED_CAST") -abstract class PigeonApiDisplayOrientedMeteringPointFactory(open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar) { +abstract class PigeonApiDisplayOrientedMeteringPointFactory( + open val pigeonRegistrar: CameraXLibraryPigeonProxyApiRegistrar +) { /** - * Creates a DisplayOrientedMeteringPointFactory for converting View (x, y) - * into a MeteringPoint based on the current display's rotation and - * CameraInfo. + * Creates a DisplayOrientedMeteringPointFactory for converting View (x, y) into a MeteringPoint + * based on the current display's rotation and CameraInfo. */ - abstract fun pigeon_defaultConstructor(cameraInfo: androidx.camera.core.CameraInfo, width: Double, height: Double): androidx.camera.core.DisplayOrientedMeteringPointFactory + abstract fun pigeon_defaultConstructor( + cameraInfo: androidx.camera.core.CameraInfo, + width: Double, + height: Double + ): androidx.camera.core.DisplayOrientedMeteringPointFactory companion object { @Suppress("LocalVariableName") - fun setUpMessageHandlers(binaryMessenger: BinaryMessenger, api: PigeonApiDisplayOrientedMeteringPointFactory?) { + fun setUpMessageHandlers( + binaryMessenger: BinaryMessenger, + api: PigeonApiDisplayOrientedMeteringPointFactory? + ) { val codec = api?.pigeonRegistrar?.codec ?: CameraXLibraryPigeonCodec() run { - val channel = BasicMessageChannel(binaryMessenger, "dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_defaultConstructor", codec) + val channel = + BasicMessageChannel( + binaryMessenger, + "dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_defaultConstructor", + codec) if (api != null) { channel.setMessageHandler { message, reply -> val args = message as List @@ -6606,12 +7684,15 @@ abstract class PigeonApiDisplayOrientedMeteringPointFactory(open val pigeonRegis val cameraInfoArg = args[1] as androidx.camera.core.CameraInfo val widthArg = args[2] as Double val heightArg = args[3] as Double - val wrapped: List = try { - api.pigeonRegistrar.instanceManager.addDartCreatedInstance(api.pigeon_defaultConstructor(cameraInfoArg,widthArg,heightArg), pigeon_identifierArg) - listOf(null) - } catch (exception: Throwable) { - CameraXLibraryPigeonUtils.wrapError(exception) - } + val wrapped: List = + try { + api.pigeonRegistrar.instanceManager.addDartCreatedInstance( + api.pigeon_defaultConstructor(cameraInfoArg, widthArg, heightArg), + pigeon_identifierArg) + listOf(null) + } catch (exception: Throwable) { + CameraXLibraryPigeonUtils.wrapError(exception) + } reply.reply(wrapped) } } else { @@ -6622,40 +7703,46 @@ abstract class PigeonApiDisplayOrientedMeteringPointFactory(open val pigeonRegis } @Suppress("LocalVariableName", "FunctionName") - /** Creates a Dart instance of DisplayOrientedMeteringPointFactory and attaches it to [pigeon_instanceArg]. */ - fun pigeon_newInstance(pigeon_instanceArg: androidx.camera.core.DisplayOrientedMeteringPointFactory, callback: (Result) -> Unit) -{ + /** + * Creates a Dart instance of DisplayOrientedMeteringPointFactory and attaches it to + * [pigeon_instanceArg]. + */ + fun pigeon_newInstance( + pigeon_instanceArg: androidx.camera.core.DisplayOrientedMeteringPointFactory, + callback: (Result) -> Unit + ) { if (pigeonRegistrar.ignoreCallsToDart) { callback( Result.failure( CameraXError("ignore-calls-error", "Calls to Dart are being ignored.", ""))) - } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { + } else if (pigeonRegistrar.instanceManager.containsInstance(pigeon_instanceArg)) { callback(Result.success(Unit)) - } else { - val pigeon_identifierArg = pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) + } else { + val pigeon_identifierArg = + pigeonRegistrar.instanceManager.addHostCreatedInstance(pigeon_instanceArg) val binaryMessenger = pigeonRegistrar.binaryMessenger val codec = pigeonRegistrar.codec - val channelName = "dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_newInstance" + val channelName = + "dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_newInstance" val channel = BasicMessageChannel(binaryMessenger, channelName, codec) channel.send(listOf(pigeon_identifierArg)) { if (it is List<*>) { if (it.size > 1) { - callback(Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) + callback( + Result.failure(CameraXError(it[0] as String, it[1] as String, it[2] as String?))) } else { callback(Result.success(Unit)) } } else { callback(Result.failure(CameraXLibraryPigeonUtils.createConnectionError(channelName))) - } + } } } } @Suppress("FunctionName") /** An implementation of [PigeonApiMeteringPointFactory] used to access callback methods */ - fun pigeon_getPigeonApiMeteringPointFactory(): PigeonApiMeteringPointFactory - { + fun pigeon_getPigeonApiMeteringPointFactory(): PigeonApiMeteringPointFactory { return pigeonRegistrar.getPigeonApiMeteringPointFactory() } - } diff --git a/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart b/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart index c273ce6f7182..b71b22024ae5 100644 --- a/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart +++ b/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart @@ -15,9 +15,9 @@ import 'package:flutter/widgets.dart' show WidgetsFlutterBinding; import 'package:meta/meta.dart' show immutable, protected, visibleForTesting; Object? _extractReplyValueOrThrow( - List? replyList, - String channelName, { - required bool isNullValid, + List? replyList, + String channelName, { + required bool isNullValid, }) { if (replyList == null) { throw PlatformException( @@ -39,8 +39,11 @@ Object? _extractReplyValueOrThrow( return replyList.firstOrNull; } - -List wrapResponse({Object? result, PlatformException? error, bool empty = false}) { +List wrapResponse({ + Object? result, + PlatformException? error, + bool empty = false, +}) { if (empty) { return []; } @@ -49,6 +52,7 @@ List wrapResponse({Object? result, PlatformException? error, bool empty } return [error.code, error.message, error.details]; } + /// Provides overrides for the constructors and static members of each /// Dart proxy class. /// @@ -59,96 +63,108 @@ List wrapResponse({Object? result, PlatformException? error, bool empty @visibleForTesting class PigeonOverrides { /// Overrides [CameraSize.new]. - static CameraSize Function({ - required int width, - required int height, - })? cameraSize_new; + static CameraSize Function({required int width, required int height})? + cameraSize_new; /// Overrides [CameraIntegerRange.new]. - static CameraIntegerRange Function({ - required int lower, - required int upper, - })? cameraIntegerRange_new; + static CameraIntegerRange Function({required int lower, required int upper})? + cameraIntegerRange_new; /// Overrides [Observer.new]. - static Observer Function( - {required void Function( - Observer pigeon_instance, - Object value, - ) onChanged})? observer_new; + static Observer Function({ + required void Function(Observer pigeon_instance, Object value) onChanged, + })? + observer_new; /// Overrides [CameraSelector.new]. static CameraSelector Function({ LensFacing? requireLensFacing, CameraInfo? cameraInfoForFilter, - })? cameraSelector_new; + })? + cameraSelector_new; /// Overrides [SystemServicesManager.new]. - static SystemServicesManager Function( - {required void Function( - SystemServicesManager pigeon_instance, - String errorDescription, - ) onCameraError})? systemServicesManager_new; + static SystemServicesManager Function({ + required void Function( + SystemServicesManager pigeon_instance, + String errorDescription, + ) + onCameraError, + })? + systemServicesManager_new; /// Overrides [DeviceOrientationManager.new]. - static DeviceOrientationManager Function( - {required void Function( - DeviceOrientationManager pigeon_instance, - String orientation, - ) onDeviceOrientationChanged})? deviceOrientationManager_new; + static DeviceOrientationManager Function({ + required void Function( + DeviceOrientationManager pigeon_instance, + String orientation, + ) + onDeviceOrientationChanged, + })? + deviceOrientationManager_new; /// Overrides [Preview.new]. static Preview Function({ ResolutionSelector? resolutionSelector, int? targetRotation, CameraIntegerRange? targetFpsRange, - })? preview_new; + })? + preview_new; /// Overrides [VideoCapture.withOutput]. static VideoCapture Function({ required VideoOutput videoOutput, CameraIntegerRange? targetFpsRange, - })? videoCapture_withOutput; + })? + videoCapture_withOutput; /// Overrides [Recorder.new]. static Recorder Function({ int? aspectRatio, int? targetVideoEncodingBitRate, QualitySelector? qualitySelector, - })? recorder_new; + })? + recorder_new; /// Overrides [VideoRecordEventListener.new]. - static VideoRecordEventListener Function( - {required void Function( - VideoRecordEventListener pigeon_instance, - VideoRecordEvent event, - ) onEvent})? videoRecordEventListener_new; + static VideoRecordEventListener Function({ + required void Function( + VideoRecordEventListener pigeon_instance, + VideoRecordEvent event, + ) + onEvent, + })? + videoRecordEventListener_new; /// Overrides [ImageCapture.new]. static ImageCapture Function({ ResolutionSelector? resolutionSelector, int? targetRotation, CameraXFlashMode? flashMode, - })? imageCapture_new; + })? + imageCapture_new; /// Overrides [ResolutionStrategy.new]. static ResolutionStrategy Function({ required CameraSize boundSize, required ResolutionStrategyFallbackRule fallbackRule, - })? resolutionStrategy_new; + })? + resolutionStrategy_new; /// Overrides [ResolutionSelector.new]. static ResolutionSelector Function({ ResolutionFilter? resolutionFilter, ResolutionStrategy? resolutionStrategy, AspectRatioStrategy? aspectRatioStrategy, - })? resolutionSelector_new; + })? + resolutionSelector_new; /// Overrides [AspectRatioStrategy.new]. static AspectRatioStrategy Function({ required AspectRatio preferredAspectRatio, required AspectRatioStrategyFallbackRule fallbackRule, - })? aspectRatioStrategy_new; + })? + aspectRatioStrategy_new; /// Overrides [ImageAnalysis.new]. static ImageAnalysis Function({ @@ -156,76 +172,81 @@ class PigeonOverrides { int? targetRotation, CameraIntegerRange? targetFpsRange, int? outputImageFormat, - })? imageAnalysis_new; + })? + imageAnalysis_new; /// Overrides [Analyzer.new]. - static Analyzer Function( - {required void Function( - Analyzer pigeon_instance, - ImageProxy image, - ) analyze})? analyzer_new; + static Analyzer Function({ + required void Function(Analyzer pigeon_instance, ImageProxy image) analyze, + })? + analyzer_new; /// Overrides [QualitySelector.from]. static QualitySelector Function({ required VideoQuality quality, FallbackStrategy? fallbackStrategy, - })? qualitySelector_from; + })? + qualitySelector_from; /// Overrides [QualitySelector.fromOrderedList]. static QualitySelector Function({ required List qualities, FallbackStrategy? fallbackStrategy, - })? qualitySelector_fromOrderedList; + })? + qualitySelector_fromOrderedList; /// Overrides [FallbackStrategy.higherQualityOrLowerThan]. static FallbackStrategy Function({required VideoQuality quality})? - fallbackStrategy_higherQualityOrLowerThan; + fallbackStrategy_higherQualityOrLowerThan; /// Overrides [FallbackStrategy.higherQualityThan]. static FallbackStrategy Function({required VideoQuality quality})? - fallbackStrategy_higherQualityThan; + fallbackStrategy_higherQualityThan; /// Overrides [FallbackStrategy.lowerQualityOrHigherThan]. static FallbackStrategy Function({required VideoQuality quality})? - fallbackStrategy_lowerQualityOrHigherThan; + fallbackStrategy_lowerQualityOrHigherThan; /// Overrides [FallbackStrategy.lowerQualityThan]. static FallbackStrategy Function({required VideoQuality quality})? - fallbackStrategy_lowerQualityThan; + fallbackStrategy_lowerQualityThan; /// Overrides [FocusMeteringActionBuilder.new]. static FocusMeteringActionBuilder Function({required MeteringPoint point})? - focusMeteringActionBuilder_new; + focusMeteringActionBuilder_new; /// Overrides [FocusMeteringActionBuilder.withMode]. static FocusMeteringActionBuilder Function({ required MeteringPoint point, required MeteringMode mode, - })? focusMeteringActionBuilder_withMode; + })? + focusMeteringActionBuilder_withMode; /// Overrides [CaptureRequestOptions.new]. - static CaptureRequestOptions Function( - {required Map options})? - captureRequestOptions_new; + static CaptureRequestOptions Function({ + required Map options, + })? + captureRequestOptions_new; /// Overrides [Camera2CameraControl.from]. static Camera2CameraControl Function({required CameraControl cameraControl})? - camera2CameraControl_from; + camera2CameraControl_from; /// Overrides [ResolutionFilter.createWithOnePreferredSize]. static ResolutionFilter Function({required CameraSize preferredSize})? - resolutionFilter_createWithOnePreferredSize; + resolutionFilter_createWithOnePreferredSize; /// Overrides [Camera2CameraInfo.from]. static Camera2CameraInfo Function({required CameraInfo cameraInfo})? - camera2CameraInfo_from; + camera2CameraInfo_from; /// Overrides [DisplayOrientedMeteringPointFactory.new]. static DisplayOrientedMeteringPointFactory Function({ required CameraInfo cameraInfo, required double width, required double height, - })? displayOrientedMeteringPointFactory_new; + })? + displayOrientedMeteringPointFactory_new; /// Overrides [CameraSelector.defaultBackCamera]. static CameraSelector? cameraSelector_defaultBackCamera; @@ -238,7 +259,7 @@ class PigeonOverrides { /// Overrides [AspectRatioStrategy.ratio_16_9FallbackAutoStrategy]. static AspectRatioStrategy? - aspectRatioStrategy_ratio_16_9FallbackAutoStrategy; + aspectRatioStrategy_ratio_16_9FallbackAutoStrategy; /// Overrides [AspectRatioStrategy.ratio_4_3FallbackAutoStrategy]. static AspectRatioStrategy? aspectRatioStrategy_ratio_4_3FallbackAutoStrategy; @@ -251,31 +272,26 @@ class PigeonOverrides { /// Overrides [CameraCharacteristics.infoSupportedHardwareLevel]. static CameraCharacteristicsKey? - cameraCharacteristics_infoSupportedHardwareLevel; + cameraCharacteristics_infoSupportedHardwareLevel; /// Overrides [CameraCharacteristics.sensorOrientation]. static CameraCharacteristicsKey? cameraCharacteristics_sensorOrientation; /// Overrides [CameraCharacteristics.controlAvailableVideoStabilizationModes]. static CameraCharacteristicsKey? - cameraCharacteristics_controlAvailableVideoStabilizationModes; + cameraCharacteristics_controlAvailableVideoStabilizationModes; /// Overrides [ProcessCameraProvider.getInstance]. static Future Function()? - processCameraProvider_getInstance; + processCameraProvider_getInstance; /// Overrides [ImageProxyUtils.getNv21Buffer]. - static Future Function( - int, - int, - List, - )? imageProxyUtils_getNv21Buffer; + static Future Function(int, int, List)? + imageProxyUtils_getNv21Buffer; /// Overrides [QualitySelector.getResolution]. - static Future Function( - CameraInfo, - VideoQuality, - )? qualitySelector_getResolution; + static Future Function(CameraInfo, VideoQuality)? + qualitySelector_getResolution; /// Sets all overridden ProxyApi class members to null. static void pigeon_reset() { @@ -336,7 +352,7 @@ abstract class PigeonInternalProxyApiBaseClass { this.pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, }) : pigeon_instanceManager = - pigeon_instanceManager ?? PigeonInstanceManager.instance; + pigeon_instanceManager ?? PigeonInstanceManager.instance; /// Sends and receives binary data across the Flutter platform barrier. /// @@ -406,9 +422,10 @@ class PigeonInstanceManager { // by calling instanceManager.getIdentifier() inside of `==` while this was a // HashMap). final Expando _identifiers = Expando(); - final Map> _weakInstances = - >{}; - final Map _strongInstances = {}; + final Map> + _weakInstances = >{}; + final Map _strongInstances = + {}; late final Finalizer _finalizer; int _nextIdentifier = 0; @@ -421,7 +438,8 @@ class PigeonInstanceManager { return PigeonInstanceManager(onWeakReferenceRemoved: (_) {}); } WidgetsFlutterBinding.ensureInitialized(); - final _PigeonInternalInstanceManagerApi api = _PigeonInternalInstanceManagerApi(); + final _PigeonInternalInstanceManagerApi api = + _PigeonInternalInstanceManagerApi(); // Clears the native `PigeonInstanceManager` on the initial use of the Dart one. api.clear(); final PigeonInstanceManager instanceManager = PigeonInstanceManager( @@ -429,60 +447,166 @@ class PigeonInstanceManager { api.removeStrongReference(identifier); }, ); - _PigeonInternalInstanceManagerApi.setUpMessageHandlers(instanceManager: instanceManager); - CameraSize.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ResolutionInfo.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CameraIntegerRange.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - VideoRecordEvent.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - VideoRecordEventStart.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - VideoRecordEventFinalize.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - MeteringPoint.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - Observer.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CameraInfo.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CameraSelector.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ProcessCameraProvider.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - UseCase.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + _PigeonInternalInstanceManagerApi.setUpMessageHandlers( + instanceManager: instanceManager, + ); + CameraSize.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ResolutionInfo.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CameraIntegerRange.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + VideoRecordEvent.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + VideoRecordEventStart.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + VideoRecordEventFinalize.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + MeteringPoint.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + Observer.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CameraInfo.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CameraSelector.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ProcessCameraProvider.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + UseCase.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); Camera.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - SystemServicesManager.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CameraPermissionsError.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - DeviceOrientationManager.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - Preview.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - VideoCapture.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - VideoOutput.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - Recorder.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - VideoRecordEventListener.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - PendingRecording.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - Recording.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ImageCapture.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ResolutionStrategy.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ResolutionSelector.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - AspectRatioStrategy.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CameraState.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ExposureState.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ZoomState.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ImageAnalysis.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - Analyzer.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CameraStateStateError.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - LiveData.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ImageProxy.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ImageProxyUtils.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - PlaneProxy.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - QualitySelector.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - FallbackStrategy.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CameraControl.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - FocusMeteringActionBuilder.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - FocusMeteringAction.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - FocusMeteringResult.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CaptureRequest.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CaptureRequestKey.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CaptureRequestOptions.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - Camera2CameraControl.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - ResolutionFilter.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CameraCharacteristicsKey.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - CameraCharacteristics.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - Camera2CameraInfo.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - MeteringPointFactory.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); - DisplayOrientedMeteringPointFactory.pigeon_setUpMessageHandlers(pigeon_instanceManager: instanceManager); + SystemServicesManager.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CameraPermissionsError.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + DeviceOrientationManager.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + Preview.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + VideoCapture.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + VideoOutput.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + Recorder.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + VideoRecordEventListener.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + PendingRecording.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + Recording.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ImageCapture.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ResolutionStrategy.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ResolutionSelector.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + AspectRatioStrategy.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CameraState.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ExposureState.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ZoomState.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ImageAnalysis.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + Analyzer.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CameraStateStateError.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + LiveData.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ImageProxy.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ImageProxyUtils.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + PlaneProxy.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + QualitySelector.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + FallbackStrategy.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CameraControl.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + FocusMeteringActionBuilder.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + FocusMeteringAction.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + FocusMeteringResult.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CaptureRequest.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CaptureRequestKey.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CaptureRequestOptions.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + Camera2CameraControl.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + ResolutionFilter.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CameraCharacteristicsKey.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + CameraCharacteristics.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + Camera2CameraInfo.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + MeteringPointFactory.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); + DisplayOrientedMeteringPointFactory.pigeon_setUpMessageHandlers( + pigeon_instanceManager: instanceManager, + ); return instanceManager; } @@ -499,8 +623,9 @@ class PigeonInstanceManager { final int identifier = _nextUniqueIdentifier(); _identifiers[instance] = identifier; - _weakInstances[identifier] = - WeakReference(instance); + _weakInstances[identifier] = WeakReference( + instance, + ); _finalizer.attach(instance, identifier, detach: instance); final PigeonInternalProxyApiBaseClass copy = instance.pigeon_copy(); @@ -561,15 +686,21 @@ class PigeonInstanceManager { /// /// This method also expects the host `InstanceManager` to have a strong /// reference to the instance the identifier is associated with. - T? getInstanceWithWeakReference(int identifier) { - final PigeonInternalProxyApiBaseClass? weakInstance = _weakInstances[identifier]?.target; + T? getInstanceWithWeakReference( + int identifier, + ) { + final PigeonInternalProxyApiBaseClass? weakInstance = + _weakInstances[identifier]?.target; if (weakInstance == null) { - final PigeonInternalProxyApiBaseClass? strongInstance = _strongInstances[identifier]; + final PigeonInternalProxyApiBaseClass? strongInstance = + _strongInstances[identifier]; if (strongInstance != null) { - final PigeonInternalProxyApiBaseClass copy = strongInstance.pigeon_copy(); + final PigeonInternalProxyApiBaseClass copy = strongInstance + .pigeon_copy(); _identifiers[copy] = identifier; - _weakInstances[identifier] = WeakReference(copy); + _weakInstances[identifier] = + WeakReference(copy); _finalizer.attach(copy, identifier, detach: copy); return copy as T; } @@ -591,7 +722,10 @@ class PigeonInstanceManager { /// /// Throws assertion error if the instance or its identifier has already been /// added. - void addHostCreatedInstance(PigeonInternalProxyApiBaseClass instance, int identifier) { + void addHostCreatedInstance( + PigeonInternalProxyApiBaseClass instance, + int identifier, + ) { assert(!containsIdentifier(identifier)); assert(getIdentifier(instance) == null); assert(identifier >= 0); @@ -620,7 +754,7 @@ class PigeonInstanceManager { class _PigeonInternalInstanceManagerApi { /// Constructor for [_PigeonInternalInstanceManagerApi]. _PigeonInternalInstanceManagerApi({BinaryMessenger? binaryMessenger}) - : pigeonVar_binaryMessenger = binaryMessenger; + : pigeonVar_binaryMessenger = binaryMessenger; final BinaryMessenger? pigeonVar_binaryMessenger; @@ -633,9 +767,10 @@ class _PigeonInternalInstanceManagerApi { }) { { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.PigeonInternalInstanceManager.removeStrongReference', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -643,14 +778,16 @@ class _PigeonInternalInstanceManagerApi { final List args = message! as List; final int arg_identifier = args[0]! as int; try { - (instanceManager ?? PigeonInstanceManager.instance) - .remove(arg_identifier); + (instanceManager ?? PigeonInstanceManager.instance).remove( + arg_identifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -665,8 +802,9 @@ class _PigeonInternalInstanceManagerApi { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([identifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [identifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -699,29 +837,30 @@ class _PigeonInternalInstanceManagerApi { } class _PigeonInternalProxyApiBaseCodec extends _PigeonCodec { - const _PigeonInternalProxyApiBaseCodec(this.instanceManager); - final PigeonInstanceManager instanceManager; - @override - void writeValue(WriteBuffer buffer, Object? value) { - if (value is PigeonInternalProxyApiBaseClass) { - buffer.putUint8(128); - writeValue(buffer, instanceManager.getIdentifier(value)); - } else { - super.writeValue(buffer, value); - } - } - @override - Object? readValueOfType(int type, ReadBuffer buffer) { - switch (type) { - case 128: - return instanceManager - .getInstanceWithWeakReference(readValue(buffer)! as int); - default: - return super.readValueOfType(type, buffer); - } - } -} + const _PigeonInternalProxyApiBaseCodec(this.instanceManager); + final PigeonInstanceManager instanceManager; + @override + void writeValue(WriteBuffer buffer, Object? value) { + if (value is PigeonInternalProxyApiBaseClass) { + buffer.putUint8(128); + writeValue(buffer, instanceManager.getIdentifier(value)); + } else { + super.writeValue(buffer, value); + } + } + @override + Object? readValueOfType(int type, ReadBuffer buffer) { + switch (type) { + case 128: + return instanceManager.getInstanceWithWeakReference( + readValue(buffer)! as int, + ); + default: + return super.readValueOfType(type, buffer); + } + } +} /// Generally classifies the overall set of the camera device functionality. /// @@ -730,13 +869,17 @@ enum InfoSupportedHardwareLevel { /// This camera device is capable of YUV reprocessing and RAW data capture, in /// addition to FULL-level capabilities. level3, + /// This camera device is backed by an external camera connected to this /// Android device. external, + /// This camera device is capable of supporting advanced imaging applications. full, + /// This camera device is running in backward compatibility mode. legacy, + /// This camera device does not have enough capabilities to qualify as a FULL /// device or better. limited, @@ -748,10 +891,13 @@ enum InfoSupportedHardwareLevel { enum AspectRatio { /// 16:9 standard aspect ratio. ratio16To9, + /// 4:3 standard aspect ratio. ratio4To3, + /// The aspect ratio representing no preference for aspect ratio. ratioDefault, + /// The value is not recognized by the wrapper. unknown, } @@ -762,24 +908,26 @@ enum AspectRatio { enum CameraStateType { /// Represents a state where the camera device is closed. closed, + /// Represents a state where the camera device is currently closing. closing, + /// Represents a state where the camera device is open. open, + /// Represents a state where the camera device is currently opening. opening, + /// Represents a state where the camera is waiting for a signal to attempt to /// open the camera device. pendingOpen, + /// This value is not recognized by this wrapper. unknown, } /// The types (T) properly wrapped to be used as a `LiveData`. -enum LiveDataSupportedType { - cameraState, - zoomState, -} +enum LiveDataSupportedType { cameraState, zoomState } /// Video quality constraints that will be used by a QualitySelector to choose /// an appropriate video resolution. @@ -790,14 +938,19 @@ enum LiveDataSupportedType { enum VideoQuality { /// Standard Definition (SD) 480p video quality. SD, + /// High Definition (HD) 720p video quality. HD, + /// Full High Definition (FHD) 1080p video quality. FHD, + /// Ultra High Definition (UHD) 2160p video quality. UHD, + /// The lowest video quality supported by the video frame producer. lowest, + /// The highest video quality supported by the video frame producer. highest, } @@ -809,9 +962,11 @@ enum MeteringMode { /// A flag used in metering mode indicating the AE (Auto Exposure) region is /// enabled. ae, + /// A flag used in metering mode indicating the AF (Auto Focus) region is /// enabled. af, + /// A flag used in metering mode indicating the AWB (Auto White Balance) /// region is enabled. awb, @@ -823,12 +978,15 @@ enum MeteringMode { enum LensFacing { /// A camera on the device facing the same direction as the device's screen. front, + /// A camera on the device facing the opposite direction as the device's /// screen. back, + /// An external camera that has no fixed facing relative to the device's /// screen. external, + /// A camera on the devices that its lens facing is resolved. unknown, } @@ -842,10 +1000,12 @@ enum CameraXFlashMode { /// The flash will be used according to the camera system's determination when /// taking a picture. auto, + /// No flash. /// /// The flash will never be used when taking a picture. off, + /// Always flash. /// /// The flash will always be used when taking a picture. @@ -860,21 +1020,26 @@ enum ResolutionStrategyFallbackRule { /// When the specified bound size is unavailable, CameraX falls back to the /// closest higher resolution size. closestHigher, + /// When the specified bound size is unavailable, CameraX falls back to select /// the closest higher resolution size. closestHigherThenLower, + /// When the specified bound size is unavailable, CameraX falls back to the /// closest lower resolution size. closestLower, + /// When the specified bound size is unavailable, CameraX falls back to select /// the closest lower resolution size. /// /// If CameraX still cannot find any available resolution, it will fallback to /// select other higher resolutions. closestLowerThenHigher, + /// CameraX doesn't select an alternate size when the specified bound size is /// unavailable. none, + /// The value is not recognized by the wrapper. unknown, } @@ -888,9 +1053,11 @@ enum AspectRatioStrategyFallbackRule { /// the closest field of view (FOV) of the camera sensor, from the remaining /// options. auto, + /// CameraX doesn't fall back to select sizes of any other aspect ratio when /// this fallback rule is used. none, + /// The value is not recognized by the wrapper. unknown, } @@ -902,29 +1069,35 @@ enum CameraStateErrorCode { /// An error indicating that the camera device could not be opened due to a /// device policy. cameraDisabled, + /// An error indicating that the camera device was closed due to a fatal /// error. cameraFatalError, + /// An error indicating that the camera device is already in use. cameraInUse, + /// An error indicating that the camera could not be opened because "Do Not /// Disturb" mode is enabled on devices affected by a bug in Android 9 (API /// level 28). doNotDisturbModeEnabled, + /// An error indicating that the limit number of open cameras has been /// reached, and more cameras cannot be opened until other instances are /// closed. maxCamerasInUse, + /// An error indicating that the camera device has encountered a recoverable /// error. otherRecoverableError, + /// An error indicating that configuring the camera has failed. streamConfig, + /// The value is not recognized by this wrapper. unknown, } - class _PigeonCodec extends StandardMessageCodec { const _PigeonCodec(); @override @@ -932,37 +1105,37 @@ class _PigeonCodec extends StandardMessageCodec { if (value is int) { buffer.putUint8(4); buffer.putInt64(value); - } else if (value is InfoSupportedHardwareLevel) { + } else if (value is InfoSupportedHardwareLevel) { buffer.putUint8(129); writeValue(buffer, value.index); - } else if (value is AspectRatio) { + } else if (value is AspectRatio) { buffer.putUint8(130); writeValue(buffer, value.index); - } else if (value is CameraStateType) { + } else if (value is CameraStateType) { buffer.putUint8(131); writeValue(buffer, value.index); - } else if (value is LiveDataSupportedType) { + } else if (value is LiveDataSupportedType) { buffer.putUint8(132); writeValue(buffer, value.index); - } else if (value is VideoQuality) { + } else if (value is VideoQuality) { buffer.putUint8(133); writeValue(buffer, value.index); - } else if (value is MeteringMode) { + } else if (value is MeteringMode) { buffer.putUint8(134); writeValue(buffer, value.index); - } else if (value is LensFacing) { + } else if (value is LensFacing) { buffer.putUint8(135); writeValue(buffer, value.index); - } else if (value is CameraXFlashMode) { + } else if (value is CameraXFlashMode) { buffer.putUint8(136); writeValue(buffer, value.index); - } else if (value is ResolutionStrategyFallbackRule) { + } else if (value is ResolutionStrategyFallbackRule) { buffer.putUint8(137); writeValue(buffer, value.index); - } else if (value is AspectRatioStrategyFallbackRule) { + } else if (value is AspectRatioStrategyFallbackRule) { buffer.putUint8(138); writeValue(buffer, value.index); - } else if (value is CameraStateErrorCode) { + } else if (value is CameraStateErrorCode) { buffer.putUint8(139); writeValue(buffer, value.index); } else { @@ -999,10 +1172,14 @@ class _PigeonCodec extends StandardMessageCodec { return value == null ? null : CameraXFlashMode.values[value]; case 137: final value = readValue(buffer) as int?; - return value == null ? null : ResolutionStrategyFallbackRule.values[value]; + return value == null + ? null + : ResolutionStrategyFallbackRule.values[value]; case 138: final value = readValue(buffer) as int?; - return value == null ? null : AspectRatioStrategyFallbackRule.values[value]; + return value == null + ? null + : AspectRatioStrategyFallbackRule.values[value]; case 139: final value = readValue(buffer) as int?; return value == null ? null : CameraStateErrorCode.values[value]; @@ -1011,6 +1188,7 @@ class _PigeonCodec extends StandardMessageCodec { } } } + /// Immutable class for describing width and height dimensions in pixels. /// /// See https://developer.android.com/reference/android/util/Size.html. @@ -1022,10 +1200,7 @@ class CameraSize extends PigeonInternalProxyApiBaseClass { required int height, }) { if (PigeonOverrides.cameraSize_new != null) { - return PigeonOverrides.cameraSize_new!( - width: width, - height: height, - ); + return PigeonOverrides.cameraSize_new!(width: width, height: height); } return CameraSize.pigeon_new( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -1042,8 +1217,8 @@ class CameraSize extends PigeonInternalProxyApiBaseClass { required this.width, required this.height, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCameraSize; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -1054,8 +1229,9 @@ class CameraSize extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, width, height]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, width, height], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -1092,20 +1268,19 @@ class CameraSize extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - CameraSize Function( - int width, - int height, - )? pigeon_newInstance, + CameraSize Function(int width, int height)? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CameraSize.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -1117,21 +1292,22 @@ class CameraSize extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_width, arg_height) ?? - CameraSize.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - width: arg_width, - height: arg_height, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_width, arg_height) ?? + CameraSize.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + width: arg_width, + height: arg_height, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -1176,13 +1352,15 @@ class ResolutionInfo extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ResolutionInfo.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -1193,20 +1371,21 @@ class ResolutionInfo extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_resolution) ?? - ResolutionInfo.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - resolution: arg_resolution, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_resolution) ?? + ResolutionInfo.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + resolution: arg_resolution, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -1256,8 +1435,8 @@ class CameraIntegerRange extends PigeonInternalProxyApiBaseClass { required this.lower, required this.upper, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCameraIntegerRange; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -1268,8 +1447,9 @@ class CameraIntegerRange extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, lower, upper]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, lower, upper], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -1294,8 +1474,9 @@ class CameraIntegerRange extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecCameraIntegerRange = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecCameraIntegerRange = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); /// The lower endpoint. final int lower; @@ -1307,20 +1488,19 @@ class CameraIntegerRange extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - CameraIntegerRange Function( - int lower, - int upper, - )? pigeon_newInstance, + CameraIntegerRange Function(int lower, int upper)? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CameraIntegerRange.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -1332,21 +1512,22 @@ class CameraIntegerRange extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_lower, arg_upper) ?? - CameraIntegerRange.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - lower: arg_lower, - upper: arg_upper, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_lower, arg_upper) ?? + CameraIntegerRange.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + lower: arg_lower, + upper: arg_upper, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -1386,13 +1567,15 @@ class VideoRecordEvent extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEvent.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEvent.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -1402,19 +1585,20 @@ class VideoRecordEvent extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - VideoRecordEvent.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + VideoRecordEvent.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -1452,13 +1636,15 @@ class VideoRecordEventStart extends VideoRecordEvent { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventStart.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventStart.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -1468,19 +1654,20 @@ class VideoRecordEventStart extends VideoRecordEvent { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - VideoRecordEventStart.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + VideoRecordEventStart.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -1518,13 +1705,15 @@ class VideoRecordEventFinalize extends VideoRecordEvent { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventFinalize.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventFinalize.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -1534,19 +1723,20 @@ class VideoRecordEventFinalize extends VideoRecordEvent { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - VideoRecordEventFinalize.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + VideoRecordEventFinalize.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -1588,13 +1778,15 @@ class MeteringPoint extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.MeteringPoint.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.MeteringPoint.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -1604,19 +1796,20 @@ class MeteringPoint extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - MeteringPoint.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + MeteringPoint.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -1638,8 +1831,9 @@ class MeteringPoint extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -1666,10 +1860,7 @@ class Observer extends PigeonInternalProxyApiBaseClass { factory Observer({ BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - required void Function( - Observer pigeon_instance, - Object value, - ) onChanged, + required void Function(Observer pigeon_instance, Object value) onChanged, }) { if (PigeonOverrides.observer_new != null) { return PigeonOverrides.observer_new!(onChanged: onChanged); @@ -1687,8 +1878,8 @@ class Observer extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required this.onChanged, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecObserver; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -1699,8 +1890,9 @@ class Observer extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -1745,29 +1937,25 @@ class Observer extends PigeonInternalProxyApiBaseClass { /// /// Alternatively, [PigeonInstanceManager.removeWeakReference] can be used to /// release the associated Native object manually. - final void Function( - Observer pigeon_instance, - Object value, - ) onChanged; + final void Function(Observer pigeon_instance, Object value) onChanged; static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - void Function( - Observer pigeon_instance, - Object value, - )? onChanged, + void Function(Observer pigeon_instance, Object value)? onChanged, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Observer.onChanged', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.Observer.onChanged', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -1776,14 +1964,17 @@ class Observer extends PigeonInternalProxyApiBaseClass { final Observer arg_pigeon_instance = args[0]! as Observer; final Object arg_value = args[1]!; try { - (onChanged ?? arg_pigeon_instance.onChanged) - .call(arg_pigeon_instance, arg_value); + (onChanged ?? arg_pigeon_instance.onChanged).call( + arg_pigeon_instance, + arg_value, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -1838,17 +2029,20 @@ class CameraInfo extends PigeonInternalProxyApiBaseClass { int sensorRotationDegrees, LensFacing lensFacing, ExposureState exposureState, - )? pigeon_newInstance, + )? + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CameraInfo.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -1861,23 +2055,27 @@ class CameraInfo extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_sensorRotationDegrees, - arg_lensFacing, arg_exposureState) ?? - CameraInfo.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - sensorRotationDegrees: arg_sensorRotationDegrees, - lensFacing: arg_lensFacing, - exposureState: arg_exposureState, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call( + arg_sensorRotationDegrees, + arg_lensFacing, + arg_exposureState, + ) ?? + CameraInfo.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + sensorRotationDegrees: arg_sensorRotationDegrees, + lensFacing: arg_lensFacing, + exposureState: arg_exposureState, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -1896,8 +2094,9 @@ class CameraInfo extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -1920,8 +2119,9 @@ class CameraInfo extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -1976,8 +2176,8 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { LensFacing? requireLensFacing, CameraInfo? cameraInfoForFilter, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCameraSelector; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -1988,12 +2188,13 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([ - pigeonVar_instanceIdentifier, - requireLensFacing, - cameraInfoForFilter - ]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [ + pigeonVar_instanceIdentifier, + requireLensFacing, + cameraInfoForFilter, + ], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -2042,13 +2243,15 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CameraSelector.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -2058,19 +2261,20 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CameraSelector.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + CameraSelector.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -2093,8 +2297,9 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -2122,8 +2327,9 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -2148,8 +2354,9 @@ class CameraSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, cameraInfos]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, cameraInfos], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -2185,8 +2392,9 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecProcessCameraProvider = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecProcessCameraProvider = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -2196,13 +2404,15 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -2212,19 +2422,20 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - ProcessCameraProvider.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + ProcessCameraProvider.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -2241,7 +2452,8 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { } final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; const pigeonVar_channelName = 'dev.flutter.pigeon.camera_android_camerax.ProcessCameraProvider.getInstance'; @@ -2273,8 +2485,9 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -2300,8 +2513,9 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, cameraSelector, useCases]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, cameraSelector, useCases], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -2324,8 +2538,9 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, useCase]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, useCase], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -2348,8 +2563,9 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, useCases]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, useCases], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -2372,8 +2588,9 @@ class ProcessCameraProvider extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -2414,13 +2631,15 @@ class UseCase extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.UseCase.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.UseCase.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -2430,19 +2649,20 @@ class UseCase extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - UseCase.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + UseCase.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -2489,13 +2709,15 @@ class Camera extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Camera.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.Camera.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -2506,20 +2728,21 @@ class Camera extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_cameraControl) ?? - Camera.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - cameraControl: arg_cameraControl, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_cameraControl) ?? + Camera.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + cameraControl: arg_cameraControl, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -2538,8 +2761,9 @@ class Camera extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -2568,11 +2792,13 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { required void Function( SystemServicesManager pigeon_instance, String errorDescription, - ) onCameraError, + ) + onCameraError, }) { if (PigeonOverrides.systemServicesManager_new != null) { return PigeonOverrides.systemServicesManager_new!( - onCameraError: onCameraError); + onCameraError: onCameraError, + ); } return SystemServicesManager.pigeon_new( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -2587,8 +2813,8 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required this.onCameraError, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecSystemServicesManager; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -2599,8 +2825,9 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -2624,8 +2851,9 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecSystemServicesManager = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecSystemServicesManager = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); /// Callback method. /// @@ -2649,7 +2877,8 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { final void Function( SystemServicesManager pigeon_instance, String errorDescription, - ) onCameraError; + ) + onCameraError; static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -2658,17 +2887,20 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { void Function( SystemServicesManager pigeon_instance, String errorDescription, - )? onCameraError, + )? + onCameraError, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.SystemServicesManager.onCameraError', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -2678,14 +2910,17 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { args[0]! as SystemServicesManager; final String arg_errorDescription = args[1]! as String; try { - (onCameraError ?? arg_pigeon_instance.onCameraError) - .call(arg_pigeon_instance, arg_errorDescription); + (onCameraError ?? arg_pigeon_instance.onCameraError).call( + arg_pigeon_instance, + arg_errorDescription, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -2693,7 +2928,8 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { } Future requestCameraPermissions( - bool enableAudio) async { + bool enableAudio, + ) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecSystemServicesManager; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -2704,8 +2940,9 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, enableAudio]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, enableAudio], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -2718,10 +2955,7 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { /// Returns a path to be used to create a temp file in the current cache /// directory. - Future getTempFilePath( - String prefix, - String suffix, - ) async { + Future getTempFilePath(String prefix, String suffix) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecSystemServicesManager; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -2732,8 +2966,9 @@ class SystemServicesManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, prefix, suffix]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, prefix, suffix], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -2776,20 +3011,20 @@ class CameraPermissionsError extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - CameraPermissionsError Function( - String errorCode, - String description, - )? pigeon_newInstance, + CameraPermissionsError Function(String errorCode, String description)? + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CameraPermissionsError.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -2801,21 +3036,22 @@ class CameraPermissionsError extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_errorCode, arg_description) ?? - CameraPermissionsError.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - errorCode: arg_errorCode, - description: arg_description, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_errorCode, arg_description) ?? + CameraPermissionsError.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + errorCode: arg_errorCode, + description: arg_description, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -2842,11 +3078,13 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { required void Function( DeviceOrientationManager pigeon_instance, String orientation, - ) onDeviceOrientationChanged, + ) + onDeviceOrientationChanged, }) { if (PigeonOverrides.deviceOrientationManager_new != null) { return PigeonOverrides.deviceOrientationManager_new!( - onDeviceOrientationChanged: onDeviceOrientationChanged); + onDeviceOrientationChanged: onDeviceOrientationChanged, + ); } return DeviceOrientationManager.pigeon_new( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -2861,8 +3099,8 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required this.onDeviceOrientationChanged, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecDeviceOrientationManager; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -2873,8 +3111,9 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -2898,8 +3137,9 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecDeviceOrientationManager = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecDeviceOrientationManager = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); /// Callback method. /// @@ -2923,26 +3163,27 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { final void Function( DeviceOrientationManager pigeon_instance, String orientation, - ) onDeviceOrientationChanged; + ) + onDeviceOrientationChanged; static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - void Function( - DeviceOrientationManager pigeon_instance, - String orientation, - )? onDeviceOrientationChanged, + void Function(DeviceOrientationManager pigeon_instance, String orientation)? + onDeviceOrientationChanged, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.DeviceOrientationManager.onDeviceOrientationChanged', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -2960,7 +3201,8 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -2978,8 +3220,9 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -3000,8 +3243,9 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -3022,8 +3266,9 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -3045,8 +3290,9 @@ class DeviceOrientationManager extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -3102,8 +3348,8 @@ class Preview extends UseCase { int? targetRotation, CameraIntegerRange? targetFpsRange, }) : super.pigeon_detached() { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecPreview; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3116,11 +3362,11 @@ class Preview extends UseCase { ); final Future pigeonVar_sendFuture = pigeonVar_channel .send([ - pigeonVar_instanceIdentifier, - resolutionSelector, - targetRotation, - targetFpsRange - ]); + pigeonVar_instanceIdentifier, + resolutionSelector, + targetRotation, + targetFpsRange, + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -3153,17 +3399,19 @@ class Preview extends UseCase { BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, Preview Function(ResolutionSelector? resolutionSelector)? - pigeon_newInstance, + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Preview.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.Preview.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -3175,20 +3423,21 @@ class Preview extends UseCase { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_resolutionSelector) ?? - Preview.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - resolutionSelector: arg_resolutionSelector, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_resolutionSelector) ?? + Preview.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + resolutionSelector: arg_resolutionSelector, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -3204,7 +3453,8 @@ class Preview extends UseCase { /// 3. Returns the texture id of the `TextureEntry` that provided the /// `SurfaceProducer`. Future setSurfaceProvider( - SystemServicesManager systemServicesManager) async { + SystemServicesManager systemServicesManager, + ) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecPreview; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3215,8 +3465,9 @@ class Preview extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, systemServicesManager]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, systemServicesManager], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -3240,8 +3491,9 @@ class Preview extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -3263,8 +3515,9 @@ class Preview extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -3287,8 +3540,9 @@ class Preview extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, rotation]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, rotation], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -3311,8 +3565,9 @@ class Preview extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -3366,8 +3621,8 @@ class VideoCapture extends UseCase { required VideoOutput videoOutput, CameraIntegerRange? targetFpsRange, }) : super.pigeon_detached() { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecVideoCapture; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3379,7 +3634,8 @@ class VideoCapture extends UseCase { binaryMessenger: pigeonVar_binaryMessenger, ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, videoOutput, targetFpsRange]); + [pigeonVar_instanceIdentifier, videoOutput, targetFpsRange], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -3412,13 +3668,15 @@ class VideoCapture extends UseCase { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoCapture.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.VideoCapture.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -3428,19 +3686,20 @@ class VideoCapture extends UseCase { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - VideoCapture.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + VideoCapture.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -3459,8 +3718,9 @@ class VideoCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -3483,8 +3743,9 @@ class VideoCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, rotation]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, rotation], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -3525,13 +3786,15 @@ class VideoOutput extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoOutput.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.VideoOutput.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -3541,19 +3804,20 @@ class VideoOutput extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - VideoOutput.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + VideoOutput.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -3605,8 +3869,8 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { int? targetVideoEncodingBitRate, QualitySelector? qualitySelector, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecRecorder; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3617,13 +3881,13 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([ - pigeonVar_instanceIdentifier, - aspectRatio, - targetVideoEncodingBitRate, - qualitySelector - ]); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([ + pigeonVar_instanceIdentifier, + aspectRatio, + targetVideoEncodingBitRate, + qualitySelector, + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -3656,13 +3920,15 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.Recorder.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -3672,19 +3938,20 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - Recorder.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + Recorder.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -3703,8 +3970,9 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -3727,8 +3995,9 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -3751,8 +4020,9 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -3775,8 +4045,9 @@ class Recorder extends PigeonInternalProxyApiBaseClass implements VideoOutput { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, path]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, path], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -3804,7 +4075,8 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { required void Function( VideoRecordEventListener pigeon_instance, VideoRecordEvent event, - ) onEvent, + ) + onEvent, }) { if (PigeonOverrides.videoRecordEventListener_new != null) { return PigeonOverrides.videoRecordEventListener_new!(onEvent: onEvent); @@ -3822,8 +4094,8 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required this.onEvent, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecVideoRecordEventListener; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -3834,8 +4106,9 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -3859,8 +4132,9 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecVideoRecordEventListener = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecVideoRecordEventListener = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); /// Callback method. /// @@ -3884,7 +4158,8 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { final void Function( VideoRecordEventListener pigeon_instance, VideoRecordEvent event, - ) onEvent; + ) + onEvent; static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -3893,17 +4168,20 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { void Function( VideoRecordEventListener pigeon_instance, VideoRecordEvent event, - )? onEvent, + )? + onEvent, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.onEvent', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.VideoRecordEventListener.onEvent', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -3913,14 +4191,17 @@ class VideoRecordEventListener extends PigeonInternalProxyApiBaseClass { args[0]! as VideoRecordEventListener; final VideoRecordEvent arg_event = args[1]! as VideoRecordEvent; try { - (onEvent ?? arg_pigeon_instance.onEvent) - .call(arg_pigeon_instance, arg_event); + (onEvent ?? arg_pigeon_instance.onEvent).call( + arg_pigeon_instance, + arg_event, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -3962,13 +4243,15 @@ class PendingRecording extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.PendingRecording.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.PendingRecording.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -3978,19 +4261,20 @@ class PendingRecording extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - PendingRecording.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + PendingRecording.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -4009,8 +4293,9 @@ class PendingRecording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, initialMuted]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, initialMuted], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -4041,8 +4326,9 @@ class PendingRecording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -4065,8 +4351,9 @@ class PendingRecording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, listener]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, listener], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -4111,13 +4398,15 @@ class Recording extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Recording.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.Recording.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -4127,19 +4416,20 @@ class Recording extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - Recording.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + Recording.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -4158,8 +4448,9 @@ class Recording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -4181,8 +4472,9 @@ class Recording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -4204,8 +4496,9 @@ class Recording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -4229,8 +4522,9 @@ class Recording extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -4284,8 +4578,8 @@ class ImageCapture extends UseCase { int? targetRotation, CameraXFlashMode? flashMode, }) : super.pigeon_detached() { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecImageCapture; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -4296,13 +4590,14 @@ class ImageCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([ - pigeonVar_instanceIdentifier, - resolutionSelector, - targetRotation, - flashMode - ]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [ + pigeonVar_instanceIdentifier, + resolutionSelector, + targetRotation, + flashMode, + ], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -4335,17 +4630,19 @@ class ImageCapture extends UseCase { BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, ImageCapture Function(ResolutionSelector? resolutionSelector)? - pigeon_newInstance, + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ImageCapture.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ImageCapture.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -4357,20 +4654,21 @@ class ImageCapture extends UseCase { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_resolutionSelector) ?? - ImageCapture.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - resolutionSelector: arg_resolutionSelector, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_resolutionSelector) ?? + ImageCapture.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + resolutionSelector: arg_resolutionSelector, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -4389,8 +4687,9 @@ class ImageCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, flashMode]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, flashMode], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -4402,7 +4701,8 @@ class ImageCapture extends UseCase { /// Captures a new still image for in memory access. Future takePicture( - SystemServicesManager systemServicesManager) async { + SystemServicesManager systemServicesManager, + ) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecImageCapture; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -4413,8 +4713,9 @@ class ImageCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, systemServicesManager]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, systemServicesManager], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -4437,8 +4738,9 @@ class ImageCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, rotation]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, rotation], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -4490,8 +4792,8 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { required CameraSize boundSize, required ResolutionStrategyFallbackRule fallbackRule, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecResolutionStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -4502,8 +4804,9 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, boundSize, fallbackRule]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, boundSize, fallbackRule], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -4526,8 +4829,9 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecResolutionStrategy = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecResolutionStrategy = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); /// A resolution strategy chooses the highest available resolution. static final ResolutionStrategy _highestAvailableStrategy = @@ -4546,13 +4850,15 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ResolutionStrategy.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -4562,19 +4868,20 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - ResolutionStrategy.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + ResolutionStrategy.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -4598,8 +4905,9 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -4623,8 +4931,9 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -4648,8 +4957,9 @@ class ResolutionStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -4705,8 +5015,8 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { this.resolutionStrategy, AspectRatioStrategy? aspectRatioStrategy, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecResolutionSelector; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -4717,13 +5027,13 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([ - pigeonVar_instanceIdentifier, - resolutionFilter, - resolutionStrategy, - aspectRatioStrategy - ]); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([ + pigeonVar_instanceIdentifier, + resolutionFilter, + resolutionStrategy, + aspectRatioStrategy, + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -4748,8 +5058,9 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecResolutionSelector = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecResolutionSelector = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); /// The resolution filter to output the final desired sizes list. final ResolutionFilter? resolutionFilter; @@ -4764,17 +5075,20 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { ResolutionSelector Function( ResolutionFilter? resolutionFilter, ResolutionStrategy? resolutionStrategy, - )? pigeon_newInstance, + )? + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ResolutionSelector.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -4788,22 +5102,25 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call( - arg_resolutionFilter, arg_resolutionStrategy) ?? - ResolutionSelector.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - resolutionFilter: arg_resolutionFilter, - resolutionStrategy: arg_resolutionStrategy, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call( + arg_resolutionFilter, + arg_resolutionStrategy, + ) ?? + ResolutionSelector.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + resolutionFilter: arg_resolutionFilter, + resolutionStrategy: arg_resolutionStrategy, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -4824,8 +5141,9 @@ class ResolutionSelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -4883,8 +5201,8 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { required AspectRatio preferredAspectRatio, required AspectRatioStrategyFallbackRule fallbackRule, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecAspectRatioStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -4895,12 +5213,13 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([ - pigeonVar_instanceIdentifier, - preferredAspectRatio, - fallbackRule - ]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [ + pigeonVar_instanceIdentifier, + preferredAspectRatio, + fallbackRule, + ], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -4923,8 +5242,9 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecAspectRatioStrategy = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecAspectRatioStrategy = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); /// The pre-defined aspect ratio strategy that selects sizes with RATIO_16_9 /// in priority. @@ -4956,13 +5276,15 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.AspectRatioStrategy.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -4972,19 +5294,20 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - AspectRatioStrategy.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + AspectRatioStrategy.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -5008,8 +5331,9 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -5038,8 +5362,9 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -5064,8 +5389,9 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -5088,8 +5414,9 @@ class AspectRatioStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -5135,20 +5462,20 @@ class CameraState extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - CameraState Function( - CameraStateType type, - CameraStateStateError? error, - )? pigeon_newInstance, + CameraState Function(CameraStateType type, CameraStateStateError? error)? + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraState.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CameraState.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -5161,21 +5488,22 @@ class CameraState extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_type, arg_error) ?? - CameraState.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - type: arg_type, - error: arg_error, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_type, arg_error) ?? + CameraState.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + type: arg_type, + error: arg_error, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -5223,17 +5551,20 @@ class ExposureState extends PigeonInternalProxyApiBaseClass { ExposureState Function( CameraIntegerRange exposureCompensationRange, double exposureCompensationStep, - )? pigeon_newInstance, + )? + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ExposureState.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ExposureState.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -5246,22 +5577,26 @@ class ExposureState extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_exposureCompensationRange, - arg_exposureCompensationStep) ?? - ExposureState.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - exposureCompensationRange: arg_exposureCompensationRange, - exposureCompensationStep: arg_exposureCompensationStep, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call( + arg_exposureCompensationRange, + arg_exposureCompensationStep, + ) ?? + ExposureState.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + exposureCompensationRange: + arg_exposureCompensationRange, + exposureCompensationStep: arg_exposureCompensationStep, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -5305,20 +5640,20 @@ class ZoomState extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - ZoomState Function( - double minZoomRatio, - double maxZoomRatio, - )? pigeon_newInstance, + ZoomState Function(double minZoomRatio, double maxZoomRatio)? + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ZoomState.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ZoomState.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -5330,21 +5665,25 @@ class ZoomState extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_minZoomRatio, arg_maxZoomRatio) ?? - ZoomState.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - minZoomRatio: arg_minZoomRatio, - maxZoomRatio: arg_maxZoomRatio, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call( + arg_minZoomRatio, + arg_maxZoomRatio, + ) ?? + ZoomState.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + minZoomRatio: arg_minZoomRatio, + maxZoomRatio: arg_maxZoomRatio, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -5402,8 +5741,8 @@ class ImageAnalysis extends UseCase { CameraIntegerRange? targetFpsRange, int? outputImageFormat, }) : super.pigeon_detached() { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecImageAnalysis; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -5414,14 +5753,14 @@ class ImageAnalysis extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([ - pigeonVar_instanceIdentifier, - resolutionSelector, - targetRotation, - targetFpsRange, - outputImageFormat - ]); + final Future pigeonVar_sendFuture = pigeonVar_channel + .send([ + pigeonVar_instanceIdentifier, + resolutionSelector, + targetRotation, + targetFpsRange, + outputImageFormat, + ]); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -5454,17 +5793,19 @@ class ImageAnalysis extends UseCase { BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, ImageAnalysis Function(ResolutionSelector? resolutionSelector)? - pigeon_newInstance, + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ImageAnalysis.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -5476,20 +5817,21 @@ class ImageAnalysis extends UseCase { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_resolutionSelector) ?? - ImageAnalysis.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - resolutionSelector: arg_resolutionSelector, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_resolutionSelector) ?? + ImageAnalysis.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + resolutionSelector: arg_resolutionSelector, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -5508,8 +5850,9 @@ class ImageAnalysis extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, analyzer]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, analyzer], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -5531,8 +5874,9 @@ class ImageAnalysis extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -5554,8 +5898,9 @@ class ImageAnalysis extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, rotation]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, rotation], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -5582,10 +5927,7 @@ class Analyzer extends PigeonInternalProxyApiBaseClass { factory Analyzer({ BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - required void Function( - Analyzer pigeon_instance, - ImageProxy image, - ) analyze, + required void Function(Analyzer pigeon_instance, ImageProxy image) analyze, }) { if (PigeonOverrides.analyzer_new != null) { return PigeonOverrides.analyzer_new!(analyze: analyze); @@ -5603,8 +5945,8 @@ class Analyzer extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required this.analyze, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecAnalyzer; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -5615,8 +5957,9 @@ class Analyzer extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -5661,29 +6004,25 @@ class Analyzer extends PigeonInternalProxyApiBaseClass { /// /// Alternatively, [PigeonInstanceManager.removeWeakReference] can be used to /// release the associated Native object manually. - final void Function( - Analyzer pigeon_instance, - ImageProxy image, - ) analyze; + final void Function(Analyzer pigeon_instance, ImageProxy image) analyze; static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - void Function( - Analyzer pigeon_instance, - ImageProxy image, - )? analyze, + void Function(Analyzer pigeon_instance, ImageProxy image)? analyze, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Analyzer.analyze', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.Analyzer.analyze', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -5692,14 +6031,17 @@ class Analyzer extends PigeonInternalProxyApiBaseClass { final Analyzer arg_pigeon_instance = args[0]! as Analyzer; final ImageProxy arg_image = args[1]! as ImageProxy; try { - (analyze ?? arg_pigeon_instance.analyze) - .call(arg_pigeon_instance, arg_image); + (analyze ?? arg_pigeon_instance.analyze).call( + arg_pigeon_instance, + arg_image, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -5739,17 +6081,19 @@ class CameraStateStateError extends PigeonInternalProxyApiBaseClass { BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, CameraStateStateError Function(CameraStateErrorCode code)? - pigeon_newInstance, + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CameraStateStateError.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -5761,20 +6105,21 @@ class CameraStateStateError extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_code) ?? - CameraStateStateError.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - code: arg_code, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_code) ?? + CameraStateStateError.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + code: arg_code, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -5824,13 +6169,15 @@ class LiveData extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.LiveData.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.LiveData.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -5842,20 +6189,21 @@ class LiveData extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_type) ?? - LiveData.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - type: arg_type, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_type) ?? + LiveData.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + type: arg_type, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -5875,8 +6223,9 @@ class LiveData extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, observer]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, observer], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -5898,8 +6247,9 @@ class LiveData extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -5921,8 +6271,9 @@ class LiveData extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -5976,21 +6327,19 @@ class ImageProxy extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - ImageProxy Function( - int format, - int width, - int height, - )? pigeon_newInstance, + ImageProxy Function(int format, int width, int height)? pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ImageProxy.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ImageProxy.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -6003,22 +6352,23 @@ class ImageProxy extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_format, arg_width, arg_height) ?? - ImageProxy.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - format: arg_format, - width: arg_width, - height: arg_height, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_format, arg_width, arg_height) ?? + ImageProxy.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + format: arg_format, + width: arg_width, + height: arg_height, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -6037,8 +6387,9 @@ class ImageProxy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -6061,8 +6412,9 @@ class ImageProxy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -6107,13 +6459,15 @@ class ImageProxyUtils extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -6123,19 +6477,20 @@ class ImageProxyUtils extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - ImageProxyUtils.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + ImageProxyUtils.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -6159,7 +6514,8 @@ class ImageProxyUtils extends PigeonInternalProxyApiBaseClass { } final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; const pigeonVar_channelName = 'dev.flutter.pigeon.camera_android_camerax.ImageProxyUtils.getNv21Buffer'; @@ -6168,8 +6524,9 @@ class ImageProxyUtils extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([imageWidth, imageHeight, planes]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [imageWidth, imageHeight, planes], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -6220,21 +6577,20 @@ class PlaneProxy extends PigeonInternalProxyApiBaseClass { bool pigeon_clearHandlers = false, BinaryMessenger? pigeon_binaryMessenger, PigeonInstanceManager? pigeon_instanceManager, - PlaneProxy Function( - Uint8List buffer, - int pixelStride, - int rowStride, - )? pigeon_newInstance, + PlaneProxy Function(Uint8List buffer, int pixelStride, int rowStride)? + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.PlaneProxy.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.PlaneProxy.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -6247,23 +6603,27 @@ class PlaneProxy extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call( - arg_buffer, arg_pixelStride, arg_rowStride) ?? - PlaneProxy.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - buffer: arg_buffer, - pixelStride: arg_pixelStride, - rowStride: arg_rowStride, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call( + arg_buffer, + arg_pixelStride, + arg_rowStride, + ) ?? + PlaneProxy.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + buffer: arg_buffer, + pixelStride: arg_pixelStride, + rowStride: arg_rowStride, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -6316,8 +6676,8 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { required VideoQuality quality, FallbackStrategy? fallbackStrategy, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecQualitySelector; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -6329,7 +6689,8 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { binaryMessenger: pigeonVar_binaryMessenger, ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, quality, fallbackStrategy]); + [pigeonVar_instanceIdentifier, quality, fallbackStrategy], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -6370,8 +6731,8 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { required List qualities, FallbackStrategy? fallbackStrategy, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecQualitySelector; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -6383,7 +6744,8 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { binaryMessenger: pigeonVar_binaryMessenger, ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, qualities, fallbackStrategy]); + [pigeonVar_instanceIdentifier, qualities, fallbackStrategy], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -6416,13 +6778,15 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.QualitySelector.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.QualitySelector.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -6432,19 +6796,20 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - QualitySelector.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + QualitySelector.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -6466,7 +6831,8 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { } final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; const pigeonVar_channelName = 'dev.flutter.pigeon.camera_android_camerax.QualitySelector.getResolution'; @@ -6475,8 +6841,9 @@ class QualitySelector extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([cameraInfo, quality]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [cameraInfo, quality], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -6511,7 +6878,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.fallbackStrategy_higherQualityOrLowerThan != null) { return PigeonOverrides.fallbackStrategy_higherQualityOrLowerThan!( - quality: quality); + quality: quality, + ); } return FallbackStrategy.pigeon_higherQualityOrLowerThan( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -6528,8 +6896,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required VideoQuality quality, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFallbackStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -6540,8 +6908,9 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, quality]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, quality], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -6562,7 +6931,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.fallbackStrategy_higherQualityThan != null) { return PigeonOverrides.fallbackStrategy_higherQualityThan!( - quality: quality); + quality: quality, + ); } return FallbackStrategy.pigeon_higherQualityThan( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -6579,8 +6949,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required VideoQuality quality, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFallbackStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -6591,8 +6961,9 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, quality]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, quality], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -6613,7 +6984,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.fallbackStrategy_lowerQualityOrHigherThan != null) { return PigeonOverrides.fallbackStrategy_lowerQualityOrHigherThan!( - quality: quality); + quality: quality, + ); } return FallbackStrategy.pigeon_lowerQualityOrHigherThan( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -6630,8 +7002,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required VideoQuality quality, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFallbackStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -6642,8 +7014,9 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, quality]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, quality], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -6664,7 +7037,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.fallbackStrategy_lowerQualityThan != null) { return PigeonOverrides.fallbackStrategy_lowerQualityThan!( - quality: quality); + quality: quality, + ); } return FallbackStrategy.pigeon_lowerQualityThan( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -6681,8 +7055,8 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required VideoQuality quality, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFallbackStrategy; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -6693,8 +7067,9 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, quality]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, quality], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -6727,13 +7102,15 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.FallbackStrategy.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -6743,19 +7120,20 @@ class FallbackStrategy extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - FallbackStrategy.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + FallbackStrategy.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -6798,13 +7176,15 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraControl.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CameraControl.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -6814,19 +7194,20 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CameraControl.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + CameraControl.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -6845,8 +7226,9 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, torch]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, torch], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -6868,8 +7250,9 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, ratio]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, ratio], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -6882,7 +7265,8 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { /// Starts a focus and metering action configured by the /// `FocusMeteringAction`. Future startFocusAndMetering( - FocusMeteringAction action) async { + FocusMeteringAction action, + ) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCameraControl; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -6893,8 +7277,9 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, action]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, action], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -6917,8 +7302,9 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -6940,8 +7326,9 @@ class CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, index]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, index], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -6990,8 +7377,8 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required MeteringPoint point, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFocusMeteringActionBuilder; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7002,8 +7389,9 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier, point]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, point], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -7044,8 +7432,8 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { required MeteringPoint point, required MeteringMode mode, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFocusMeteringActionBuilder; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7056,8 +7444,9 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, point, mode]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, point, mode], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -7080,8 +7469,9 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecFocusMeteringActionBuilder = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecFocusMeteringActionBuilder = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -7091,13 +7481,15 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringActionBuilder.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -7107,19 +7499,20 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - FocusMeteringActionBuilder.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + FocusMeteringActionBuilder.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -7138,8 +7531,9 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, point]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, point], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -7150,10 +7544,7 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { } /// Adds another MeteringPoint with specified meteringMode. - Future addPointWithMode( - MeteringPoint point, - MeteringMode mode, - ) async { + Future addPointWithMode(MeteringPoint point, MeteringMode mode) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecFocusMeteringActionBuilder; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7164,8 +7555,9 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, point, mode]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, point, mode], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -7187,8 +7579,9 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -7210,8 +7603,9 @@ class FocusMeteringActionBuilder extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -7270,17 +7664,20 @@ class FocusMeteringAction extends PigeonInternalProxyApiBaseClass { List meteringPointsAf, List meteringPointsAwb, bool isAutoCancelEnabled, - )? pigeon_newInstance, + )? + pigeon_newInstance, }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringAction.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -7297,27 +7694,29 @@ class FocusMeteringAction extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call( - arg_meteringPointsAe, - arg_meteringPointsAf, - arg_meteringPointsAwb, - arg_isAutoCancelEnabled) ?? - FocusMeteringAction.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - meteringPointsAe: arg_meteringPointsAe, - meteringPointsAf: arg_meteringPointsAf, - meteringPointsAwb: arg_meteringPointsAwb, - isAutoCancelEnabled: arg_isAutoCancelEnabled, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call( + arg_meteringPointsAe, + arg_meteringPointsAf, + arg_meteringPointsAwb, + arg_isAutoCancelEnabled, + ) ?? + FocusMeteringAction.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + meteringPointsAe: arg_meteringPointsAe, + meteringPointsAf: arg_meteringPointsAf, + meteringPointsAwb: arg_meteringPointsAwb, + isAutoCancelEnabled: arg_isAutoCancelEnabled, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -7363,13 +7762,15 @@ class FocusMeteringResult extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.FocusMeteringResult.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -7380,20 +7781,21 @@ class FocusMeteringResult extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call(arg_isFocusSuccessful) ?? - FocusMeteringResult.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - isFocusSuccessful: arg_isFocusSuccessful, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call(arg_isFocusSuccessful) ?? + FocusMeteringResult.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + isFocusSuccessful: arg_isFocusSuccessful, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -7467,13 +7869,15 @@ class CaptureRequest extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CaptureRequest.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CaptureRequest.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -7483,19 +7887,20 @@ class CaptureRequest extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CaptureRequest.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + CaptureRequest.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -7519,8 +7924,9 @@ class CaptureRequest extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -7549,8 +7955,9 @@ class CaptureRequest extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -7594,13 +8001,15 @@ class CaptureRequestKey extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CaptureRequestKey.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CaptureRequestKey.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -7610,19 +8019,20 @@ class CaptureRequestKey extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CaptureRequestKey.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + CaptureRequestKey.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -7663,8 +8073,8 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required Map options, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCaptureRequestOptions; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7675,8 +8085,9 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, options]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, options], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -7699,8 +8110,9 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecCaptureRequestOptions = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecCaptureRequestOptions = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -7710,13 +8122,15 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CaptureRequestOptions.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -7726,19 +8140,20 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CaptureRequestOptions.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + CaptureRequestOptions.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -7758,8 +8173,9 @@ class CaptureRequestOptions extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, key]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, key], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -7792,7 +8208,8 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.camera2CameraControl_from != null) { return PigeonOverrides.camera2CameraControl_from!( - cameraControl: cameraControl); + cameraControl: cameraControl, + ); } return Camera2CameraControl.pigeon_from( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -7808,8 +8225,8 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required CameraControl cameraControl, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCamera2CameraControl; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7820,8 +8237,9 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, cameraControl]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, cameraControl], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -7844,8 +8262,9 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecCamera2CameraControl = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecCamera2CameraControl = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -7855,13 +8274,15 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.Camera2CameraControl.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -7871,19 +8292,20 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - Camera2CameraControl.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + Camera2CameraControl.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -7903,8 +8325,9 @@ class Camera2CameraControl extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, bundle]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, bundle], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -7935,7 +8358,8 @@ class ResolutionFilter extends PigeonInternalProxyApiBaseClass { }) { if (PigeonOverrides.resolutionFilter_createWithOnePreferredSize != null) { return PigeonOverrides.resolutionFilter_createWithOnePreferredSize!( - preferredSize: preferredSize); + preferredSize: preferredSize, + ); } return ResolutionFilter.pigeon_createWithOnePreferredSize( pigeon_binaryMessenger: pigeon_binaryMessenger, @@ -7950,8 +8374,8 @@ class ResolutionFilter extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required CameraSize preferredSize, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecResolutionFilter; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -7962,8 +8386,9 @@ class ResolutionFilter extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, preferredSize]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, preferredSize], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -7996,13 +8421,15 @@ class ResolutionFilter extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.ResolutionFilter.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -8012,19 +8439,20 @@ class ResolutionFilter extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - ResolutionFilter.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + ResolutionFilter.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -8063,13 +8491,15 @@ class CameraCharacteristicsKey extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraCharacteristicsKey.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CameraCharacteristicsKey.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -8079,19 +8509,20 @@ class CameraCharacteristicsKey extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CameraCharacteristicsKey.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + CameraCharacteristicsKey.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -8145,7 +8576,7 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { /// /// This key is available on all devices. static final CameraCharacteristicsKey - _controlAvailableVideoStabilizationModes = + _controlAvailableVideoStabilizationModes = pigeonVar_controlAvailableVideoStabilizationModes(); /// Generally classifies the overall set of the camera device functionality. @@ -8186,13 +8617,15 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.CameraCharacteristics.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -8202,19 +8635,20 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - CameraCharacteristics.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + CameraCharacteristics.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -8238,8 +8672,9 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -8268,8 +8703,9 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -8282,7 +8718,7 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { } static CameraCharacteristicsKey - pigeonVar_controlAvailableVideoStabilizationModes() { + pigeonVar_controlAvailableVideoStabilizationModes() { final CameraCharacteristicsKey pigeonVar_instance = CameraCharacteristicsKey.pigeon_detached(); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = @@ -8299,8 +8735,9 @@ class CameraCharacteristics extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([pigeonVar_instanceIdentifier]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; _extractReplyValueOrThrow( @@ -8348,8 +8785,8 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { super.pigeon_instanceManager, required CameraInfo cameraInfo, }) { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecCamera2CameraInfo; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -8360,8 +8797,9 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([pigeonVar_instanceIdentifier, cameraInfo]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [pigeonVar_instanceIdentifier, cameraInfo], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -8384,8 +8822,9 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecCamera2CameraInfo = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecCamera2CameraInfo = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -8395,13 +8834,15 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.Camera2CameraInfo.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -8411,19 +8852,20 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - Camera2CameraInfo.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + Camera2CameraInfo.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -8442,8 +8884,9 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -8466,8 +8909,9 @@ class Camera2CameraInfo extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, key]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, key], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -8502,8 +8946,9 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { }); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecMeteringPointFactory = - _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); + _pigeonVar_codecMeteringPointFactory = _PigeonInternalProxyApiBaseCodec( + pigeon_instanceManager, + ); static void pigeon_setUpMessageHandlers({ bool pigeon_clearHandlers = false, @@ -8513,13 +8958,15 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.MeteringPointFactory.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -8529,19 +8976,20 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - MeteringPointFactory.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + MeteringPointFactory.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -8549,10 +8997,7 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { } /// Creates a MeteringPoint by x, y. - Future createPoint( - double x, - double y, - ) async { + Future createPoint(double x, double y) async { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecMeteringPointFactory; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -8563,8 +9008,9 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, x, y]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, x, y], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -8591,8 +9037,9 @@ class MeteringPointFactory extends PigeonInternalProxyApiBaseClass { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = - pigeonVar_channel.send([this, x, y, size]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [this, x, y, size], + ); final pigeonVar_replyList = await pigeonVar_sendFuture as List?; final Object? pigeonVar_replyValue = _extractReplyValueOrThrow( @@ -8655,8 +9102,8 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { required double width, required double height, }) : super.pigeon_detached() { - final int pigeonVar_instanceIdentifier = - pigeon_instanceManager.addDartCreatedInstance(this); + final int pigeonVar_instanceIdentifier = pigeon_instanceManager + .addDartCreatedInstance(this); final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _pigeonVar_codecDisplayOrientedMeteringPointFactory; final BinaryMessenger? pigeonVar_binaryMessenger = pigeon_binaryMessenger; @@ -8668,7 +9115,8 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { binaryMessenger: pigeonVar_binaryMessenger, ); final Future pigeonVar_sendFuture = pigeonVar_channel.send( - [pigeonVar_instanceIdentifier, cameraInfo, width, height]); + [pigeonVar_instanceIdentifier, cameraInfo, width, height], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; @@ -8691,7 +9139,7 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { }) : super.pigeon_detached(); late final _PigeonInternalProxyApiBaseCodec - _pigeonVar_codecDisplayOrientedMeteringPointFactory = + _pigeonVar_codecDisplayOrientedMeteringPointFactory = _PigeonInternalProxyApiBaseCodec(pigeon_instanceManager); static void pigeon_setUpMessageHandlers({ @@ -8702,13 +9150,15 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { }) { final _PigeonInternalProxyApiBaseCodec pigeonChannelCodec = _PigeonInternalProxyApiBaseCodec( - pigeon_instanceManager ?? PigeonInstanceManager.instance); + pigeon_instanceManager ?? PigeonInstanceManager.instance, + ); final BinaryMessenger? binaryMessenger = pigeon_binaryMessenger; { final pigeonVar_channel = BasicMessageChannel( - 'dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_newInstance', - pigeonChannelCodec, - binaryMessenger: binaryMessenger); + 'dev.flutter.pigeon.camera_android_camerax.DisplayOrientedMeteringPointFactory.pigeon_newInstance', + pigeonChannelCodec, + binaryMessenger: binaryMessenger, + ); if (pigeon_clearHandlers) { pigeonVar_channel.setMessageHandler(null); } else { @@ -8718,19 +9168,20 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { try { (pigeon_instanceManager ?? PigeonInstanceManager.instance) .addHostCreatedInstance( - pigeon_newInstance?.call() ?? - DisplayOrientedMeteringPointFactory.pigeon_detached( - pigeon_binaryMessenger: pigeon_binaryMessenger, - pigeon_instanceManager: pigeon_instanceManager, - ), - arg_pigeon_instanceIdentifier, - ); + pigeon_newInstance?.call() ?? + DisplayOrientedMeteringPointFactory.pigeon_detached( + pigeon_binaryMessenger: pigeon_binaryMessenger, + pigeon_instanceManager: pigeon_instanceManager, + ), + arg_pigeon_instanceIdentifier, + ); return wrapResponse(empty: true); } on PlatformException catch (e) { return wrapResponse(error: e); } catch (e) { return wrapResponse( - error: PlatformException(code: 'error', message: e.toString())); + error: PlatformException(code: 'error', message: e.toString()), + ); } }); } @@ -8745,4 +9196,3 @@ class DisplayOrientedMeteringPointFactory extends MeteringPointFactory { ); } } - diff --git a/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift b/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift index 33fb5e3cbb80..467f529cec6b 100644 --- a/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift +++ b/packages/camera/camera_avfoundation/example/ios/RunnerTests/CameraSettingsTests.swift @@ -355,7 +355,7 @@ final class CameraSettingsTests: XCTestCase { } func test_startVideoRecording_usesCustomPath() { - let customPath = "/custom/path.mp4" + let customPath = (NSTemporaryDirectory() as NSString).appendingPathComponent("path.mp4") let configuration = CameraTestUtils.createTestCameraConfiguration() var capturedOutputURL: URL? @@ -429,7 +429,8 @@ final class CameraSettingsTests: XCTestCase { } func test_startVideoRecording_errorsOnInvalidExtension() { - let invalidExtensionPath = "file.txt" + let invalidExtensionPath = (NSTemporaryDirectory() as NSString).appendingPathComponent( + "file.txt") let configuration = CameraTestUtils.createTestCameraConfiguration() let camera = CameraTestUtils.createTestCamera(configuration) diff --git a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Camera.swift b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Camera.swift index 5656fb1a2975..bf1a07a84689 100644 --- a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Camera.swift +++ b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/Camera.swift @@ -131,3 +131,16 @@ protocol Camera: FlutterTexture, AVCaptureVideoDataOutputSampleBufferDelegate, func close() } + +extension Camera { + func startVideoRecording( + completion: @escaping (Result) -> Void, + messengerForStreaming messenger: FlutterBinaryMessenger? + ) { + self.startVideoRecording( + videoOutputPath: nil, + completion: completion, + messengerForStreaming: messenger + ) + } +} diff --git a/packages/camera/camera_web/example/integration_test/camera_web_test.dart b/packages/camera/camera_web/example/integration_test/camera_web_test.dart index 5f9e1c6e58ce..3a73310c75d3 100644 --- a/packages/camera/camera_web/example/integration_test/camera_web_test.dart +++ b/packages/camera/camera_web/example/integration_test/camera_web_test.dart @@ -1350,7 +1350,7 @@ void main() { ).thenAnswer((_) async {}); await CameraPlatform.instance.startVideoCapturing( - VideoCaptureOptions(cameraId, videoOutputPath: customPath), + const VideoCaptureOptions(cameraId, videoOutputPath: customPath), ); verify( From e25ab0ec47fb1bbcd7a35708c3c2d3f73aaf00a2 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Sat, 23 May 2026 17:03:07 -0300 Subject: [PATCH 04/30] fix camera tests --- .../io/flutter/plugins/camera/CameraTest.java | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java b/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java index 7a76d2759fab..fd4b7fb18633 100644 --- a/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java +++ b/packages/camera/camera_android/android/src/test/java/io/flutter/plugins/camera/CameraTest.java @@ -207,6 +207,14 @@ public void before() { camera.captureSession = mockCaptureSession; camera.previewRequestBuilder = mockPreviewRequestBuilder; + + final SensorOrientationFeature mockSensorOrientationFeature = + mockCameraFeatureFactory.createSensorOrientationFeature( + mockCameraProperties, mockActivity, mockDartMessenger); + final DeviceOrientationManager mockDeviceOrientationManager = + mock(DeviceOrientationManager.class); + when(mockSensorOrientationFeature.getDeviceOrientationManager()) + .thenReturn(mockDeviceOrientationManager); } @After @@ -718,6 +726,27 @@ public void startVideoRecording_usesCustomPath() throws IOException, CameraAcces new File(System.getProperty("java.io.tmpdir"), "custom_video.mp4").getAbsolutePath(); final MediaRecorder mockMediaRecorder = mock(MediaRecorder.class); + final ArrayList mockRequestBuilders = new ArrayList<>(); + CaptureRequest.Builder mockRequestBuilder = mock(CaptureRequest.Builder.class); + mockRequestBuilders.add(mockRequestBuilder); + final SurfaceTexture mockSurfaceTexture = mock(SurfaceTexture.class); + final Size mockSize = mock(Size.class); + final ImageReader mockPictureImageReader = mock(ImageReader.class); + camera.pictureImageReader = mockPictureImageReader; + final CameraDeviceWrapper fakeCamera = + new FakeCameraDeviceWrapper(mockRequestBuilders, mockCaptureSession); + + camera.cameraDevice = fakeCamera; + + TextureRegistry.SurfaceTextureEntry cameraFlutterTexture = camera.flutterTexture; + ResolutionFeature resolutionFeature = mockCameraFeatureFactory.mockResolutionFeature; + + assertNotNull(cameraFlutterTexture); + when(cameraFlutterTexture.surfaceTexture()).thenReturn(mockSurfaceTexture); + + assertNotNull(resolutionFeature); + when(resolutionFeature.getPreviewSize()).thenReturn(mockSize); + try (MockedConstruction mockedBuilder = Mockito.mockConstruction( MediaRecorderBuilder.class, From 0a7d03db6f8138efb943f63cf12f088bac435c6d Mon Sep 17 00:00:00 2001 From: Mairramer Date: Sun, 24 May 2026 11:54:48 -0300 Subject: [PATCH 05/30] fix parameter --- .../camera_android/example/lib/camera_controller.dart | 7 ++++++- .../example/lib/camera_controller.dart | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/camera/camera_android/example/lib/camera_controller.dart b/packages/camera/camera_android/example/lib/camera_controller.dart index 33cafe13e447..5c481988fa4c 100644 --- a/packages/camera/camera_android/example/lib/camera_controller.dart +++ b/packages/camera/camera_android/example/lib/camera_controller.dart @@ -326,9 +326,14 @@ class CameraController extends ValueNotifier { /// Throws a [CameraException] if the capture fails. Future startVideoRecording({ void Function(CameraImageData image)? streamCallback, + String? videoOutputPath, }) async { await CameraPlatform.instance.startVideoCapturing( - VideoCaptureOptions(_cameraId, streamCallback: streamCallback), + VideoCaptureOptions( + _cameraId, + streamCallback: streamCallback, + videoOutputPath: videoOutputPath, + ), ); value = value.copyWith( isRecordingVideo: true, diff --git a/packages/camera/camera_android_camerax/example/lib/camera_controller.dart b/packages/camera/camera_android_camerax/example/lib/camera_controller.dart index 7d456043fa4a..17a12c920e05 100644 --- a/packages/camera/camera_android_camerax/example/lib/camera_controller.dart +++ b/packages/camera/camera_android_camerax/example/lib/camera_controller.dart @@ -502,6 +502,7 @@ class CameraController extends ValueNotifier { Future startVideoRecording({ onLatestImageAvailable? onAvailable, bool enablePersistentRecording = true, + String? videoOutputPath, }) async { _throwIfNotInitialized('startVideoRecording'); if (value.isRecordingVideo) { @@ -524,6 +525,7 @@ class CameraController extends ValueNotifier { _cameraId, streamCallback: streamCallback, enablePersistentRecording: enablePersistentRecording, + videoOutputPath: videoOutputPath, ), ); value = value.copyWith( From 91c91c11515318ce566d9bcee9fcf2428c2837b4 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Sun, 24 May 2026 12:11:14 -0300 Subject: [PATCH 06/30] fix param --- .../camera_avfoundation/example/lib/camera_controller.dart | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/camera/camera_avfoundation/example/lib/camera_controller.dart b/packages/camera/camera_avfoundation/example/lib/camera_controller.dart index ed3a8e5a953d..7484bd17e082 100644 --- a/packages/camera/camera_avfoundation/example/lib/camera_controller.dart +++ b/packages/camera/camera_avfoundation/example/lib/camera_controller.dart @@ -342,9 +342,14 @@ class CameraController extends ValueNotifier { /// Throws a [CameraException] if the capture fails. Future startVideoRecording({ void Function(CameraImageData image)? streamCallback, + String? videoOutputPath, }) async { await CameraPlatform.instance.startVideoCapturing( - VideoCaptureOptions(_cameraId, streamCallback: streamCallback), + VideoCaptureOptions( + _cameraId, + streamCallback: streamCallback, + videoOutputPath: videoOutputPath, + ), ); value = value.copyWith( isRecordingVideo: true, From 3d548078bfff459ab532d3a4edc2bebdba967ccc Mon Sep 17 00:00:00 2001 From: Mairramer Date: Sun, 24 May 2026 16:22:01 -0300 Subject: [PATCH 07/30] feat: implement video recording with custom path support and add example file saving functionality. --- .../camera/example/lib/file_saver_helper.dart | 12 + .../camera/example/lib/file_saver_stub.dart | 8 + .../camera/example/lib/file_saver_web.dart | 16 + packages/camera/camera/example/lib/main.dart | 25 +- .../example/lib/video_recording_example.dart | 742 ++++++++++++++++++ 5 files changed, 794 insertions(+), 9 deletions(-) create mode 100644 packages/camera/camera/example/lib/file_saver_helper.dart create mode 100644 packages/camera/camera/example/lib/file_saver_stub.dart create mode 100644 packages/camera/camera/example/lib/file_saver_web.dart create mode 100644 packages/camera/camera/example/lib/video_recording_example.dart diff --git a/packages/camera/camera/example/lib/file_saver_helper.dart b/packages/camera/camera/example/lib/file_saver_helper.dart new file mode 100644 index 000000000000..b83565060ebd --- /dev/null +++ b/packages/camera/camera/example/lib/file_saver_helper.dart @@ -0,0 +1,12 @@ +// Copyright 2013 The Flutter Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'file_saver_stub.dart' + if (dart.library.js_util) 'file_saver_web.dart' + if (dart.library.html) 'file_saver_web.dart'; + +/// Triggers a file download with a custom filename. +void downloadFile(String url, String fileName) { + saveFile(url, fileName); +} diff --git a/packages/camera/camera/example/lib/file_saver_stub.dart b/packages/camera/camera/example/lib/file_saver_stub.dart new file mode 100644 index 000000000000..d4817135be50 --- /dev/null +++ b/packages/camera/camera/example/lib/file_saver_stub.dart @@ -0,0 +1,8 @@ +// Copyright 2013 The Flutter Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +/// Stub implementation for saving files. +void saveFile(String url, String fileName) { + // No-op on native platforms. +} diff --git a/packages/camera/camera/example/lib/file_saver_web.dart b/packages/camera/camera/example/lib/file_saver_web.dart new file mode 100644 index 000000000000..eab95b4903dd --- /dev/null +++ b/packages/camera/camera/example/lib/file_saver_web.dart @@ -0,0 +1,16 @@ +// Copyright 2013 The Flutter Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// ignore: avoid_web_libraries_in_flutter +import 'dart:html' as html; + +/// Web implementation for saving files via AnchorElement. +void saveFile(String url, String fileName) { + final anchor = html.AnchorElement(href: url) + ..setAttribute('download', fileName) + ..style.display = 'none'; + html.document.body?.children.add(anchor); + anchor.click(); + anchor.remove(); +} diff --git a/packages/camera/camera/example/lib/main.dart b/packages/camera/camera/example/lib/main.dart index cca528c04fda..fc6ece7630b8 100644 --- a/packages/camera/camera/example/lib/main.dart +++ b/packages/camera/camera/example/lib/main.dart @@ -11,6 +11,8 @@ import 'package:flutter/material.dart'; import 'package:flutter/scheduler.dart'; import 'package:video_player/video_player.dart'; +import 'video_recording_example.dart'; + /// Camera example home widget. class CameraExampleHome extends StatefulWidget { /// Default Constructor @@ -127,6 +129,7 @@ class _CameraExampleHomeState extends State _initializeCameraController(cameraController.description); } } + // #enddocregion AppLifecycle @override @@ -1054,13 +1057,17 @@ class CameraApp extends StatelessWidget { List get cameras => _cameras; List _cameras = []; -Future main() async { - // Fetch the available cameras before initializing the app. - try { - WidgetsFlutterBinding.ensureInitialized(); - _cameras = await availableCameras(); - } on CameraException catch (e) { - _logError(e.code, e.description); - } - runApp(const CameraApp()); +// Future main() async { +// // Fetch the available cameras before initializing the app. +// try { +// WidgetsFlutterBinding.ensureInitialized(); +// _cameras = await availableCameras(); +// } on CameraException catch (e) { +// _logError(e.code, e.description); +// } +// runApp(const CameraApp()); +// } + +void main() { + runApp(const VideoRecordingExampleApp()); } diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart new file mode 100644 index 000000000000..635d52e092a4 --- /dev/null +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -0,0 +1,742 @@ +// Copyright 2013 The Flutter Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'dart:async'; +import 'dart:io'; + +import 'package:camera/camera.dart'; +import 'package:flutter/foundation.dart'; +import 'package:flutter/material.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:video_player/video_player.dart'; + +import 'file_saver_helper.dart'; + +/// A premium, highly interactive standalone example demonstrating the +/// Video Recording feature with custom output paths (`videoOutputPath`). +class VideoRecordingExampleApp extends StatefulWidget { + /// Default Constructor. + const VideoRecordingExampleApp({super.key}); + + @override + State createState() => _VideoRecordingExampleAppState(); +} + +class _VideoRecordingExampleAppState extends State { + ThemeMode _themeMode = ThemeMode.light; + + void _toggleTheme() { + setState(() { + _themeMode = _themeMode == ThemeMode.dark ? ThemeMode.light : ThemeMode.dark; + }); + } + + @override + Widget build(BuildContext context) { + return MaterialApp( + title: 'Vivid Video Recorder', + themeMode: _themeMode, + theme: ThemeData( + brightness: Brightness.light, + scaffoldBackgroundColor: const Color(0xFFF5F5FA), + colorScheme: const ColorScheme.light( + primary: Color(0xFF6C63FF), + secondary: Color(0xFF00E676), + error: Color(0xFFFF1744), + ), + useMaterial3: true, + ), + darkTheme: ThemeData( + brightness: Brightness.dark, + scaffoldBackgroundColor: const Color(0xFF0F0F1A), + colorScheme: const ColorScheme.dark( + primary: Color(0xFF6C63FF), + secondary: Color(0xFF00E676), + error: Color(0xFFFF1744), + surface: Color(0xFF1E1E30), + ), + useMaterial3: true, + ), + home: VideoRecordingHome(themeMode: _themeMode, onThemeToggle: _toggleTheme), + ); + } +} + +/// Home widget hosting the video recording demo. +class VideoRecordingHome extends StatefulWidget { + /// Default Constructor. + const VideoRecordingHome({super.key, required this.themeMode, required this.onThemeToggle}); + + /// The active theme mode. + final ThemeMode themeMode; + + /// Callback to toggle between light and dark themes. + final VoidCallback onThemeToggle; + + @override + State createState() => _VideoRecordingHomeState(); +} + +class _VideoRecordingHomeState extends State with SingleTickerProviderStateMixin { + List _cameras = []; + CameraController? _controller; + XFile? _recordedVideo; + VideoPlayerController? _videoPlayerController; + + bool _isInitializing = true; + bool _useCustomPath = false; + bool _audioEnabled = true; + + // Custom path options + String _customFileName = 'custom_video_recording.mp4'; + String? _resolvedCustomPath; + + // SnackBar / Error messaging helper + void _showNotification(String message, {bool isError = false}) { + final isDark = widget.themeMode == ThemeMode.dark; + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Row( + children: [ + Icon( + isError ? Icons.error_outline : Icons.info_outline, + color: isError ? Colors.redAccent : Colors.greenAccent, + ), + const SizedBox(width: 12), + Expanded(child: Text(message)), + ], + ), + backgroundColor: isDark ? const Color(0xFF1A1A2E) : Colors.white, + behavior: SnackBarBehavior.floating, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + ), + ); + } + + @override + void initState() { + super.initState(); + _bootstrapCameras(); + } + + Future _bootstrapCameras() async { + try { + _cameras = await availableCameras(); + if (_cameras.isNotEmpty) { + await _initializeCameraController(_cameras.first); + } else { + _showNotification('No cameras detected on this device.', isError: true); + } + } catch (e) { + _showNotification('Failed to detect cameras: $e', isError: true); + } finally { + if (mounted) { + setState(() { + _isInitializing = false; + }); + } + } + } + + Future _initializeCameraController(CameraDescription description) async { + final controller = CameraController( + description, + kIsWeb ? ResolutionPreset.max : ResolutionPreset.high, + enableAudio: _audioEnabled, + ); + + _controller = controller; + + try { + await controller.initialize(); + } on CameraException catch (e) { + _showNotification('Camera error: ${e.description}', isError: true); + } + + if (mounted) { + setState(() {}); + } + } + + /// Calculates the target custom output path where the video will be saved. + Future _getDestinationPath() async { + if (kIsWeb) { + return _customFileName; + } + + // Se o usuário digitou uma URI nativa (content://) ou um caminho absoluto (/storage/...) + // nós retornamos diretamente para testar os recursos avançados de gravação direta. + if (_customFileName.startsWith('/') || + _customFileName.startsWith('content://') || + _customFileName.startsWith('file://')) { + return _customFileName; + } + + // 1. Desktop (macOS, Windows, Linux) + if (Platform.isMacOS || Platform.isWindows || Platform.isLinux) { + try { + final Directory? downloadsDir = await getDownloadsDirectory(); + if (downloadsDir != null) { + return '${downloadsDir.path}/$_customFileName'; + } + } catch (e) { + // Fallback para desktop se falhar + } + } + + // 2. Android (Salvar na pasta pública de Downloads) + if (Platform.isAndroid) { + // Isso aponta para a pasta segura e privada do seu app no Android (não precisa de permissão) + final Directory? tempDir = await getExternalStorageDirectory(); // Retorna /storage/emulated/0/Android/data/... + final timestamp = DateTime.now().millisecondsSinceEpoch.toString(); + final String uniqueName = _customFileName.replaceFirst('.mp4', '_$timestamp.mp4'); + + return '${tempDir!.path}/$uniqueName'; + } + + if (Platform.isIOS || Platform.isLinux) { + // 3. iOS e Fallback geral (Salva nos Documentos do App) + final Directory appDocDir = await getApplicationDocumentsDirectory(); + return '${appDocDir.path}/$_customFileName'; + } + + return 'unknown'; + } + + Future _startRecording() async { + final CameraController? controller = _controller; + if (controller == null || !controller.value.isInitialized) { + _showNotification('Camera is not ready yet.', isError: true); + return; + } + + if (controller.value.isRecordingVideo) { + return; + } + + try { + String? outputPath; + if (_useCustomPath) { + outputPath = await _getDestinationPath(); + setState(() { + _resolvedCustomPath = outputPath; + }); + } else { + setState(() { + _resolvedCustomPath = null; + }); + } + + // Invokes startVideoRecording with the custom path options! + await controller.startVideoRecording(videoOutputPath: outputPath); + + _showNotification( + _useCustomPath ? 'Recording started with custom output path!' : 'Recording started using auto-generated path.', + ); + } on CameraException catch (e) { + _showNotification('Failed to start recording: ${e.description}', isError: true); + } catch (e) { + _showNotification('Unexpected error: $e', isError: true); + } finally { + if (mounted) { + setState(() {}); + } + } + } + + Future _stopRecording() async { + final CameraController? controller = _controller; + if (controller == null || !controller.value.isRecordingVideo) { + return; + } + + try { + final XFile file = await controller.stopVideoRecording(); + setState(() { + _recordedVideo = file; + }); + + if (kIsWeb && _useCustomPath) { + // On Web, trigger a custom download using our AnchorElement helper. + downloadFile(file.path, _customFileName); + _showNotification('Video download initiated as $_customFileName'); + } else { + _showNotification('Recording finished successfully!'); + } + + await _playRecordedVideo(file); + } on CameraException catch (e) { + _showNotification('Failed to stop recording: ${e.description}', isError: true); + } catch (e) { + _showNotification('Unexpected error stopping recording: $e', isError: true); + } finally { + if (mounted) { + setState(() {}); + } + } + } + + Future _pauseRecording() async { + final CameraController? controller = _controller; + if (controller == null || !controller.value.isRecordingVideo) { + return; + } + + try { + await controller.pauseVideoRecording(); + _showNotification('Video recording paused.'); + } on CameraException catch (e) { + _showNotification('Pause failed: ${e.description}', isError: true); + } finally { + if (mounted) { + setState(() {}); + } + } + } + + Future _resumeRecording() async { + final CameraController? controller = _controller; + if (controller == null || !controller.value.isRecordingVideo) { + return; + } + + try { + await controller.resumeVideoRecording(); + _showNotification('Video recording resumed.'); + } on CameraException catch (e) { + _showNotification('Resume failed: ${e.description}', isError: true); + } finally { + if (mounted) { + setState(() {}); + } + } + } + + Future _playRecordedVideo(XFile file) async { + if (_videoPlayerController != null) { + await _videoPlayerController!.dispose(); + } + + VideoPlayerController playerController; + if (kIsWeb) { + playerController = VideoPlayerController.networkUrl(Uri.parse(file.path)); + } else { + playerController = VideoPlayerController.file(File(file.path)); + } + + _videoPlayerController = playerController; + + try { + await playerController.initialize(); + await playerController.setLooping(true); + await playerController.play(); + } catch (e) { + _showNotification('Failed to load recorded video in player: $e', isError: true); + } + + if (mounted) { + setState(() {}); + } + } + + @override + void dispose() { + _controller?.dispose(); + _videoPlayerController?.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + final double screenWidth = MediaQuery.of(context).size.width; + final isDark = Theme.of(context).brightness == Brightness.dark; + final Color textPrimary = isDark ? Colors.white : const Color(0xFF1E1E30); + + return Scaffold( + body: SafeArea( + child: _isInitializing + ? const Center(child: CircularProgressIndicator(color: Color(0xFF6C63FF))) + : SingleChildScrollView( + padding: const EdgeInsets.all(20.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + _buildHeader(textPrimary), + const SizedBox(height: 20), + _buildCameraView(isDark), + const SizedBox(height: 20), + _buildPathSettingsCard(isDark, textPrimary), + const SizedBox(height: 20), + _buildControlsPanel(isDark), + if (_recordedVideo != null) ...[ + const SizedBox(height: 24), + _buildVideoPlayerCard(screenWidth, isDark, textPrimary), + ], + const SizedBox(height: 30), + ], + ), + ), + ), + ); + } + + Widget _buildHeader(Color textPrimary) { + final isDark = widget.themeMode == ThemeMode.dark; + return Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'VIVID VIDEO RECORDER', + style: TextStyle(fontSize: 22, fontWeight: FontWeight.w900, letterSpacing: 1.5, color: textPrimary), + ), + const SizedBox(height: 4), + const Text( + 'Demonstrating custom output path validation & video recording.', + style: TextStyle(fontSize: 12, color: Color(0xFF8F8FA0)), + ), + ], + ), + ), + IconButton.filledTonal( + icon: Icon(isDark ? Icons.light_mode : Icons.dark_mode), + style: IconButton.styleFrom( + backgroundColor: isDark ? const Color(0xFF1E1E30) : Colors.white, + foregroundColor: const Color(0xFF6C63FF), + ), + onPressed: widget.onThemeToggle, + ), + ], + ); + } + + Widget _buildCameraView(bool isDark) { + final CameraController? controller = _controller; + final bool isRecording = controller?.value.isRecordingVideo ?? false; + final bool isPaused = controller?.value.isRecordingPaused ?? false; + + return Container( + height: 380, + decoration: BoxDecoration( + color: Colors.black, + borderRadius: BorderRadius.circular(24), + border: Border.all( + color: isRecording + ? (isPaused ? Colors.amber : const Color(0xFFFF1744)) + : (isDark ? const Color(0xFF2C2C40) : const Color(0xFFE2E2EC)), + width: 2, + ), + boxShadow: [ + BoxShadow( + color: isRecording + ? (isPaused ? Colors.amber.withOpacity(0.15) : const Color(0xFFFF1744).withOpacity(0.15)) + : Colors.transparent, + blurRadius: 16, + spreadRadius: 4, + ), + ], + ), + clipBehavior: Clip.antiAlias, + child: Stack( + fit: StackFit.expand, + children: [ + if (controller != null) + CameraPreview(controller) + else + const Center( + child: Text('Camera pipeline is uninitialized.', style: TextStyle(color: Colors.grey)), + ), + // Recording Status Overlay + if (isRecording) + Positioned( + top: 16, + left: 16, + child: Container( + padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 6), + decoration: BoxDecoration( + color: (isDark ? const Color(0xFF1E1E30) : Colors.white).withOpacity(0.85), + borderRadius: BorderRadius.circular(30), + border: Border.all(color: isPaused ? Colors.amber : const Color(0xFFFF1744), width: 1.5), + ), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + Container( + width: 8, + height: 8, + decoration: BoxDecoration( + color: isPaused ? Colors.amber : const Color(0xFFFF1744), + shape: BoxShape.circle, + ), + ), + const SizedBox(width: 8), + Text( + isPaused ? 'RECORDING PAUSED' : 'LIVE RECORDING', + style: TextStyle( + fontSize: 10, + fontWeight: FontWeight.bold, + color: isPaused ? Colors.amber : const Color(0xFFFF1744), + letterSpacing: 1.0, + ), + ), + ], + ), + ), + ), + ], + ), + ); + } + + Widget _buildPathSettingsCard(bool isDark, Color textPrimary) { + final Color cardBgColor = isDark ? const Color(0xFF161626) : Colors.white; + final borderBgColor = isDark ? const Color(0xFF2C2C40) : const Color(0xFFE2E2EC); + final subBgColor = isDark ? const Color(0xFF0F0F1A) : const Color(0xFFF5F5FA); + final textSecondary = isDark ? const Color(0xFF8F8FA0) : const Color(0xFF6E6E7E); + + return Container( + decoration: BoxDecoration( + color: cardBgColor, + borderRadius: BorderRadius.circular(16), + border: Border.all(color: borderBgColor), + boxShadow: isDark + ? const [] + : [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10, offset: const Offset(0, 4))], + ), + padding: const EdgeInsets.all(16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Row( + children: [ + const Icon(Icons.folder_open, color: Color(0xFF6C63FF), size: 20), + const SizedBox(width: 8), + Text( + 'Custom Output Path', + style: TextStyle(fontWeight: FontWeight.bold, fontSize: 15, color: textPrimary), + ), + ], + ), + Switch.adaptive( + value: _useCustomPath, + activeColor: const Color(0xFF6C63FF), + onChanged: (bool value) { + setState(() { + _useCustomPath = value; + }); + }, + ), + ], + ), + if (_useCustomPath) ...[ + const SizedBox(height: 12), + TextField( + style: TextStyle(color: textPrimary), + decoration: InputDecoration( + labelText: kIsWeb ? 'Suggested Download Filename' : 'Filename, absolute path, or content:// URI', + labelStyle: TextStyle(color: textSecondary, fontSize: 13), + hintText: 'my_video.mp4 or content://...', + prefixIcon: Icon(Icons.description, size: 18, color: textSecondary), + filled: true, + fillColor: subBgColor, + enabledBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(12), + borderSide: BorderSide(color: borderBgColor), + ), + focusedBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(12), + borderSide: const BorderSide(color: Color(0xFF6C63FF), width: 1.5), + ), + ), + controller: TextEditingController(text: _customFileName), + onChanged: (String val) { + _customFileName = val; + }, + ), + const SizedBox(height: 12), + Container( + padding: const EdgeInsets.all(12), + decoration: BoxDecoration(color: subBgColor, borderRadius: BorderRadius.circular(10)), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'VALIDATION ENFORCEMENT RULES', + style: TextStyle( + fontSize: 10, + fontWeight: FontWeight.bold, + color: textSecondary, + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 6), + _buildValidationBullet('Must end with supported extension (.mp4, .mov, .3gp, .m4v, .webm)', isDark), + _buildValidationBullet('Cannot be an existing directory', isDark), + _buildValidationBullet('Parent folder must exist on device storage', isDark), + ], + ), + ), + ], + ], + ), + ); + } + + Widget _buildValidationBullet(String text, bool isDark) { + final textSecondary = isDark ? const Color(0xFFB0B0C0) : const Color(0xFF5A5A6A); + return Padding( + padding: const EdgeInsets.only(bottom: 4.0), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Icon(Icons.check_circle, size: 12, color: Color(0xFF00E676)), + const SizedBox(width: 8), + Expanded( + child: Text(text, style: TextStyle(fontSize: 11, color: textSecondary)), + ), + ], + ), + ); + } + + Widget _buildControlsPanel(bool isDark) { + final CameraController? controller = _controller; + final bool isRecording = controller?.value.isRecordingVideo ?? false; + final bool isPaused = controller?.value.isRecordingPaused ?? false; + final Color controlBgColor = isDark ? const Color(0xFF1E1E30) : Colors.white; + + return Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + // Audio Toggle + IconButton.filledTonal( + icon: Icon(_audioEnabled ? Icons.mic : Icons.mic_off), + style: IconButton.styleFrom( + backgroundColor: controlBgColor, + foregroundColor: _audioEnabled ? const Color(0xFF00E676) : Colors.grey, + padding: const EdgeInsets.all(14), + side: isDark ? BorderSide.none : const BorderSide(color: Color(0xFFE2E2EC)), + ), + onPressed: isRecording + ? null + : () { + setState(() { + _audioEnabled = !_audioEnabled; + if (_controller != null) { + _initializeCameraController(_controller!.description); + } + }); + }, + ), + + // Primary Record / Stop Button + GestureDetector( + onTap: isRecording ? _stopRecording : _startRecording, + child: Container( + height: 76, + width: 76, + decoration: BoxDecoration( + color: isRecording ? const Color(0xFFFF1744) : const Color(0xFF6C63FF), + shape: BoxShape.circle, + boxShadow: [ + BoxShadow( + color: (isRecording ? const Color(0xFFFF1744) : const Color(0xFF6C63FF)).withOpacity(0.3), + blurRadius: 12, + spreadRadius: 2, + ), + ], + ), + child: Icon(isRecording ? Icons.stop : Icons.videocam, size: 32, color: Colors.white), + ), + ), + + // Pause / Resume Toggle + IconButton.filledTonal( + icon: Icon(isPaused ? Icons.play_arrow : Icons.pause), + style: IconButton.styleFrom( + backgroundColor: controlBgColor, + foregroundColor: const Color(0xFF6C63FF), + padding: const EdgeInsets.all(14), + side: isDark ? BorderSide.none : const BorderSide(color: Color(0xFFE2E2EC)), + ), + onPressed: isRecording ? (isPaused ? _resumeRecording : _pauseRecording) : null, + ), + ], + ); + } + + Widget _buildVideoPlayerCard(double screenWidth, bool isDark, Color textPrimary) { + final VideoPlayerController? playerController = _videoPlayerController; + final Color cardBgColor = isDark ? const Color(0xFF161626) : Colors.white; + final borderBgColor = isDark ? const Color(0xFF2C2C40) : const Color(0xFFE2E2EC); + + return Container( + decoration: BoxDecoration( + color: cardBgColor, + borderRadius: BorderRadius.circular(20), + border: Border.all(color: borderBgColor), + boxShadow: isDark + ? const [] + : [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10, offset: const Offset(0, 4))], + ), + padding: const EdgeInsets.all(16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + Row( + children: [ + const Icon(Icons.video_library, color: Color(0xFF00E676), size: 20), + const SizedBox(width: 8), + Text( + 'Recorded Video Output', + style: TextStyle(fontWeight: FontWeight.bold, fontSize: 15, color: textPrimary), + ), + ], + ), + const SizedBox(height: 12), + if (playerController != null && playerController.value.isInitialized) + ClipRRect( + borderRadius: BorderRadius.circular(12), + child: AspectRatio(aspectRatio: playerController.value.aspectRatio, child: VideoPlayer(playerController)), + ) + else + const Center( + child: Padding( + padding: EdgeInsets.symmetric(vertical: 24.0), + child: CircularProgressIndicator(color: Color(0xFF00E676)), + ), + ), + const SizedBox(height: 12), + Text( + 'Saved Location Path:', + style: TextStyle(fontSize: 10, fontWeight: FontWeight.bold, color: Colors.grey[600]), + ), + const SizedBox(height: 4), + SelectableText( + _recordedVideo?.path ?? 'Unknown', + style: const TextStyle(fontSize: 11, fontFamily: 'Courier', color: Color(0xFF00E676)), + ), + if (_resolvedCustomPath != null) ...[ + const SizedBox(height: 10), + Text( + 'Requested Custom Path:', + style: TextStyle(fontSize: 10, fontWeight: FontWeight.bold, color: Colors.grey[600]), + ), + const SizedBox(height: 4), + SelectableText( + _resolvedCustomPath!, + style: const TextStyle(fontSize: 11, fontFamily: 'Courier', color: Color(0xFF6C63FF)), + ), + ], + ], + ), + ); + } +} From 22277b456bad36b42f2b5eeeda11f4b0642e500b Mon Sep 17 00:00:00 2001 From: Mairramer Date: Sun, 24 May 2026 17:42:29 -0300 Subject: [PATCH 08/30] feat: add video output path parameter to startVideoRecording method across platforms --- .../camera/camera/test/camera_image_stream_test.dart | 11 +++++++++-- packages/camera/camera/test/camera_test.dart | 10 ++++++++-- .../camera/camera_android/lib/src/android_camera.dart | 5 ++++- .../lib/src/android_camera_camerax.dart | 6 +++++- .../lib/src/avfoundation_camera.dart | 5 ++++- .../lib/src/method_channel/method_channel_camera.dart | 7 ++++++- .../lib/src/platform_interface/camera_platform.dart | 6 +++++- packages/camera/camera_web/lib/src/camera_web.dart | 10 ++++++++-- .../camera/camera_windows/lib/camera_windows.dart | 5 ++++- 9 files changed, 53 insertions(+), 12 deletions(-) diff --git a/packages/camera/camera/test/camera_image_stream_test.dart b/packages/camera/camera/test/camera_image_stream_test.dart index 0a9644fcd8df..f6ef7c29e827 100644 --- a/packages/camera/camera/test/camera_image_stream_test.dart +++ b/packages/camera/camera/test/camera_image_stream_test.dart @@ -261,10 +261,17 @@ class MockStreamingCameraPlatform extends MockCameraPlatform { } @override - Future startVideoRecording(int cameraId, {Duration? maxVideoDuration}) { + Future startVideoRecording( + int cameraId, { + Duration? maxVideoDuration, + String? videoOutputPath, + }) { streamCallLog.add('startVideoRecording'); // Ignore maxVideoDuration, as it is unimplemented and deprecated. - return super.startVideoRecording(cameraId); + return super.startVideoRecording( + cameraId, + videoOutputPath: videoOutputPath, + ); } @override diff --git a/packages/camera/camera/test/camera_test.dart b/packages/camera/camera/test/camera_test.dart index 913d3391cd9e..d7594ac08410 100644 --- a/packages/camera/camera/test/camera_test.dart +++ b/packages/camera/camera/test/camera_test.dart @@ -4019,9 +4019,15 @@ class MockCameraPlatform extends Mock super.noSuchMethod(Invocation.method(#prepareForVideoRecording, null)); @override - Future startVideoRecording(int cameraId, {Duration? maxVideoDuration}) { + Future startVideoRecording( + int cameraId, { + Duration? maxVideoDuration, + String? videoOutputPath, + }) { // Ignore maxVideoDuration, as it is unimplemented and deprecated. - return startVideoCapturing(VideoCaptureOptions(cameraId)); + return startVideoCapturing( + VideoCaptureOptions(cameraId, videoOutputPath: videoOutputPath), + ); } @override diff --git a/packages/camera/camera_android/lib/src/android_camera.dart b/packages/camera/camera_android/lib/src/android_camera.dart index e7b4c61fe219..8a0ff99ab5e0 100644 --- a/packages/camera/camera_android/lib/src/android_camera.dart +++ b/packages/camera/camera_android/lib/src/android_camera.dart @@ -207,9 +207,12 @@ class AndroidCamera extends CameraPlatform { Future startVideoRecording( int cameraId, { Duration? maxVideoDuration, + String? videoOutputPath, }) async { // Ignore maxVideoDuration, as it is unimplemented and deprecated. - return startVideoCapturing(VideoCaptureOptions(cameraId)); + return startVideoCapturing( + VideoCaptureOptions(cameraId, videoOutputPath: videoOutputPath), + ); } @override diff --git a/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart b/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart index e71238ba5806..a116d4a5e73c 100644 --- a/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart +++ b/packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart @@ -12,6 +12,7 @@ import 'package:flutter/services.dart' show DeviceOrientation, PlatformException; import 'package:flutter/widgets.dart' show Texture, Widget, visibleForTesting; import 'package:stream_transform/stream_transform.dart'; + import 'camerax_library.dart'; import 'rotated_preview_delegate.dart'; @@ -1148,9 +1149,12 @@ class AndroidCameraCameraX extends CameraPlatform { Future startVideoRecording( int cameraId, { Duration? maxVideoDuration, + String? videoOutputPath, }) async { // Ignore maxVideoDuration, as it is unimplemented and deprecated. - return startVideoCapturing(VideoCaptureOptions(cameraId)); + return startVideoCapturing( + VideoCaptureOptions(cameraId, videoOutputPath: videoOutputPath), + ); } /// Starts a video recording and/or streaming session. diff --git a/packages/camera/camera_avfoundation/lib/src/avfoundation_camera.dart b/packages/camera/camera_avfoundation/lib/src/avfoundation_camera.dart index 90af87799420..7b694b8e351f 100644 --- a/packages/camera/camera_avfoundation/lib/src/avfoundation_camera.dart +++ b/packages/camera/camera_avfoundation/lib/src/avfoundation_camera.dart @@ -206,9 +206,12 @@ class AVFoundationCamera extends CameraPlatform { Future startVideoRecording( int cameraId, { Duration? maxVideoDuration, + String? videoOutputPath, }) async { // Ignore maxVideoDuration, as it is unimplemented and deprecated. - return startVideoCapturing(VideoCaptureOptions(cameraId)); + return startVideoCapturing( + VideoCaptureOptions(cameraId, videoOutputPath: videoOutputPath), + ); } @override diff --git a/packages/camera/camera_platform_interface/lib/src/method_channel/method_channel_camera.dart b/packages/camera/camera_platform_interface/lib/src/method_channel/method_channel_camera.dart index 3caa3634b40f..6ff7ed05ed4a 100644 --- a/packages/camera/camera_platform_interface/lib/src/method_channel/method_channel_camera.dart +++ b/packages/camera/camera_platform_interface/lib/src/method_channel/method_channel_camera.dart @@ -254,9 +254,14 @@ class MethodChannelCamera extends CameraPlatform { Future startVideoRecording( int cameraId, { Duration? maxVideoDuration, + String? videoOutputPath, }) async { return startVideoCapturing( - VideoCaptureOptions(cameraId, maxDuration: maxVideoDuration), + VideoCaptureOptions( + cameraId, + maxDuration: maxVideoDuration, + videoOutputPath: videoOutputPath, + ), ); } diff --git a/packages/camera/camera_platform_interface/lib/src/platform_interface/camera_platform.dart b/packages/camera/camera_platform_interface/lib/src/platform_interface/camera_platform.dart index 192bce8b0134..e1548f378af8 100644 --- a/packages/camera/camera_platform_interface/lib/src/platform_interface/camera_platform.dart +++ b/packages/camera/camera_platform_interface/lib/src/platform_interface/camera_platform.dart @@ -150,6 +150,7 @@ abstract class CameraPlatform extends PlatformInterface { 'This parameter is unused, and will be ignored on all platforms', ) Duration? maxVideoDuration, + String? videoOutputPath, }) { throw UnimplementedError('startVideoRecording() is not implemented.'); } @@ -159,7 +160,10 @@ abstract class CameraPlatform extends PlatformInterface { /// Please see [VideoCaptureOptions] for documentation on the /// configuration options. Future startVideoCapturing(VideoCaptureOptions options) { - return startVideoRecording(options.cameraId); + return startVideoRecording( + options.cameraId, + videoOutputPath: options.videoOutputPath, + ); } /// Stops the video recording and returns the file where it was saved. diff --git a/packages/camera/camera_web/lib/src/camera_web.dart b/packages/camera/camera_web/lib/src/camera_web.dart index 72a67237c1cf..a17f61f4f4ac 100644 --- a/packages/camera/camera_web/lib/src/camera_web.dart +++ b/packages/camera/camera_web/lib/src/camera_web.dart @@ -461,9 +461,15 @@ class CameraPlugin extends CameraPlatform { } @override - Future startVideoRecording(int cameraId, {Duration? maxVideoDuration}) { + Future startVideoRecording( + int cameraId, { + Duration? maxVideoDuration, + String? videoOutputPath, + }) { // Ignore maxVideoDuration, as it is deprecated. - return startVideoCapturing(VideoCaptureOptions(cameraId)); + return startVideoCapturing( + VideoCaptureOptions(cameraId, videoOutputPath: videoOutputPath), + ); } @override diff --git a/packages/camera/camera_windows/lib/camera_windows.dart b/packages/camera/camera_windows/lib/camera_windows.dart index 8520fd0a324d..de3975842917 100644 --- a/packages/camera/camera_windows/lib/camera_windows.dart +++ b/packages/camera/camera_windows/lib/camera_windows.dart @@ -199,9 +199,12 @@ class CameraWindows extends CameraPlatform { Future startVideoRecording( int cameraId, { Duration? maxVideoDuration, + String? videoOutputPath, }) async { // Ignore maxVideoDuration, as it is unimplemented and deprecated. - return startVideoCapturing(VideoCaptureOptions(cameraId)); + return startVideoCapturing( + VideoCaptureOptions(cameraId, videoOutputPath: videoOutputPath), + ); } @override From c75fbaaf2587ac43c93db880d965916c35ee0635 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Sun, 24 May 2026 17:51:16 -0300 Subject: [PATCH 09/30] refactor: improve code formatting and readability in video recording example --- .../example/lib/video_recording_example.dart | 307 ++++++++++++++---- 1 file changed, 235 insertions(+), 72 deletions(-) diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index 635d52e092a4..65b547bd01b3 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -20,7 +20,8 @@ class VideoRecordingExampleApp extends StatefulWidget { const VideoRecordingExampleApp({super.key}); @override - State createState() => _VideoRecordingExampleAppState(); + State createState() => + _VideoRecordingExampleAppState(); } class _VideoRecordingExampleAppState extends State { @@ -28,7 +29,9 @@ class _VideoRecordingExampleAppState extends State { void _toggleTheme() { setState(() { - _themeMode = _themeMode == ThemeMode.dark ? ThemeMode.light : ThemeMode.dark; + _themeMode = _themeMode == ThemeMode.dark + ? ThemeMode.light + : ThemeMode.dark; }); } @@ -58,7 +61,10 @@ class _VideoRecordingExampleAppState extends State { ), useMaterial3: true, ), - home: VideoRecordingHome(themeMode: _themeMode, onThemeToggle: _toggleTheme), + home: VideoRecordingHome( + themeMode: _themeMode, + onThemeToggle: _toggleTheme, + ), ); } } @@ -66,7 +72,11 @@ class _VideoRecordingExampleAppState extends State { /// Home widget hosting the video recording demo. class VideoRecordingHome extends StatefulWidget { /// Default Constructor. - const VideoRecordingHome({super.key, required this.themeMode, required this.onThemeToggle}); + const VideoRecordingHome({ + super.key, + required this.themeMode, + required this.onThemeToggle, + }); /// The active theme mode. final ThemeMode themeMode; @@ -78,7 +88,8 @@ class VideoRecordingHome extends StatefulWidget { State createState() => _VideoRecordingHomeState(); } -class _VideoRecordingHomeState extends State with SingleTickerProviderStateMixin { +class _VideoRecordingHomeState extends State + with SingleTickerProviderStateMixin { List _cameras = []; CameraController? _controller; XFile? _recordedVideo; @@ -139,7 +150,9 @@ class _VideoRecordingHomeState extends State with SingleTick } } - Future _initializeCameraController(CameraDescription description) async { + Future _initializeCameraController( + CameraDescription description, + ) async { final controller = CameraController( description, kIsWeb ? ResolutionPreset.max : ResolutionPreset.high, @@ -162,16 +175,11 @@ class _VideoRecordingHomeState extends State with SingleTick /// Calculates the target custom output path where the video will be saved. Future _getDestinationPath() async { if (kIsWeb) { + // On web, videoOutputPath represents the suggested file download name. return _customFileName; } - // Se o usuário digitou uma URI nativa (content://) ou um caminho absoluto (/storage/...) - // nós retornamos diretamente para testar os recursos avançados de gravação direta. - if (_customFileName.startsWith('/') || - _customFileName.startsWith('content://') || - _customFileName.startsWith('file://')) { - return _customFileName; - } + final timestamp = DateTime.now().millisecondsSinceEpoch.toString(); // 1. Desktop (macOS, Windows, Linux) if (Platform.isMacOS || Platform.isWindows || Platform.isLinux) { @@ -181,27 +189,40 @@ class _VideoRecordingHomeState extends State with SingleTick return '${downloadsDir.path}/$_customFileName'; } } catch (e) { - // Fallback para desktop se falhar + // Fallback for desktop platforms if getDownloadsDirectory fails. } } - // 2. Android (Salvar na pasta pública de Downloads) + // 2. Android (Save directly to the public Downloads folder) if (Platform.isAndroid) { - // Isso aponta para a pasta segura e privada do seu app no Android (não precisa de permissão) - final Directory? tempDir = await getExternalStorageDirectory(); // Retorna /storage/emulated/0/Android/data/... - final timestamp = DateTime.now().millisecondsSinceEpoch.toString(); - final String uniqueName = _customFileName.replaceFirst('.mp4', '_$timestamp.mp4'); - - return '${tempDir!.path}/$uniqueName'; + final String uniqueName = _customFileName.replaceFirst( + '.mp4', + '_$timestamp.mp4', + ); + return '/storage/emulated/0/Download/$uniqueName'; } - if (Platform.isIOS || Platform.isLinux) { - // 3. iOS e Fallback geral (Salva nos Documentos do App) + // 3. iOS (Save to "On My iPhone" visible app folder) + // Note: Ensure 'LSSupportsOpeningDocumentsInPlace' and 'UISupportsDocumentBrowser' + // are set to true in your ios/Runner/Info.plist to make this folder visible in the Files app. + if (Platform.isIOS) { final Directory appDocDir = await getApplicationDocumentsDirectory(); - return '${appDocDir.path}/$_customFileName'; + + // Setup the custom directory structure within the app's documents container + final customDirPath = '${appDocDir.path}/Movies/flutter_test'; + final destinationDir = Directory(customDirPath); + + if (!destinationDir.existsSync()) { + destinationDir.createSync(recursive: true); + } + + final filePath = '${destinationDir.path}/video_$timestamp.mp4'; + return filePath; } - return 'unknown'; + // Default fallback general path + final Directory fallbackDir = await getApplicationDocumentsDirectory(); + return '${fallbackDir.path}/video_$timestamp.mp4'; } Future _startRecording() async { @@ -232,10 +253,15 @@ class _VideoRecordingHomeState extends State with SingleTick await controller.startVideoRecording(videoOutputPath: outputPath); _showNotification( - _useCustomPath ? 'Recording started with custom output path!' : 'Recording started using auto-generated path.', + _useCustomPath + ? 'Recording started with custom output path!' + : 'Recording started using auto-generated path.', ); } on CameraException catch (e) { - _showNotification('Failed to start recording: ${e.description}', isError: true); + _showNotification( + 'Failed to start recording: ${e.description}', + isError: true, + ); } catch (e) { _showNotification('Unexpected error: $e', isError: true); } finally { @@ -267,9 +293,15 @@ class _VideoRecordingHomeState extends State with SingleTick await _playRecordedVideo(file); } on CameraException catch (e) { - _showNotification('Failed to stop recording: ${e.description}', isError: true); + _showNotification( + 'Failed to stop recording: ${e.description}', + isError: true, + ); } catch (e) { - _showNotification('Unexpected error stopping recording: $e', isError: true); + _showNotification( + 'Unexpected error stopping recording: $e', + isError: true, + ); } finally { if (mounted) { setState(() {}); @@ -332,7 +364,10 @@ class _VideoRecordingHomeState extends State with SingleTick await playerController.setLooping(true); await playerController.play(); } catch (e) { - _showNotification('Failed to load recorded video in player: $e', isError: true); + _showNotification( + 'Failed to load recorded video in player: $e', + isError: true, + ); } if (mounted) { @@ -356,7 +391,9 @@ class _VideoRecordingHomeState extends State with SingleTick return Scaffold( body: SafeArea( child: _isInitializing - ? const Center(child: CircularProgressIndicator(color: Color(0xFF6C63FF))) + ? const Center( + child: CircularProgressIndicator(color: Color(0xFF6C63FF)), + ) : SingleChildScrollView( padding: const EdgeInsets.all(20.0), child: Column( @@ -392,7 +429,12 @@ class _VideoRecordingHomeState extends State with SingleTick children: [ Text( 'VIVID VIDEO RECORDER', - style: TextStyle(fontSize: 22, fontWeight: FontWeight.w900, letterSpacing: 1.5, color: textPrimary), + style: TextStyle( + fontSize: 22, + fontWeight: FontWeight.w900, + letterSpacing: 1.5, + color: textPrimary, + ), ), const SizedBox(height: 4), const Text( @@ -433,7 +475,9 @@ class _VideoRecordingHomeState extends State with SingleTick boxShadow: [ BoxShadow( color: isRecording - ? (isPaused ? Colors.amber.withOpacity(0.15) : const Color(0xFFFF1744).withOpacity(0.15)) + ? (isPaused + ? Colors.amber.withOpacity(0.15) + : const Color(0xFFFF1744).withOpacity(0.15)) : Colors.transparent, blurRadius: 16, spreadRadius: 4, @@ -448,7 +492,10 @@ class _VideoRecordingHomeState extends State with SingleTick CameraPreview(controller) else const Center( - child: Text('Camera pipeline is uninitialized.', style: TextStyle(color: Colors.grey)), + child: Text( + 'Camera pipeline is uninitialized.', + style: TextStyle(color: Colors.grey), + ), ), // Recording Status Overlay if (isRecording) @@ -456,11 +503,18 @@ class _VideoRecordingHomeState extends State with SingleTick top: 16, left: 16, child: Container( - padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 6), + padding: const EdgeInsets.symmetric( + horizontal: 12, + vertical: 6, + ), decoration: BoxDecoration( - color: (isDark ? const Color(0xFF1E1E30) : Colors.white).withOpacity(0.85), + color: (isDark ? const Color(0xFF1E1E30) : Colors.white) + .withOpacity(0.85), borderRadius: BorderRadius.circular(30), - border: Border.all(color: isPaused ? Colors.amber : const Color(0xFFFF1744), width: 1.5), + border: Border.all( + color: isPaused ? Colors.amber : const Color(0xFFFF1744), + width: 1.5, + ), ), child: Row( mainAxisSize: MainAxisSize.min, @@ -469,7 +523,9 @@ class _VideoRecordingHomeState extends State with SingleTick width: 8, height: 8, decoration: BoxDecoration( - color: isPaused ? Colors.amber : const Color(0xFFFF1744), + color: isPaused + ? Colors.amber + : const Color(0xFFFF1744), shape: BoxShape.circle, ), ), @@ -479,7 +535,9 @@ class _VideoRecordingHomeState extends State with SingleTick style: TextStyle( fontSize: 10, fontWeight: FontWeight.bold, - color: isPaused ? Colors.amber : const Color(0xFFFF1744), + color: isPaused + ? Colors.amber + : const Color(0xFFFF1744), letterSpacing: 1.0, ), ), @@ -494,9 +552,15 @@ class _VideoRecordingHomeState extends State with SingleTick Widget _buildPathSettingsCard(bool isDark, Color textPrimary) { final Color cardBgColor = isDark ? const Color(0xFF161626) : Colors.white; - final borderBgColor = isDark ? const Color(0xFF2C2C40) : const Color(0xFFE2E2EC); - final subBgColor = isDark ? const Color(0xFF0F0F1A) : const Color(0xFFF5F5FA); - final textSecondary = isDark ? const Color(0xFF8F8FA0) : const Color(0xFF6E6E7E); + final borderBgColor = isDark + ? const Color(0xFF2C2C40) + : const Color(0xFFE2E2EC); + final subBgColor = isDark + ? const Color(0xFF0F0F1A) + : const Color(0xFFF5F5FA); + final textSecondary = isDark + ? const Color(0xFF8F8FA0) + : const Color(0xFF6E6E7E); return Container( decoration: BoxDecoration( @@ -505,7 +569,13 @@ class _VideoRecordingHomeState extends State with SingleTick border: Border.all(color: borderBgColor), boxShadow: isDark ? const [] - : [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10, offset: const Offset(0, 4))], + : [ + BoxShadow( + color: Colors.black.withOpacity(0.05), + blurRadius: 10, + offset: const Offset(0, 4), + ), + ], ), padding: const EdgeInsets.all(16), child: Column( @@ -516,11 +586,19 @@ class _VideoRecordingHomeState extends State with SingleTick children: [ Row( children: [ - const Icon(Icons.folder_open, color: Color(0xFF6C63FF), size: 20), + const Icon( + Icons.folder_open, + color: Color(0xFF6C63FF), + size: 20, + ), const SizedBox(width: 8), Text( 'Custom Output Path', - style: TextStyle(fontWeight: FontWeight.bold, fontSize: 15, color: textPrimary), + style: TextStyle( + fontWeight: FontWeight.bold, + fontSize: 15, + color: textPrimary, + ), ), ], ), @@ -540,10 +618,16 @@ class _VideoRecordingHomeState extends State with SingleTick TextField( style: TextStyle(color: textPrimary), decoration: InputDecoration( - labelText: kIsWeb ? 'Suggested Download Filename' : 'Filename, absolute path, or content:// URI', + labelText: kIsWeb + ? 'Suggested Download Filename' + : 'Filename, absolute path, or content:// URI', labelStyle: TextStyle(color: textSecondary, fontSize: 13), hintText: 'my_video.mp4 or content://...', - prefixIcon: Icon(Icons.description, size: 18, color: textSecondary), + prefixIcon: Icon( + Icons.description, + size: 18, + color: textSecondary, + ), filled: true, fillColor: subBgColor, enabledBorder: OutlineInputBorder( @@ -552,7 +636,10 @@ class _VideoRecordingHomeState extends State with SingleTick ), focusedBorder: OutlineInputBorder( borderRadius: BorderRadius.circular(12), - borderSide: const BorderSide(color: Color(0xFF6C63FF), width: 1.5), + borderSide: const BorderSide( + color: Color(0xFF6C63FF), + width: 1.5, + ), ), ), controller: TextEditingController(text: _customFileName), @@ -563,7 +650,10 @@ class _VideoRecordingHomeState extends State with SingleTick const SizedBox(height: 12), Container( padding: const EdgeInsets.all(12), - decoration: BoxDecoration(color: subBgColor, borderRadius: BorderRadius.circular(10)), + decoration: BoxDecoration( + color: subBgColor, + borderRadius: BorderRadius.circular(10), + ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -577,9 +667,18 @@ class _VideoRecordingHomeState extends State with SingleTick ), ), const SizedBox(height: 6), - _buildValidationBullet('Must end with supported extension (.mp4, .mov, .3gp, .m4v, .webm)', isDark), - _buildValidationBullet('Cannot be an existing directory', isDark), - _buildValidationBullet('Parent folder must exist on device storage', isDark), + _buildValidationBullet( + 'Must end with supported extension (.mp4, .mov, .3gp, .m4v, .webm)', + isDark, + ), + _buildValidationBullet( + 'Cannot be an existing directory', + isDark, + ), + _buildValidationBullet( + 'Parent folder must exist on device storage', + isDark, + ), ], ), ), @@ -590,7 +689,9 @@ class _VideoRecordingHomeState extends State with SingleTick } Widget _buildValidationBullet(String text, bool isDark) { - final textSecondary = isDark ? const Color(0xFFB0B0C0) : const Color(0xFF5A5A6A); + final textSecondary = isDark + ? const Color(0xFFB0B0C0) + : const Color(0xFF5A5A6A); return Padding( padding: const EdgeInsets.only(bottom: 4.0), child: Row( @@ -599,7 +700,10 @@ class _VideoRecordingHomeState extends State with SingleTick const Icon(Icons.check_circle, size: 12, color: Color(0xFF00E676)), const SizedBox(width: 8), Expanded( - child: Text(text, style: TextStyle(fontSize: 11, color: textSecondary)), + child: Text( + text, + style: TextStyle(fontSize: 11, color: textSecondary), + ), ), ], ), @@ -610,7 +714,9 @@ class _VideoRecordingHomeState extends State with SingleTick final CameraController? controller = _controller; final bool isRecording = controller?.value.isRecordingVideo ?? false; final bool isPaused = controller?.value.isRecordingPaused ?? false; - final Color controlBgColor = isDark ? const Color(0xFF1E1E30) : Colors.white; + final Color controlBgColor = isDark + ? const Color(0xFF1E1E30) + : Colors.white; return Row( mainAxisAlignment: MainAxisAlignment.spaceEvenly, @@ -620,9 +726,13 @@ class _VideoRecordingHomeState extends State with SingleTick icon: Icon(_audioEnabled ? Icons.mic : Icons.mic_off), style: IconButton.styleFrom( backgroundColor: controlBgColor, - foregroundColor: _audioEnabled ? const Color(0xFF00E676) : Colors.grey, + foregroundColor: _audioEnabled + ? const Color(0xFF00E676) + : Colors.grey, padding: const EdgeInsets.all(14), - side: isDark ? BorderSide.none : const BorderSide(color: Color(0xFFE2E2EC)), + side: isDark + ? BorderSide.none + : const BorderSide(color: Color(0xFFE2E2EC)), ), onPressed: isRecording ? null @@ -643,17 +753,27 @@ class _VideoRecordingHomeState extends State with SingleTick height: 76, width: 76, decoration: BoxDecoration( - color: isRecording ? const Color(0xFFFF1744) : const Color(0xFF6C63FF), + color: isRecording + ? const Color(0xFFFF1744) + : const Color(0xFF6C63FF), shape: BoxShape.circle, boxShadow: [ BoxShadow( - color: (isRecording ? const Color(0xFFFF1744) : const Color(0xFF6C63FF)).withOpacity(0.3), + color: + (isRecording + ? const Color(0xFFFF1744) + : const Color(0xFF6C63FF)) + .withOpacity(0.3), blurRadius: 12, spreadRadius: 2, ), ], ), - child: Icon(isRecording ? Icons.stop : Icons.videocam, size: 32, color: Colors.white), + child: Icon( + isRecording ? Icons.stop : Icons.videocam, + size: 32, + color: Colors.white, + ), ), ), @@ -664,18 +784,28 @@ class _VideoRecordingHomeState extends State with SingleTick backgroundColor: controlBgColor, foregroundColor: const Color(0xFF6C63FF), padding: const EdgeInsets.all(14), - side: isDark ? BorderSide.none : const BorderSide(color: Color(0xFFE2E2EC)), + side: isDark + ? BorderSide.none + : const BorderSide(color: Color(0xFFE2E2EC)), ), - onPressed: isRecording ? (isPaused ? _resumeRecording : _pauseRecording) : null, + onPressed: isRecording + ? (isPaused ? _resumeRecording : _pauseRecording) + : null, ), ], ); } - Widget _buildVideoPlayerCard(double screenWidth, bool isDark, Color textPrimary) { + Widget _buildVideoPlayerCard( + double screenWidth, + bool isDark, + Color textPrimary, + ) { final VideoPlayerController? playerController = _videoPlayerController; final Color cardBgColor = isDark ? const Color(0xFF161626) : Colors.white; - final borderBgColor = isDark ? const Color(0xFF2C2C40) : const Color(0xFFE2E2EC); + final borderBgColor = isDark + ? const Color(0xFF2C2C40) + : const Color(0xFFE2E2EC); return Container( decoration: BoxDecoration( @@ -684,7 +814,13 @@ class _VideoRecordingHomeState extends State with SingleTick border: Border.all(color: borderBgColor), boxShadow: isDark ? const [] - : [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10, offset: const Offset(0, 4))], + : [ + BoxShadow( + color: Colors.black.withOpacity(0.05), + blurRadius: 10, + offset: const Offset(0, 4), + ), + ], ), padding: const EdgeInsets.all(16), child: Column( @@ -692,11 +828,19 @@ class _VideoRecordingHomeState extends State with SingleTick children: [ Row( children: [ - const Icon(Icons.video_library, color: Color(0xFF00E676), size: 20), + const Icon( + Icons.video_library, + color: Color(0xFF00E676), + size: 20, + ), const SizedBox(width: 8), Text( 'Recorded Video Output', - style: TextStyle(fontWeight: FontWeight.bold, fontSize: 15, color: textPrimary), + style: TextStyle( + fontWeight: FontWeight.bold, + fontSize: 15, + color: textPrimary, + ), ), ], ), @@ -704,7 +848,10 @@ class _VideoRecordingHomeState extends State with SingleTick if (playerController != null && playerController.value.isInitialized) ClipRRect( borderRadius: BorderRadius.circular(12), - child: AspectRatio(aspectRatio: playerController.value.aspectRatio, child: VideoPlayer(playerController)), + child: AspectRatio( + aspectRatio: playerController.value.aspectRatio, + child: VideoPlayer(playerController), + ), ) else const Center( @@ -716,23 +863,39 @@ class _VideoRecordingHomeState extends State with SingleTick const SizedBox(height: 12), Text( 'Saved Location Path:', - style: TextStyle(fontSize: 10, fontWeight: FontWeight.bold, color: Colors.grey[600]), + style: TextStyle( + fontSize: 10, + fontWeight: FontWeight.bold, + color: Colors.grey[600], + ), ), const SizedBox(height: 4), SelectableText( _recordedVideo?.path ?? 'Unknown', - style: const TextStyle(fontSize: 11, fontFamily: 'Courier', color: Color(0xFF00E676)), + style: const TextStyle( + fontSize: 11, + fontFamily: 'Courier', + color: Color(0xFF00E676), + ), ), if (_resolvedCustomPath != null) ...[ const SizedBox(height: 10), Text( 'Requested Custom Path:', - style: TextStyle(fontSize: 10, fontWeight: FontWeight.bold, color: Colors.grey[600]), + style: TextStyle( + fontSize: 10, + fontWeight: FontWeight.bold, + color: Colors.grey[600], + ), ), const SizedBox(height: 4), SelectableText( _resolvedCustomPath!, - style: const TextStyle(fontSize: 11, fontFamily: 'Courier', color: Color(0xFF6C63FF)), + style: const TextStyle( + fontSize: 11, + fontFamily: 'Courier', + color: Color(0xFF6C63FF), + ), ), ], ], From 742c63dd04a4d526fa6f7c68024c3b665b138b20 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Sun, 24 May 2026 18:02:46 -0300 Subject: [PATCH 10/30] feat: add support for CADisableMinimumFrameDurationOnPhone and UIApplicationSupportsIndirectInputEvents in Info.plist --- packages/camera/camera/example/ios/Runner/Info.plist | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/camera/camera/example/ios/Runner/Info.plist b/packages/camera/camera/example/ios/Runner/Info.plist index 745494da50a6..d5addcf98ef2 100644 --- a/packages/camera/camera/example/ios/Runner/Info.plist +++ b/packages/camera/camera/example/ios/Runner/Info.plist @@ -2,6 +2,8 @@ + CADisableMinimumFrameDurationOnPhone + CFBundleDevelopmentRegion $(DEVELOPMENT_LANGUAGE) CFBundleDisplayName @@ -28,6 +30,8 @@ Can I use the camera please? Only for demo purpose of the app NSMicrophoneUsageDescription Only for demo purpose of the app + UIApplicationSupportsIndirectInputEvents + UILaunchStoryboardName LaunchScreen UIMainStoryboardFile @@ -46,9 +50,5 @@ UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight - CADisableMinimumFrameDurationOnPhone - - UIApplicationSupportsIndirectInputEvents - From c5691c7d1c987dba6abdf6b7d0f86c149f163a8d Mon Sep 17 00:00:00 2001 From: Mairramer Date: Sun, 24 May 2026 18:03:05 -0300 Subject: [PATCH 11/30] feat: add support for document browsing in Info.plist --- packages/camera/camera/example/ios/Runner/Info.plist | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/camera/camera/example/ios/Runner/Info.plist b/packages/camera/camera/example/ios/Runner/Info.plist index d5addcf98ef2..42c3f394b0e0 100644 --- a/packages/camera/camera/example/ios/Runner/Info.plist +++ b/packages/camera/camera/example/ios/Runner/Info.plist @@ -2,6 +2,10 @@ + LSSupportsOpeningDocumentsInPlace + + UISupportsDocumentBrowser + CADisableMinimumFrameDurationOnPhone CFBundleDevelopmentRegion From 0dc2583cdc2f463d001905065204dbb6cbb699ae Mon Sep 17 00:00:00 2001 From: Mairramer Date: Mon, 25 May 2026 08:51:16 -0300 Subject: [PATCH 12/30] refactor: remove videoOutputPath support from camera_web and update project configuration and dependencies. --- packages/camera/camera/example/pubspec.yaml | 3 ++ packages/camera/camera/pubspec.yaml | 3 ++ packages/camera/camera_web/CHANGELOG.md | 5 +- .../example/integration_test/camera_test.dart | 51 ------------------- .../integration_test/camera_web_test.dart | 21 -------- .../camera/camera_web/example/pubspec.yaml | 8 +-- .../camera/camera_web/lib/src/camera.dart | 8 +-- .../camera/camera_web/lib/src/camera_web.dart | 8 +-- packages/camera/camera_web/pubspec.yaml | 10 ++-- 9 files changed, 17 insertions(+), 100 deletions(-) diff --git a/packages/camera/camera/example/pubspec.yaml b/packages/camera/camera/example/pubspec.yaml index 822ca935a164..e2f3f5d9fc28 100644 --- a/packages/camera/camera/example/pubspec.yaml +++ b/packages/camera/camera/example/pubspec.yaml @@ -34,4 +34,7 @@ flutter: # FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. # See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins dependency_overrides: + camera_android_camerax: {path: ../../../../packages/camera/camera_android_camerax} + camera_avfoundation: {path: ../../../../packages/camera/camera_avfoundation} camera_platform_interface: {path: ../../../../packages/camera/camera_platform_interface} + camera_web: {path: ../../../../packages/camera/camera_web} diff --git a/packages/camera/camera/pubspec.yaml b/packages/camera/camera/pubspec.yaml index 19fa2c8f3062..a11f6afdba8c 100644 --- a/packages/camera/camera/pubspec.yaml +++ b/packages/camera/camera/pubspec.yaml @@ -41,4 +41,7 @@ topics: # FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. # See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins dependency_overrides: + camera_android_camerax: {path: ../../../packages/camera/camera_android_camerax} + camera_avfoundation: {path: ../../../packages/camera/camera_avfoundation} camera_platform_interface: {path: ../../../packages/camera/camera_platform_interface} + camera_web: {path: ../../../packages/camera/camera_web} diff --git a/packages/camera/camera_web/CHANGELOG.md b/packages/camera/camera_web/CHANGELOG.md index f191129cb75a..3ae6487afe47 100644 --- a/packages/camera/camera_web/CHANGELOG.md +++ b/packages/camera/camera_web/CHANGELOG.md @@ -1,7 +1,6 @@ -## 0.3.5+4 +## NEXT -* Adds support for custom video output path in video recording. -* Updates minimum supported SDK version to Flutter 3.35/Dart 3.9. +* Updates minimum supported SDK version to Flutter 3.38/Dart 3.10. ## 0.3.5+3 diff --git a/packages/camera/camera_web/example/integration_test/camera_test.dart b/packages/camera/camera_web/example/integration_test/camera_test.dart index 5accc826c422..29af6ceddbd9 100644 --- a/packages/camera/camera_web/example/integration_test/camera_test.dart +++ b/packages/camera/camera_web/example/integration_test/camera_test.dart @@ -1198,57 +1198,6 @@ void main() { expect(videoParts, equals(capturedVideoParts)); }); - testWidgets('stops a video recording and ' - 'returns the captured file ' - 'with the specified videoOutputPath', (WidgetTester tester) async { - final camera = Camera(textureId: 1, cameraService: cameraService) - ..mediaRecorder = mediaRecorder - ..isVideoTypeSupported = isVideoTypeSupported; - - await camera.initialize(); - await camera.play(); - - late EventListener videoDataAvailableListener; - late EventListener videoRecordingStoppedListener; - - mockMediaRecorder.addEventListener = - (String type, EventListener? callback, [JSAny? options]) { - if (type == 'dataavailable') { - videoDataAvailableListener = callback!; - } else if (type == 'stop') { - videoRecordingStoppedListener = callback!; - } - }.toJS; - - Blob? finalVideo; - camera.blobBuilder = (List blobs, String videoType) { - finalVideo = Blob(blobs.toJS, BlobPropertyBag(type: videoType)); - return finalVideo!; - }; - - const customPath = 'custom_video_path.mp4'; - await camera.startVideoRecording(videoOutputPath: customPath); - - mockMediaRecorder.stop = () {}.toJS; - - final Future videoFileFuture = camera.stopVideoRecording(); - - final capturedVideoPartOne = Blob([].toJS); - - videoDataAvailableListener.callAsFunction( - null, - createJSInteropWrapper(FakeBlobEvent(capturedVideoPartOne)) - as BlobEvent, - ); - - videoRecordingStoppedListener.callAsFunction(null, Event('stop')); - - final XFile videoFile = await videoFileFuture; - - expect(videoFile, isNotNull); - expect(videoFile.name, equals(customPath)); - }); - testWidgets('throws a CameraWebException ' 'with videoRecordingNotStarted error ' 'if the video recording was not started', ( diff --git a/packages/camera/camera_web/example/integration_test/camera_web_test.dart b/packages/camera/camera_web/example/integration_test/camera_web_test.dart index 3a73310c75d3..5542bac34ec0 100644 --- a/packages/camera/camera_web/example/integration_test/camera_web_test.dart +++ b/packages/camera/camera_web/example/integration_test/camera_web_test.dart @@ -1336,27 +1336,6 @@ void main() { throwsA(isA()), ); }); - - testWidgets('passes videoOutputPath to camera.startVideoRecording', ( - WidgetTester tester, - ) async { - // Save the camera in the camera plugin. - (CameraPlatform.instance as CameraPlugin).cameras[cameraId] = camera; - - const customPath = 'custom_web_path.mp4'; - - when( - camera.startVideoRecording(videoOutputPath: customPath), - ).thenAnswer((_) async {}); - - await CameraPlatform.instance.startVideoCapturing( - const VideoCaptureOptions(cameraId, videoOutputPath: customPath), - ); - - verify( - camera.startVideoRecording(videoOutputPath: customPath), - ).called(1); - }); }); group('stopVideoRecording', () { diff --git a/packages/camera/camera_web/example/pubspec.yaml b/packages/camera/camera_web/example/pubspec.yaml index 3181840cf109..260fbc719408 100644 --- a/packages/camera/camera_web/example/pubspec.yaml +++ b/packages/camera/camera_web/example/pubspec.yaml @@ -2,8 +2,8 @@ name: camera_web_integration_tests publish_to: none environment: - sdk: ^3.9.0 - flutter: ">=3.35.0" + sdk: ^3.10.0 + flutter: ">=3.38.0" dependencies: camera_platform_interface: ^2.6.0 @@ -27,7 +27,3 @@ dev_dependencies: integration_test: sdk: flutter mockito: ^5.4.4 -# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. -# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins -dependency_overrides: - camera_platform_interface: {path: ../../../../packages/camera/camera_platform_interface} diff --git a/packages/camera/camera_web/lib/src/camera.dart b/packages/camera/camera_web/lib/src/camera.dart index a59924c0ec55..dd773d380c73 100644 --- a/packages/camera/camera_web/lib/src/camera.dart +++ b/packages/camera/camera_web/lib/src/camera.dart @@ -144,9 +144,6 @@ class Camera { /// A listener fired when a video recording is stopped. void Function(web.Event)? _videoRecordingStoppedListener; - /// The output path for the video recording. - String? _videoOutputPath; - /// A builder to merge a list of blobs into a single blob. @visibleForTesting web.Blob Function(List blobs, String type) blobBuilder = @@ -458,8 +455,7 @@ class Camera { /// /// Throws a [CameraWebException] if the browser does not support any of the /// available video mime types from [_videoMimeType]. - Future startVideoRecording({String? videoOutputPath}) async { - _videoOutputPath = videoOutputPath; + Future startVideoRecording() async { final options = web.MediaRecorderOptions(mimeType: _videoMimeType); if (recorderOptions.audioBitrate != null) { options.audioBitsPerSecond = recorderOptions.audioBitrate!; @@ -516,7 +512,7 @@ class Camera { final file = XFile( web.URL.createObjectURL(videoBlob), mimeType: _videoMimeType, - name: _videoOutputPath ?? videoBlob.hashCode.toString(), + name: videoBlob.hashCode.toString(), ); // Emit an event containing the recorded video file. diff --git a/packages/camera/camera_web/lib/src/camera_web.dart b/packages/camera/camera_web/lib/src/camera_web.dart index a17f61f4f4ac..e48b8f75d69d 100644 --- a/packages/camera/camera_web/lib/src/camera_web.dart +++ b/packages/camera/camera_web/lib/src/camera_web.dart @@ -467,9 +467,7 @@ class CameraPlugin extends CameraPlatform { String? videoOutputPath, }) { // Ignore maxVideoDuration, as it is deprecated. - return startVideoCapturing( - VideoCaptureOptions(cameraId, videoOutputPath: videoOutputPath), - ); + return startVideoCapturing(VideoCaptureOptions(cameraId)); } @override @@ -496,9 +494,7 @@ class CameraPlugin extends CameraPlatform { ); }); - return camera.startVideoRecording( - videoOutputPath: options.videoOutputPath, - ); + return camera.startVideoRecording(); } on web.DOMException catch (e) { throw PlatformException(code: e.name, message: e.message); } on CameraWebException catch (e) { diff --git a/packages/camera/camera_web/pubspec.yaml b/packages/camera/camera_web/pubspec.yaml index 3eb9440e3bb1..bba4fae6d144 100644 --- a/packages/camera/camera_web/pubspec.yaml +++ b/packages/camera/camera_web/pubspec.yaml @@ -2,11 +2,11 @@ name: camera_web description: A Flutter plugin for getting information about and controlling the camera on Web. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera_web issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.3.5+4 +version: 0.3.5+3 environment: - sdk: ^3.9.0 - flutter: ">=3.35.0" + sdk: ^3.10.0 + flutter: ">=3.38.0" flutter: plugin: @@ -31,7 +31,3 @@ dev_dependencies: topics: - camera -# FOR TESTING AND INITIAL REVIEW ONLY. DO NOT MERGE. -# See https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins -dependency_overrides: - camera_platform_interface: {path: ../../../packages/camera/camera_platform_interface} From d7b0b5164e14a19e368b3e2bc236b7b881f1730c Mon Sep 17 00:00:00 2001 From: Mairramer <50643541+Mairramer@users.noreply.github.com> Date: Mon, 25 May 2026 09:17:20 -0300 Subject: [PATCH 13/30] Update packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- .../Sources/camera_avfoundation/DefaultCamera.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift index 55e4430838c0..30ecd2c0573b 100644 --- a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift +++ b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift @@ -595,7 +595,7 @@ final class DefaultCamera: NSObject, Camera { throw PigeonError(code: "IOError", message: "Path is a directory: \(path)", details: nil) } let parentPath = (path as NSString).deletingLastPathComponent - if !FileManager.default.fileExists(atPath: parentPath) { + if !parentPath.isEmpty && !FileManager.default.fileExists(atPath: parentPath) { throw PigeonError( code: "IOError", message: "Parent directory does not exist: \(parentPath)", details: nil) } From 17c0bf6ea3bf5f70f6625e54c16ccf07b6509190 Mon Sep 17 00:00:00 2001 From: Mairramer <50643541+Mairramer@users.noreply.github.com> Date: Mon, 25 May 2026 09:18:58 -0300 Subject: [PATCH 14/30] Update packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- .../android/src/main/java/io/flutter/plugins/camera/Camera.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java index 26fef241ff33..11d8f18c9621 100644 --- a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java +++ b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java @@ -1304,7 +1304,7 @@ private void validateOutputPath(String path) { "IOError", "The parent directory does not exist: " + parent.getAbsolutePath(), null); } - String lowerPath = path.toLowerCase(); + String lowerPath = path.toLowerCase(Locale.ROOT); if (!lowerPath.endsWith(".mp4") && !lowerPath.endsWith(".mov") && !lowerPath.endsWith(".3gp") From 525ec563938d38a4f69a52f324d5b5af33db1c41 Mon Sep 17 00:00:00 2001 From: Mairramer <50643541+Mairramer@users.noreply.github.com> Date: Mon, 25 May 2026 09:19:13 -0300 Subject: [PATCH 15/30] Update packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- .../main/java/io/flutter/plugins/camerax/RecorderProxyApi.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java index f2357a2339ac..332f29f441bc 100644 --- a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java +++ b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java @@ -83,7 +83,7 @@ private void validateOutputPath(@NonNull String path) { "IOError", "The parent directory does not exist: " + parent.getAbsolutePath(), null); } - String lowerPath = path.toLowerCase(); + String lowerPath = path.toLowerCase(Locale.ROOT); if (!lowerPath.endsWith(".mp4") && !lowerPath.endsWith(".mov") && !lowerPath.endsWith(".3gp") From 41572cfd41c42c39dd560e02725a530cf6db9edc Mon Sep 17 00:00:00 2001 From: Mairramer Date: Mon, 25 May 2026 09:42:43 -0300 Subject: [PATCH 16/30] refactor: restrict supported video output format to .mp4 across all platforms --- packages/camera/camera/lib/src/camera_controller.dart | 10 ++++++++++ .../main/java/io/flutter/plugins/camera/Camera.java | 9 ++------- .../camera_android/example/lib/camera_controller.dart | 10 ++++++++++ .../io/flutter/plugins/camerax/RecorderProxyApi.java | 8 ++------ .../example/lib/camera_controller.dart | 10 ++++++++++ .../Sources/camera_avfoundation/DefaultCamera.swift | 2 +- .../camera_windows/windows/capture_controller.cpp | 4 ++-- 7 files changed, 37 insertions(+), 16 deletions(-) diff --git a/packages/camera/camera/lib/src/camera_controller.dart b/packages/camera/camera/lib/src/camera_controller.dart index a36ff2d12b35..38de580e2200 100644 --- a/packages/camera/camera/lib/src/camera_controller.dart +++ b/packages/camera/camera/lib/src/camera_controller.dart @@ -586,6 +586,16 @@ class CameraController extends ValueNotifier { ); } + if (videoOutputPath != null) { + final String lowerPath = videoOutputPath.toLowerCase(); + if (!lowerPath.endsWith('.mp4')) { + throw CameraException( + 'InvalidFilePath', + 'Invalid video extension. Supported: .mp4', + ); + } + } + void Function(CameraImageData image)? streamCallback; if (onAvailable != null) { streamCallback = (CameraImageData imageData) { diff --git a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java index 11d8f18c9621..30bbc3a3a71d 100644 --- a/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java +++ b/packages/camera/camera_android/android/src/main/java/io/flutter/plugins/camera/Camera.java @@ -1305,13 +1305,8 @@ private void validateOutputPath(String path) { } String lowerPath = path.toLowerCase(Locale.ROOT); - if (!lowerPath.endsWith(".mp4") - && !lowerPath.endsWith(".mov") - && !lowerPath.endsWith(".3gp") - && !lowerPath.endsWith(".m4v") - && !lowerPath.endsWith(".webm")) { - throw new Messages.FlutterError( - "IOError", "Invalid video extension. Supported: .mp4, .mov, .3gp, .m4v, .webm", null); + if (!lowerPath.endsWith(".mp4")) { + throw new Messages.FlutterError("IOError", "Invalid video extension. Supported: .mp4", null); } } diff --git a/packages/camera/camera_android/example/lib/camera_controller.dart b/packages/camera/camera_android/example/lib/camera_controller.dart index 5c481988fa4c..6233124fe280 100644 --- a/packages/camera/camera_android/example/lib/camera_controller.dart +++ b/packages/camera/camera_android/example/lib/camera_controller.dart @@ -328,6 +328,16 @@ class CameraController extends ValueNotifier { void Function(CameraImageData image)? streamCallback, String? videoOutputPath, }) async { + if (videoOutputPath != null) { + final String lowerPath = videoOutputPath.toLowerCase(); + if (!lowerPath.endsWith('.mp4')) { + throw CameraException( + 'InvalidFilePath', + 'Invalid video extension. Supported: .mp4', + ); + } + } + await CameraPlatform.instance.startVideoCapturing( VideoCaptureOptions( _cameraId, diff --git a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java index 332f29f441bc..3bfeb24bb000 100644 --- a/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java +++ b/packages/camera/camera_android_camerax/android/src/main/java/io/flutter/plugins/camerax/RecorderProxyApi.java @@ -84,13 +84,9 @@ private void validateOutputPath(@NonNull String path) { } String lowerPath = path.toLowerCase(Locale.ROOT); - if (!lowerPath.endsWith(".mp4") - && !lowerPath.endsWith(".mov") - && !lowerPath.endsWith(".3gp") - && !lowerPath.endsWith(".m4v") - && !lowerPath.endsWith(".webm")) { + if (!lowerPath.endsWith(".mp4")) { throw new GeneratedCameraXLibrary.FlutterError( - "IOError", "Invalid video extension. Supported: .mp4, .mov, .3gp, .m4v, .webm", null); + "IOError", "Invalid video extension. Supported: .mp4", null); } } diff --git a/packages/camera/camera_android_camerax/example/lib/camera_controller.dart b/packages/camera/camera_android_camerax/example/lib/camera_controller.dart index 17a12c920e05..4a72904441e6 100644 --- a/packages/camera/camera_android_camerax/example/lib/camera_controller.dart +++ b/packages/camera/camera_android_camerax/example/lib/camera_controller.dart @@ -512,6 +512,16 @@ class CameraController extends ValueNotifier { ); } + if (videoOutputPath != null) { + final String lowerPath = videoOutputPath.toLowerCase(); + if (!lowerPath.endsWith('.mp4')) { + throw CameraException( + 'InvalidFilePath', + 'Invalid video extension. Supported: .mp4', + ); + } + } + void Function(CameraImageData image)? streamCallback; if (onAvailable != null) { streamCallback = (CameraImageData imageData) { diff --git a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift index 30ecd2c0573b..f019baac2a0f 100644 --- a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift +++ b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift @@ -601,7 +601,7 @@ final class DefaultCamera: NSObject, Camera { } let lowerPath = path.lowercased() - let validExtensions = [".mp4", ".mov", ".m4v", ".3gp"] + let validExtensions = [".mp4"] if !validExtensions.contains(where: { lowerPath.hasSuffix($0) }) { throw PigeonError( code: "IOError", diff --git a/packages/camera/camera_windows/windows/capture_controller.cpp b/packages/camera/camera_windows/windows/capture_controller.cpp index a36bf472eb4b..31f71d18daa3 100644 --- a/packages/camera/camera_windows/windows/capture_controller.cpp +++ b/packages/camera/camera_windows/windows/capture_controller.cpp @@ -531,10 +531,10 @@ void CaptureControllerImpl::StartRecord(const std::string& file_path) { } std::string ext = file_path.substr(last_dot); for (auto& c : ext) c = (char)tolower(c); - if (ext != ".mp4" && ext != ".mov" && ext != ".wmv" && ext != ".avi") { + if (ext != ".mp4") { return OnRecordStarted( CameraResult::kError, - "Invalid video extension. Supported: .mp4, .mov, .wmv, .avi"); + "Invalid video extension. Supported: .mp4"); } } From b15fc47671acf4b01937618129045ef2fc2cb457 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Mon, 25 May 2026 09:46:00 -0300 Subject: [PATCH 17/30] format --- .../camera/camera_windows/windows/capture_controller.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/camera/camera_windows/windows/capture_controller.cpp b/packages/camera/camera_windows/windows/capture_controller.cpp index 31f71d18daa3..6712ab025cb0 100644 --- a/packages/camera/camera_windows/windows/capture_controller.cpp +++ b/packages/camera/camera_windows/windows/capture_controller.cpp @@ -532,9 +532,8 @@ void CaptureControllerImpl::StartRecord(const std::string& file_path) { std::string ext = file_path.substr(last_dot); for (auto& c : ext) c = (char)tolower(c); if (ext != ".mp4") { - return OnRecordStarted( - CameraResult::kError, - "Invalid video extension. Supported: .mp4"); + return OnRecordStarted(CameraResult::kError, + "Invalid video extension. Supported: .mp4"); } } From 24ba3ac6fda2b4422cb06d0bfeed9e4433caf531 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Mon, 25 May 2026 09:59:34 -0300 Subject: [PATCH 18/30] feat: add documentation for custom video recording paths and remove web support from video recording example --- packages/camera/camera/README.md | 68 ++++++++++++++++--- .../example/lib/video_recording_example.dart | 47 ++++++------- 2 files changed, 79 insertions(+), 36 deletions(-) diff --git a/packages/camera/camera/README.md b/packages/camera/camera/README.md index f3fbdc35a738..270bf2b13112 100644 --- a/packages/camera/camera/README.md +++ b/packages/camera/camera/README.md @@ -6,16 +6,16 @@ A Flutter plugin for iOS, Android and Web allowing access to the device cameras. -| | Android | iOS | Web | -|----------------|---------|-----------|------------------------| -| **Support** | SDK 24+ | iOS 13.0+ | [See `camera_web `][1] | +| | Android | iOS | Web | +| ----------- | ------- | --------- | ---------------------- | +| **Support** | SDK 24+ | iOS 13.0+ | [See `camera_web `][1] | ## Features -* Display live camera preview in a widget. -* Snapshots can be captured and saved to a file. -* Record video. -* Add access to the image stream from Dart. +- Display live camera preview in a widget. +- Snapshots can be captured and saved to a file. +- Record video. +- Add access to the image stream from Dart. ## Setup @@ -23,8 +23,8 @@ A Flutter plugin for iOS, Android and Web allowing access to the device cameras. Add two rows to the `ios/Runner/Info.plist`: -* one with the key `Privacy - Camera Usage Description` and a usage description. -* and one with the key `Privacy - Microphone Usage Description` and a usage description. +- one with the key `Privacy - Camera Usage Description` and a usage description. +- and one with the key `Privacy - Microphone Usage Description` and a usage description. If editing `Info.plist` as text, add: @@ -55,6 +55,7 @@ For web integration details, see the As of version [0.5.0](https://github.com/flutter/packages/blob/main/packages/camera/CHANGELOG.md#050) of the camera plugin, lifecycle changes are no longer handled by the plugin. This means developers are now responsible to control camera resources when the lifecycle state is updated. Failure to do so might lead to unexpected behavior (for example as described in issue [#39109](https://github.com/flutter/flutter/issues/39109)). Handling lifecycle changes can be done by overriding the `didChangeAppLifecycleState` method like so: + ```dart @override void didChangeAppLifecycleState(AppLifecycleState state) { @@ -91,11 +92,60 @@ Here is a list of all permission error codes that can be thrown: - `AudioAccessRestricted`: iOS only for now. Thrown when audio access is restricted and users cannot grant permission (parental control). +### Custom Video Recording Path + +You can optionally specify a `videoOutputPath` when calling `startVideoRecording()` to save the recorded video directly to a custom absolute file path on the device. + +```dart +// Always ensure the path ends with the .mp4 extension +await controller.startVideoRecording( + videoOutputPath: '/path/to/your/custom_video.mp4', +); +``` + +#### Platform-Specific Considerations + +**Android** + +Although it is possible to use an absolute path like `/storage/emulated/0/Download/video.mp4`, this is a fragile practice and may fail on many devices or Android versions due to **Scoped Storage** restrictions. + +- **Best Practice:** Always use the [path_provider](https://pub.dev/packages/path_provider) package to fetch a safe, writable directory. +- **Recommended Directory:** Use `getTemporaryDirectory()` or `getApplicationDocumentsDirectory()`. + +```dart +import 'package:path/path.dart' as p; +import 'package:path_provider/path_provider.dart'; + +final directory = await getTemporaryDirectory(); +final videoPath = p.join(directory.path, 'my_video.mp4'); + +await controller.startVideoRecording(videoOutputPath: videoPath); +``` + +**iOS** + +By default, files saved within the application sandbox are private. If you want the recorded videos to be visible and manageable by the user inside the native iOS **Files app**: + +1. Open your `ios/Runner/Info.plist` file. +2. Add the following keys set to `true`: + +```xml +LSSupportsOpeningDocumentsInPlace + +UISupportsDocumentBrowser + +``` + +**Windows** + +Similar to Android, ensure you use the `path_provider` package to resolve a valid system path (such as `getApplicationDocumentsDirectory()` or `getApplicationSupportDirectory()`). This helps avoid OS permission issues (`Access Denied`) when writing files directly to protected directories like the root drive. + ### Example Here is a small example flutter app displaying a full screen camera preview. + ```dart import 'package:camera/camera.dart'; import 'package:flutter/material.dart'; diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index 65b547bd01b3..52aa99f0cecf 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -11,8 +11,6 @@ import 'package:flutter/material.dart'; import 'package:path_provider/path_provider.dart'; import 'package:video_player/video_player.dart'; -import 'file_saver_helper.dart'; - /// A premium, highly interactive standalone example demonstrating the /// Video Recording feature with custom output paths (`videoOutputPath`). class VideoRecordingExampleApp extends StatefulWidget { @@ -155,7 +153,7 @@ class _VideoRecordingHomeState extends State ) async { final controller = CameraController( description, - kIsWeb ? ResolutionPreset.max : ResolutionPreset.high, + ResolutionPreset.high, enableAudio: _audioEnabled, ); @@ -174,11 +172,6 @@ class _VideoRecordingHomeState extends State /// Calculates the target custom output path where the video will be saved. Future _getDestinationPath() async { - if (kIsWeb) { - // On web, videoOutputPath represents the suggested file download name. - return _customFileName; - } - final timestamp = DateTime.now().millisecondsSinceEpoch.toString(); // 1. Desktop (macOS, Windows, Linux) @@ -193,13 +186,24 @@ class _VideoRecordingHomeState extends State } } - // 2. Android (Save directly to the public Downloads folder) + // 2. Android + // Although it is possible to use an absolute path like '/storage/emulated/0/Download/', + // this is a fragile practice and may fail on many devices or Android versions due to + // Scoped Storage restrictions. It is recommended to use path_provider to get a valid + // and writable directory. if (Platform.isAndroid) { final String uniqueName = _customFileName.replaceFirst( '.mp4', '_$timestamp.mp4', ); - return '/storage/emulated/0/Download/$uniqueName'; + + final Directory? externalDir = await getExternalStorageDirectory(); + if (externalDir != null) { + return '${externalDir.path}/$uniqueName'; + } + + final Directory fallbackDir = await getApplicationDocumentsDirectory(); + return '${fallbackDir.path}/$uniqueName'; } // 3. iOS (Save to "On My iPhone" visible app folder) @@ -283,13 +287,7 @@ class _VideoRecordingHomeState extends State _recordedVideo = file; }); - if (kIsWeb && _useCustomPath) { - // On Web, trigger a custom download using our AnchorElement helper. - downloadFile(file.path, _customFileName); - _showNotification('Video download initiated as $_customFileName'); - } else { - _showNotification('Recording finished successfully!'); - } + _showNotification('Recording finished successfully!'); await _playRecordedVideo(file); } on CameraException catch (e) { @@ -350,12 +348,9 @@ class _VideoRecordingHomeState extends State await _videoPlayerController!.dispose(); } - VideoPlayerController playerController; - if (kIsWeb) { - playerController = VideoPlayerController.networkUrl(Uri.parse(file.path)); - } else { - playerController = VideoPlayerController.file(File(file.path)); - } + VideoPlayerController playerController = VideoPlayerController.file( + File(file.path), + ); _videoPlayerController = playerController; @@ -618,11 +613,9 @@ class _VideoRecordingHomeState extends State TextField( style: TextStyle(color: textPrimary), decoration: InputDecoration( - labelText: kIsWeb - ? 'Suggested Download Filename' - : 'Filename, absolute path, or content:// URI', + labelText: 'Filename or absolute path', labelStyle: TextStyle(color: textSecondary, fontSize: 13), - hintText: 'my_video.mp4 or content://...', + hintText: 'my_video.mp4 or /storage/...', prefixIcon: Icon( Icons.description, size: 18, From 7d3544e2b701260c45e213e64f35981bf0e70b34 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Mon, 25 May 2026 09:59:56 -0300 Subject: [PATCH 19/30] fix --- .../camera/camera/example/lib/video_recording_example.dart | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index 52aa99f0cecf..778e5868e3b0 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -6,7 +6,6 @@ import 'dart:async'; import 'dart:io'; import 'package:camera/camera.dart'; -import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:path_provider/path_provider.dart'; import 'package:video_player/video_player.dart'; @@ -348,9 +347,7 @@ class _VideoRecordingHomeState extends State await _videoPlayerController!.dispose(); } - VideoPlayerController playerController = VideoPlayerController.file( - File(file.path), - ); + final playerController = VideoPlayerController.file(File(file.path)); _videoPlayerController = playerController; From 9d1342fbb7e1806ed132507b990f20bc3745626e Mon Sep 17 00:00:00 2001 From: Mairramer Date: Mon, 25 May 2026 10:25:28 -0300 Subject: [PATCH 20/30] refactor: simplify camera example by removing unused web file helpers and standardizing app entry point --- packages/camera/camera/README.md | 19 ++++++++------ .../camera/example/lib/file_saver_helper.dart | 12 --------- .../camera/example/lib/file_saver_stub.dart | 8 ------ .../camera/example/lib/file_saver_web.dart | 16 ------------ packages/camera/camera/example/lib/main.dart | 24 +++++++---------- .../example/lib/video_recording_example.dart | 26 +++++++------------ 6 files changed, 30 insertions(+), 75 deletions(-) delete mode 100644 packages/camera/camera/example/lib/file_saver_helper.dart delete mode 100644 packages/camera/camera/example/lib/file_saver_stub.dart delete mode 100644 packages/camera/camera/example/lib/file_saver_web.dart diff --git a/packages/camera/camera/README.md b/packages/camera/camera/README.md index 270bf2b13112..f61dfa7ca753 100644 --- a/packages/camera/camera/README.md +++ b/packages/camera/camera/README.md @@ -12,10 +12,10 @@ A Flutter plugin for iOS, Android and Web allowing access to the device cameras. ## Features -- Display live camera preview in a widget. -- Snapshots can be captured and saved to a file. -- Record video. -- Add access to the image stream from Dart. +* Display live camera preview in a widget. +* Snapshots can be captured and saved to a file. +* Record video. +* Add access to the image stream from Dart. ## Setup @@ -23,8 +23,8 @@ A Flutter plugin for iOS, Android and Web allowing access to the device cameras. Add two rows to the `ios/Runner/Info.plist`: -- one with the key `Privacy - Camera Usage Description` and a usage description. -- and one with the key `Privacy - Microphone Usage Description` and a usage description. +* one with the key `Privacy - Camera Usage Description` and a usage description. +* and one with the key `Privacy - Microphone Usage Description` and a usage description. If editing `Info.plist` as text, add: @@ -55,7 +55,6 @@ For web integration details, see the As of version [0.5.0](https://github.com/flutter/packages/blob/main/packages/camera/CHANGELOG.md#050) of the camera plugin, lifecycle changes are no longer handled by the plugin. This means developers are now responsible to control camera resources when the lifecycle state is updated. Failure to do so might lead to unexpected behavior (for example as described in issue [#39109](https://github.com/flutter/flutter/issues/39109)). Handling lifecycle changes can be done by overriding the `didChangeAppLifecycleState` method like so: - ```dart @override void didChangeAppLifecycleState(AppLifecycleState state) { @@ -72,6 +71,7 @@ void didChangeAppLifecycleState(AppLifecycleState state) { _initializeCameraController(cameraController.description); } } + ``` ### Handling camera access permissions @@ -140,12 +140,15 @@ By default, files saved within the application sandbox are private. If you want Similar to Android, ensure you use the `path_provider` package to resolve a valid system path (such as `getApplicationDocumentsDirectory()` or `getApplicationSupportDirectory()`). This helps avoid OS permission issues (`Access Denied`) when writing files directly to protected directories like the root drive. +### Video Recording Example + +For a complete, interactive demonstration of video recording with custom file output paths, error handling, and playback, please see the [Video Recording Example](https://github.com/flutter/packages/blob/main/packages/camera/camera/example/lib/video_recording_example.dart) in our example app. + ### Example Here is a small example flutter app displaying a full screen camera preview. - ```dart import 'package:camera/camera.dart'; import 'package:flutter/material.dart'; diff --git a/packages/camera/camera/example/lib/file_saver_helper.dart b/packages/camera/camera/example/lib/file_saver_helper.dart deleted file mode 100644 index b83565060ebd..000000000000 --- a/packages/camera/camera/example/lib/file_saver_helper.dart +++ /dev/null @@ -1,12 +0,0 @@ -// Copyright 2013 The Flutter Authors -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -import 'file_saver_stub.dart' - if (dart.library.js_util) 'file_saver_web.dart' - if (dart.library.html) 'file_saver_web.dart'; - -/// Triggers a file download with a custom filename. -void downloadFile(String url, String fileName) { - saveFile(url, fileName); -} diff --git a/packages/camera/camera/example/lib/file_saver_stub.dart b/packages/camera/camera/example/lib/file_saver_stub.dart deleted file mode 100644 index d4817135be50..000000000000 --- a/packages/camera/camera/example/lib/file_saver_stub.dart +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2013 The Flutter Authors -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -/// Stub implementation for saving files. -void saveFile(String url, String fileName) { - // No-op on native platforms. -} diff --git a/packages/camera/camera/example/lib/file_saver_web.dart b/packages/camera/camera/example/lib/file_saver_web.dart deleted file mode 100644 index eab95b4903dd..000000000000 --- a/packages/camera/camera/example/lib/file_saver_web.dart +++ /dev/null @@ -1,16 +0,0 @@ -// Copyright 2013 The Flutter Authors -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// ignore: avoid_web_libraries_in_flutter -import 'dart:html' as html; - -/// Web implementation for saving files via AnchorElement. -void saveFile(String url, String fileName) { - final anchor = html.AnchorElement(href: url) - ..setAttribute('download', fileName) - ..style.display = 'none'; - html.document.body?.children.add(anchor); - anchor.click(); - anchor.remove(); -} diff --git a/packages/camera/camera/example/lib/main.dart b/packages/camera/camera/example/lib/main.dart index fc6ece7630b8..cbbbf242c086 100644 --- a/packages/camera/camera/example/lib/main.dart +++ b/packages/camera/camera/example/lib/main.dart @@ -11,8 +11,6 @@ import 'package:flutter/material.dart'; import 'package:flutter/scheduler.dart'; import 'package:video_player/video_player.dart'; -import 'video_recording_example.dart'; - /// Camera example home widget. class CameraExampleHome extends StatefulWidget { /// Default Constructor @@ -1057,17 +1055,13 @@ class CameraApp extends StatelessWidget { List get cameras => _cameras; List _cameras = []; -// Future main() async { -// // Fetch the available cameras before initializing the app. -// try { -// WidgetsFlutterBinding.ensureInitialized(); -// _cameras = await availableCameras(); -// } on CameraException catch (e) { -// _logError(e.code, e.description); -// } -// runApp(const CameraApp()); -// } - -void main() { - runApp(const VideoRecordingExampleApp()); +Future main() async { + // Fetch the available cameras before initializing the app. + try { + WidgetsFlutterBinding.ensureInitialized(); + _cameras = await availableCameras(); + } on CameraException catch (e) { + _logError(e.code, e.description); + } + runApp(const CameraApp()); } diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index 778e5868e3b0..934600d7e763 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -1,7 +1,6 @@ // Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. - import 'dart:async'; import 'dart:io'; @@ -10,8 +9,12 @@ import 'package:flutter/material.dart'; import 'package:path_provider/path_provider.dart'; import 'package:video_player/video_player.dart'; +void main() { + runApp(const VideoRecordingExampleApp()); +} + /// A premium, highly interactive standalone example demonstrating the -/// Video Recording feature with custom output paths (`videoOutputPath`). +/// Video Recording feature with custom output paths (`videoOutputPath`) class VideoRecordingExampleApp extends StatefulWidget { /// Default Constructor. const VideoRecordingExampleApp({super.key}); @@ -98,6 +101,7 @@ class _VideoRecordingHomeState extends State // Custom path options String _customFileName = 'custom_video_recording.mp4'; + late TextEditingController _customFileNameController; String? _resolvedCustomPath; // SnackBar / Error messaging helper @@ -125,6 +129,7 @@ class _VideoRecordingHomeState extends State @override void initState() { super.initState(); + _customFileNameController = TextEditingController(text: _customFileName); _bootstrapCameras(); } @@ -173,19 +178,7 @@ class _VideoRecordingHomeState extends State Future _getDestinationPath() async { final timestamp = DateTime.now().millisecondsSinceEpoch.toString(); - // 1. Desktop (macOS, Windows, Linux) - if (Platform.isMacOS || Platform.isWindows || Platform.isLinux) { - try { - final Directory? downloadsDir = await getDownloadsDirectory(); - if (downloadsDir != null) { - return '${downloadsDir.path}/$_customFileName'; - } - } catch (e) { - // Fallback for desktop platforms if getDownloadsDirectory fails. - } - } - - // 2. Android + // 1. Android // Although it is possible to use an absolute path like '/storage/emulated/0/Download/', // this is a fragile practice and may fail on many devices or Android versions due to // Scoped Storage restrictions. It is recommended to use path_provider to get a valid @@ -369,6 +362,7 @@ class _VideoRecordingHomeState extends State @override void dispose() { + _customFileNameController.dispose(); _controller?.dispose(); _videoPlayerController?.dispose(); super.dispose(); @@ -632,7 +626,7 @@ class _VideoRecordingHomeState extends State ), ), ), - controller: TextEditingController(text: _customFileName), + controller: _customFileNameController, onChanged: (String val) { _customFileName = val; }, From 67f2bb14e8d1e68a074d416a01d650c777fa4629 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Mon, 25 May 2026 10:29:24 -0300 Subject: [PATCH 21/30] fix --- packages/camera/camera/example/lib/video_recording_example.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index 934600d7e763..3552f7fe2906 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -13,7 +13,6 @@ void main() { runApp(const VideoRecordingExampleApp()); } -/// A premium, highly interactive standalone example demonstrating the /// Video Recording feature with custom output paths (`videoOutputPath`) class VideoRecordingExampleApp extends StatefulWidget { /// Default Constructor. From 508b2ebbc4bde04998a78239af1cc1b786377377 Mon Sep 17 00:00:00 2001 From: Mairramer <50643541+Mairramer@users.noreply.github.com> Date: Mon, 25 May 2026 10:33:15 -0300 Subject: [PATCH 22/30] Update packages/camera/camera/example/lib/video_recording_example.dart Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- packages/camera/camera/example/lib/video_recording_example.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index 3552f7fe2906..d099436a3c77 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -652,7 +652,7 @@ class _VideoRecordingHomeState extends State const SizedBox(height: 6), _buildValidationBullet( 'Must end with supported extension (.mp4, .mov, .3gp, .m4v, .webm)', - isDark, + 'Must end with supported extension (.mp4)', ), _buildValidationBullet( 'Cannot be an existing directory', From d663c37197f4ec0d3b81a66c741d3042022d6202 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Mon, 25 May 2026 14:28:27 -0300 Subject: [PATCH 23/30] rollback --- packages/camera/camera_web/example/pubspec.yaml | 4 ++-- packages/camera/camera_web/pubspec.yaml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/camera/camera_web/example/pubspec.yaml b/packages/camera/camera_web/example/pubspec.yaml index 260fbc719408..ef786ec3cb1f 100644 --- a/packages/camera/camera_web/example/pubspec.yaml +++ b/packages/camera/camera_web/example/pubspec.yaml @@ -2,8 +2,8 @@ name: camera_web_integration_tests publish_to: none environment: - sdk: ^3.10.0 - flutter: ">=3.38.0" + sdk: ^3.9.0 + flutter: ">=3.35.0" dependencies: camera_platform_interface: ^2.6.0 diff --git a/packages/camera/camera_web/pubspec.yaml b/packages/camera/camera_web/pubspec.yaml index bba4fae6d144..4b3603756387 100644 --- a/packages/camera/camera_web/pubspec.yaml +++ b/packages/camera/camera_web/pubspec.yaml @@ -5,8 +5,8 @@ issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+ version: 0.3.5+3 environment: - sdk: ^3.10.0 - flutter: ">=3.38.0" + sdk: ^3.9.0 + flutter: ">=3.35.0" flutter: plugin: From 0cf24ef8467b62e0b0ac4c1b207ebd4307ed3ac9 Mon Sep 17 00:00:00 2001 From: Mairramer <50643541+Mairramer@users.noreply.github.com> Date: Mon, 25 May 2026 14:32:13 -0300 Subject: [PATCH 24/30] Update packages/camera/camera/example/lib/video_recording_example.dart Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- packages/camera/camera/example/lib/video_recording_example.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index d099436a3c77..87e1ddab07f7 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -651,8 +651,8 @@ class _VideoRecordingHomeState extends State ), const SizedBox(height: 6), _buildValidationBullet( - 'Must end with supported extension (.mp4, .mov, .3gp, .m4v, .webm)', 'Must end with supported extension (.mp4)', + isDark, ), _buildValidationBullet( 'Cannot be an existing directory', From 128511dbb953dbd75d8ebd21e1bf77218f0214a8 Mon Sep 17 00:00:00 2001 From: Mairramer <50643541+Mairramer@users.noreply.github.com> Date: Mon, 25 May 2026 14:32:42 -0300 Subject: [PATCH 25/30] Update packages/camera/camera/example/lib/video_recording_example.dart Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- .../camera/camera/example/lib/video_recording_example.dart | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index 87e1ddab07f7..7cc75104155f 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -164,6 +164,10 @@ class _VideoRecordingHomeState extends State try { await controller.initialize(); + if (!mounted) { + await controller.dispose(); + return; + } } on CameraException catch (e) { _showNotification('Camera error: ${e.description}', isError: true); } From 26600d0c98c3ef8ebfd31bf7bbdd39554e5017c4 Mon Sep 17 00:00:00 2001 From: Mairramer <50643541+Mairramer@users.noreply.github.com> Date: Mon, 25 May 2026 14:32:53 -0300 Subject: [PATCH 26/30] Update packages/camera/camera/example/lib/video_recording_example.dart Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- .../camera/camera/example/lib/video_recording_example.dart | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index 7cc75104155f..89d24087d96a 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -349,6 +349,10 @@ class _VideoRecordingHomeState extends State try { await playerController.initialize(); + if (!mounted) { + await playerController.dispose(); + return; + } await playerController.setLooping(true); await playerController.play(); } catch (e) { From 409434d444c3f18931aa557a3c3ab99b5e00ad35 Mon Sep 17 00:00:00 2001 From: Mairramer <50643541+Mairramer@users.noreply.github.com> Date: Mon, 25 May 2026 14:33:03 -0300 Subject: [PATCH 27/30] Update packages/camera/camera/example/lib/video_recording_example.dart Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- .../camera/camera/example/lib/video_recording_example.dart | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index 89d24087d96a..26b138db40b4 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -105,6 +105,9 @@ class _VideoRecordingHomeState extends State // SnackBar / Error messaging helper void _showNotification(String message, {bool isError = false}) { + if (!mounted) { + return; + } final isDark = widget.themeMode == ThemeMode.dark; ScaffoldMessenger.of(context).showSnackBar( SnackBar( From b2a8629faa5b45a1041a45fa18187afc7c09b12f Mon Sep 17 00:00:00 2001 From: Mairramer <50643541+Mairramer@users.noreply.github.com> Date: Mon, 25 May 2026 14:33:22 -0300 Subject: [PATCH 28/30] Update packages/camera/camera_windows/windows/capture_controller.cpp Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- packages/camera/camera_windows/windows/capture_controller.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/camera/camera_windows/windows/capture_controller.cpp b/packages/camera/camera_windows/windows/capture_controller.cpp index 6712ab025cb0..f5799adffc98 100644 --- a/packages/camera/camera_windows/windows/capture_controller.cpp +++ b/packages/camera/camera_windows/windows/capture_controller.cpp @@ -525,7 +525,8 @@ void CaptureControllerImpl::StartRecord(const std::string& file_path) { } size_t last_dot = file_path.find_last_of("."); - if (last_dot == std::string::npos) { + if (last_dot == std::string::npos || + (last_slash != std::string::npos && last_dot < last_slash)) { return OnRecordStarted(CameraResult::kError, "The output path has no extension."); } From 9aed89fa6f13cb9628a8ebbea04dda0cc9ebed59 Mon Sep 17 00:00:00 2001 From: Mairramer Date: Tue, 26 May 2026 09:10:44 -0300 Subject: [PATCH 29/30] fix: improve video path handling in example app and resolve AVAssetWriter initialization failure by deleting existing files on iOS --- .../example/lib/video_recording_example.dart | 32 ++++++++++++------- .../lib/src/camerax_library.g.dart | 15 +++++---- .../camera_avfoundation/DefaultCamera.swift | 8 ++++- 3 files changed, 36 insertions(+), 19 deletions(-) diff --git a/packages/camera/camera/example/lib/video_recording_example.dart b/packages/camera/camera/example/lib/video_recording_example.dart index 26b138db40b4..20edbc56427d 100644 --- a/packages/camera/camera/example/lib/video_recording_example.dart +++ b/packages/camera/camera/example/lib/video_recording_example.dart @@ -157,6 +157,12 @@ class _VideoRecordingHomeState extends State Future _initializeCameraController( CameraDescription description, ) async { + final CameraController? oldController = _controller; + if (oldController != null) { + _controller = null; + await oldController.dispose(); + } + final controller = CameraController( description, ResolutionPreset.high, @@ -183,18 +189,22 @@ class _VideoRecordingHomeState extends State /// Calculates the target custom output path where the video will be saved. Future _getDestinationPath() async { final timestamp = DateTime.now().millisecondsSinceEpoch.toString(); + final file = File(_customFileName); + + if (file.isAbsolute) { + return _customFileName; + } + + final String uniqueName = _customFileName.replaceFirst( + '.mp4', + '_$timestamp.mp4', + ); - // 1. Android // Although it is possible to use an absolute path like '/storage/emulated/0/Download/', // this is a fragile practice and may fail on many devices or Android versions due to // Scoped Storage restrictions. It is recommended to use path_provider to get a valid // and writable directory. if (Platform.isAndroid) { - final String uniqueName = _customFileName.replaceFirst( - '.mp4', - '_$timestamp.mp4', - ); - final Directory? externalDir = await getExternalStorageDirectory(); if (externalDir != null) { return '${externalDir.path}/$uniqueName'; @@ -204,9 +214,10 @@ class _VideoRecordingHomeState extends State return '${fallbackDir.path}/$uniqueName'; } - // 3. iOS (Save to "On My iPhone" visible app folder) - // Note: Ensure 'LSSupportsOpeningDocumentsInPlace' and 'UISupportsDocumentBrowser' + // (Save to "On My iPhone" visible app folder) + // Ensure 'LSSupportsOpeningDocumentsInPlace' and 'UISupportsDocumentBrowser' // are set to true in your ios/Runner/Info.plist to make this folder visible in the Files app. + if (Platform.isIOS) { final Directory appDocDir = await getApplicationDocumentsDirectory(); @@ -218,13 +229,12 @@ class _VideoRecordingHomeState extends State destinationDir.createSync(recursive: true); } - final filePath = '${destinationDir.path}/video_$timestamp.mp4'; - return filePath; + return '${destinationDir.path}/$uniqueName'; } // Default fallback general path final Directory fallbackDir = await getApplicationDocumentsDirectory(); - return '${fallbackDir.path}/video_$timestamp.mp4'; + return '${fallbackDir.path}/$uniqueName'; } Future _startRecording() async { diff --git a/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart b/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart index 30b5793b6844..b71b22024ae5 100644 --- a/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart +++ b/packages/camera/camera_android_camerax/lib/src/camerax_library.g.dart @@ -4590,13 +4590,14 @@ class ImageCapture extends UseCase { pigeonChannelCodec, binaryMessenger: pigeonVar_binaryMessenger, ); - final Future pigeonVar_sendFuture = pigeonVar_channel - .send([ - pigeonVar_instanceIdentifier, - resolutionSelector, - targetRotation, - flashMode, - ]); + final Future pigeonVar_sendFuture = pigeonVar_channel.send( + [ + pigeonVar_instanceIdentifier, + resolutionSelector, + targetRotation, + flashMode, + ], + ); () async { final pigeonVar_replyList = await pigeonVar_sendFuture as List?; diff --git a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift index f019baac2a0f..76de7d470459 100644 --- a/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift +++ b/packages/camera/camera_avfoundation/ios/camera_avfoundation/Sources/camera_avfoundation/DefaultCamera.swift @@ -532,7 +532,6 @@ final class DefaultCamera: NSObject, Camera { private func setUpVideoRecording( videoOutputPath: String?, completion: @escaping (Result) -> Void ) { - let videoRecordingPath: String if let videoOutputPath = videoOutputPath { do { try validateOutputPath(videoOutputPath) @@ -608,6 +607,13 @@ final class DefaultCamera: NSObject, Camera { message: "Invalid video extension. Supported: \(validExtensions.joined(separator: ", "))", details: nil) } + + // AVAssetWriter will fail to initialize if a file already exists at the destination path. + // Delete any existing file to ensure consistent behavior with Android (which overwrites + // automatically) and prevent recording failures when reusing a custom path. + if FileManager.default.fileExists(atPath: path) { + try FileManager.default.removeItem(atPath: path) + } } private func setupWriter(forPath path: String) -> Bool { From 490572002f4ce58a3230426f7f9c63561842118b Mon Sep 17 00:00:00 2001 From: Mairramer Date: Tue, 26 May 2026 09:43:13 -0300 Subject: [PATCH 30/30] feat: add support for custom video output path in video recording across camera packages --- packages/camera/camera/CHANGELOG.md | 2 +- packages/camera/camera/pubspec.yaml | 2 +- packages/camera/camera_android/CHANGELOG.md | 2 +- packages/camera/camera_android/pubspec.yaml | 2 +- packages/camera/camera_android_camerax/CHANGELOG.md | 3 ++- packages/camera/camera_android_camerax/pubspec.yaml | 2 +- packages/camera/camera_avfoundation/CHANGELOG.md | 3 ++- packages/camera/camera_avfoundation/pubspec.yaml | 2 +- packages/camera/camera_windows/CHANGELOG.md | 3 ++- packages/camera/camera_windows/pubspec.yaml | 2 +- 10 files changed, 13 insertions(+), 10 deletions(-) diff --git a/packages/camera/camera/CHANGELOG.md b/packages/camera/camera/CHANGELOG.md index 6d11c54c1e49..2fa09eaf79c2 100644 --- a/packages/camera/camera/CHANGELOG.md +++ b/packages/camera/camera/CHANGELOG.md @@ -1,4 +1,4 @@ -## 0.12.0+2 +## 0.13.0 * Adds `videoOutputPath` support to `startVideoRecording`. * Updates minimum supported SDK version to Flutter 3.38/Dart 3.10. diff --git a/packages/camera/camera/pubspec.yaml b/packages/camera/camera/pubspec.yaml index 0d54323af49c..eae0a04481aa 100644 --- a/packages/camera/camera/pubspec.yaml +++ b/packages/camera/camera/pubspec.yaml @@ -4,7 +4,7 @@ description: A Flutter plugin for controlling the camera. Supports previewing Dart. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.12.0+2 +version: 0.13.0 environment: sdk: ^3.10.0 diff --git a/packages/camera/camera_android/CHANGELOG.md b/packages/camera/camera_android/CHANGELOG.md index b90ed3a6526a..a33d15ac0fca 100644 --- a/packages/camera/camera_android/CHANGELOG.md +++ b/packages/camera/camera_android/CHANGELOG.md @@ -1,4 +1,4 @@ -## 0.10.10+17 +## 0.10.11 * Adds support for custom video output path in video recording. * Updates minimum supported SDK version to Flutter 3.38/Dart 3.10. diff --git a/packages/camera/camera_android/pubspec.yaml b/packages/camera/camera_android/pubspec.yaml index 0a5b3ea326ea..319177ba281a 100644 --- a/packages/camera/camera_android/pubspec.yaml +++ b/packages/camera/camera_android/pubspec.yaml @@ -3,7 +3,7 @@ description: Android implementation of the camera plugin. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera_android issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.10.10+17 +version: 0.10.11 environment: sdk: ^3.10.0 diff --git a/packages/camera/camera_android_camerax/CHANGELOG.md b/packages/camera/camera_android_camerax/CHANGELOG.md index 954d384e8c86..665f73bec626 100644 --- a/packages/camera/camera_android_camerax/CHANGELOG.md +++ b/packages/camera/camera_android_camerax/CHANGELOG.md @@ -1,5 +1,6 @@ -## NEXT +## 0.8.0 +* Adds support for custom video output path in video recording. * Updates minimum supported SDK version to Flutter 3.38/Dart 3.10. ## 0.7.2 diff --git a/packages/camera/camera_android_camerax/pubspec.yaml b/packages/camera/camera_android_camerax/pubspec.yaml index e05aa2dc336d..ef3d2f9c86fa 100644 --- a/packages/camera/camera_android_camerax/pubspec.yaml +++ b/packages/camera/camera_android_camerax/pubspec.yaml @@ -2,7 +2,7 @@ name: camera_android_camerax description: Android implementation of the camera plugin using the CameraX library. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera_android_camerax issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.7.2 +version: 0.8.0 environment: sdk: ^3.10.0 diff --git a/packages/camera/camera_avfoundation/CHANGELOG.md b/packages/camera/camera_avfoundation/CHANGELOG.md index f4f30dd13301..4ba31e99b074 100644 --- a/packages/camera/camera_avfoundation/CHANGELOG.md +++ b/packages/camera/camera_avfoundation/CHANGELOG.md @@ -1,5 +1,6 @@ -## NEXT +## 0.11.0 +* Adds support for custom video output path in video recording. * Updates minimum supported SDK version to Flutter 3.38/Dart 3.10. ## 0.10.1 diff --git a/packages/camera/camera_avfoundation/pubspec.yaml b/packages/camera/camera_avfoundation/pubspec.yaml index b50f7f8e318d..30a98f20df23 100644 --- a/packages/camera/camera_avfoundation/pubspec.yaml +++ b/packages/camera/camera_avfoundation/pubspec.yaml @@ -2,7 +2,7 @@ name: camera_avfoundation description: iOS implementation of the camera plugin. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera_avfoundation issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.10.1 +version: 0.11.0 environment: sdk: ^3.10.0 diff --git a/packages/camera/camera_windows/CHANGELOG.md b/packages/camera/camera_windows/CHANGELOG.md index 57f56ceaf788..87e0bc5f664b 100644 --- a/packages/camera/camera_windows/CHANGELOG.md +++ b/packages/camera/camera_windows/CHANGELOG.md @@ -1,5 +1,6 @@ -## NEXT +## 0.3.0 +* Adds support for custom video output path in video recording. * Updates minimum supported SDK version to Flutter 3.38/Dart 3.10. ## 0.2.6+4 diff --git a/packages/camera/camera_windows/pubspec.yaml b/packages/camera/camera_windows/pubspec.yaml index 8a7fa68e0bd9..cf74655e5cf8 100644 --- a/packages/camera/camera_windows/pubspec.yaml +++ b/packages/camera/camera_windows/pubspec.yaml @@ -2,7 +2,7 @@ name: camera_windows description: A Flutter plugin for getting information about and controlling the camera on Windows. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera_windows issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.2.6+4 +version: 0.3.0 environment: sdk: ^3.10.0