1// Signature format: 4.0 2package androidx.camera.core { 3 4 @RequiresApi(21) public class AspectRatio { 5 field public static final int RATIO_16_9 = 1; // 0x1 6 field public static final int RATIO_4_3 = 0; // 0x0 7 } 8 9 @RequiresApi(21) public interface Camera { 10 method public androidx.camera.core.CameraControl getCameraControl(); 11 method public androidx.camera.core.CameraInfo getCameraInfo(); 12 } 13 14 @RequiresApi(21) public interface CameraControl { 15 method public com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> cancelFocusAndMetering(); 16 method public com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> enableTorch(boolean); 17 method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer!> setExposureCompensationIndex(int); 18 method public com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> setLinearZoom(@FloatRange(from=0.0f, to=1.0f) float); 19 method public com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> setZoomRatio(float); 20 method public com.google.common.util.concurrent.ListenableFuture<androidx.camera.core.FocusMeteringResult!> startFocusAndMetering(androidx.camera.core.FocusMeteringAction); 21 } 22 23 public static final class CameraControl.OperationCanceledException extends java.lang.Exception { 24 } 25 26 @RequiresApi(21) public interface CameraFilter { 27 method public java.util.List<androidx.camera.core.CameraInfo!> filter(java.util.List<androidx.camera.core.CameraInfo!>); 28 } 29 30 @RequiresApi(21) public interface CameraInfo { 31 method public androidx.camera.core.CameraSelector getCameraSelector(); 32 method public androidx.lifecycle.LiveData<androidx.camera.core.CameraState!> getCameraState(); 33 method public androidx.camera.core.ExposureState getExposureState(); 34 method public int getSensorRotationDegrees(); 35 method public int getSensorRotationDegrees(int); 36 method public androidx.lifecycle.LiveData<java.lang.Integer!> getTorchState(); 37 method public androidx.lifecycle.LiveData<androidx.camera.core.ZoomState!> getZoomState(); 38 method public boolean hasFlashUnit(); 39 method public default boolean isFocusMeteringSupported(androidx.camera.core.FocusMeteringAction); 40 method @androidx.camera.core.ExperimentalZeroShutterLag public default boolean isZslSupported(); 41 } 42 43 @RequiresApi(21) public final class CameraInfoUnavailableException extends java.lang.Exception { 44 } 45 46 @RequiresApi(21) public interface CameraProvider { 47 method public java.util.List<androidx.camera.core.CameraInfo!> getAvailableCameraInfos(); 48 method public boolean hasCamera(androidx.camera.core.CameraSelector) throws androidx.camera.core.CameraInfoUnavailableException; 49 } 50 51 @RequiresApi(21) public final class CameraSelector { 52 method public java.util.List<androidx.camera.core.CameraInfo!> filter(java.util.List<androidx.camera.core.CameraInfo!>); 53 field public static final androidx.camera.core.CameraSelector DEFAULT_BACK_CAMERA; 54 field public static final androidx.camera.core.CameraSelector DEFAULT_FRONT_CAMERA; 55 field public static final int LENS_FACING_BACK = 1; // 0x1 56 field public static final int LENS_FACING_FRONT = 0; // 0x0 57 } 58 59 public static final class CameraSelector.Builder { 60 ctor public CameraSelector.Builder(); 61 method public androidx.camera.core.CameraSelector.Builder addCameraFilter(androidx.camera.core.CameraFilter); 62 method public androidx.camera.core.CameraSelector build(); 63 method public androidx.camera.core.CameraSelector.Builder requireLensFacing(int); 64 } 65 66 @RequiresApi(21) @com.google.auto.value.AutoValue public abstract class CameraState { 67 ctor public CameraState(); 68 method public static androidx.camera.core.CameraState create(androidx.camera.core.CameraState.Type); 69 method public static androidx.camera.core.CameraState create(androidx.camera.core.CameraState.Type, androidx.camera.core.CameraState.StateError?); 70 method public abstract androidx.camera.core.CameraState.StateError? getError(); 71 method public abstract androidx.camera.core.CameraState.Type getType(); 72 field public static final int ERROR_CAMERA_DISABLED = 5; // 0x5 73 field public static final int ERROR_CAMERA_FATAL_ERROR = 6; // 0x6 74 field public static final int ERROR_CAMERA_IN_USE = 2; // 0x2 75 field public static final int ERROR_DO_NOT_DISTURB_MODE_ENABLED = 7; // 0x7 76 field public static final int ERROR_MAX_CAMERAS_IN_USE = 1; // 0x1 77 field public static final int ERROR_OTHER_RECOVERABLE_ERROR = 3; // 0x3 78 field public static final int ERROR_STREAM_CONFIG = 4; // 0x4 79 } 80 81 public enum CameraState.ErrorType { 82 enum_constant public static final androidx.camera.core.CameraState.ErrorType CRITICAL; 83 enum_constant public static final androidx.camera.core.CameraState.ErrorType RECOVERABLE; 84 } 85 86 @com.google.auto.value.AutoValue public abstract static class CameraState.StateError { 87 ctor public CameraState.StateError(); 88 method public static androidx.camera.core.CameraState.StateError create(int); 89 method public static androidx.camera.core.CameraState.StateError create(int, Throwable?); 90 method public abstract Throwable? getCause(); 91 method public abstract int getCode(); 92 method public androidx.camera.core.CameraState.ErrorType getType(); 93 } 94 95 public enum CameraState.Type { 96 enum_constant public static final androidx.camera.core.CameraState.Type CLOSED; 97 enum_constant public static final androidx.camera.core.CameraState.Type CLOSING; 98 enum_constant public static final androidx.camera.core.CameraState.Type OPEN; 99 enum_constant public static final androidx.camera.core.CameraState.Type OPENING; 100 enum_constant public static final androidx.camera.core.CameraState.Type PENDING_OPEN; 101 } 102 103 @RequiresApi(21) public class CameraUnavailableException extends java.lang.Exception { 104 ctor public CameraUnavailableException(int); 105 ctor public CameraUnavailableException(int, String?); 106 ctor public CameraUnavailableException(int, String?, Throwable?); 107 ctor public CameraUnavailableException(int, Throwable?); 108 method public int getReason(); 109 field public static final int CAMERA_DISABLED = 1; // 0x1 110 field public static final int CAMERA_DISCONNECTED = 2; // 0x2 111 field public static final int CAMERA_ERROR = 3; // 0x3 112 field public static final int CAMERA_IN_USE = 4; // 0x4 113 field public static final int CAMERA_MAX_IN_USE = 5; // 0x5 114 field public static final int CAMERA_UNAVAILABLE_DO_NOT_DISTURB = 6; // 0x6 115 field public static final int CAMERA_UNKNOWN_ERROR = 0; // 0x0 116 } 117 118 @RequiresApi(21) public final class CameraXConfig { 119 method public androidx.camera.core.CameraSelector? getAvailableCamerasLimiter(androidx.camera.core.CameraSelector?); 120 method public java.util.concurrent.Executor? getCameraExecutor(java.util.concurrent.Executor?); 121 method public int getMinimumLoggingLevel(); 122 method public android.os.Handler? getSchedulerHandler(android.os.Handler?); 123 } 124 125 public static final class CameraXConfig.Builder { 126 method public androidx.camera.core.CameraXConfig build(); 127 method public static androidx.camera.core.CameraXConfig.Builder fromConfig(androidx.camera.core.CameraXConfig); 128 method public androidx.camera.core.CameraXConfig.Builder setAvailableCamerasLimiter(androidx.camera.core.CameraSelector); 129 method public androidx.camera.core.CameraXConfig.Builder setCameraExecutor(java.util.concurrent.Executor); 130 method public androidx.camera.core.CameraXConfig.Builder setMinimumLoggingLevel(@IntRange(from=android.util.Log.DEBUG, to=android.util.Log.ERROR) int); 131 method public androidx.camera.core.CameraXConfig.Builder setSchedulerHandler(android.os.Handler); 132 } 133 134 public static interface CameraXConfig.Provider { 135 method public androidx.camera.core.CameraXConfig getCameraXConfig(); 136 } 137 138 @RequiresApi(21) public final class DisplayOrientedMeteringPointFactory extends androidx.camera.core.MeteringPointFactory { 139 ctor public DisplayOrientedMeteringPointFactory(android.view.Display, androidx.camera.core.CameraInfo, float, float); 140 } 141 142 @RequiresApi(21) @RequiresOptIn @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface ExperimentalGetImage { 143 } 144 145 @RequiresOptIn @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface ExperimentalUseCaseApi { 146 } 147 148 @RequiresOptIn @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface ExperimentalZeroShutterLag { 149 } 150 151 @RequiresApi(21) public interface ExposureState { 152 method public int getExposureCompensationIndex(); 153 method public android.util.Range<java.lang.Integer!> getExposureCompensationRange(); 154 method public android.util.Rational getExposureCompensationStep(); 155 method public boolean isExposureCompensationSupported(); 156 } 157 158 @RequiresApi(21) public interface ExtendableBuilder<T> { 159 method public T build(); 160 } 161 162 @RequiresApi(21) public final class FocusMeteringAction { 163 method public long getAutoCancelDurationInMillis(); 164 method public java.util.List<androidx.camera.core.MeteringPoint!> getMeteringPointsAe(); 165 method public java.util.List<androidx.camera.core.MeteringPoint!> getMeteringPointsAf(); 166 method public java.util.List<androidx.camera.core.MeteringPoint!> getMeteringPointsAwb(); 167 method public boolean isAutoCancelEnabled(); 168 field public static final int FLAG_AE = 2; // 0x2 169 field public static final int FLAG_AF = 1; // 0x1 170 field public static final int FLAG_AWB = 4; // 0x4 171 } 172 173 public static class FocusMeteringAction.Builder { 174 ctor public FocusMeteringAction.Builder(androidx.camera.core.MeteringPoint); 175 ctor public FocusMeteringAction.Builder(androidx.camera.core.MeteringPoint, int); 176 method public androidx.camera.core.FocusMeteringAction.Builder addPoint(androidx.camera.core.MeteringPoint); 177 method public androidx.camera.core.FocusMeteringAction.Builder addPoint(androidx.camera.core.MeteringPoint, int); 178 method public androidx.camera.core.FocusMeteringAction build(); 179 method public androidx.camera.core.FocusMeteringAction.Builder disableAutoCancel(); 180 method public androidx.camera.core.FocusMeteringAction.Builder setAutoCancelDuration(@IntRange(from=1) long, java.util.concurrent.TimeUnit); 181 } 182 183 @RequiresApi(21) public final class FocusMeteringResult { 184 method public boolean isFocusSuccessful(); 185 } 186 187 @RequiresApi(21) public final class ImageAnalysis extends androidx.camera.core.UseCase { 188 method public void clearAnalyzer(); 189 method @androidx.camera.core.ExperimentalUseCaseApi public java.util.concurrent.Executor? getBackgroundExecutor(); 190 method public int getBackpressureStrategy(); 191 method public int getImageQueueDepth(); 192 method public int getOutputImageFormat(); 193 method public androidx.camera.core.ResolutionInfo? getResolutionInfo(); 194 method public int getTargetRotation(); 195 method public boolean isOutputImageRotationEnabled(); 196 method public void setAnalyzer(java.util.concurrent.Executor, androidx.camera.core.ImageAnalysis.Analyzer); 197 method public void setTargetRotation(int); 198 field public static final int COORDINATE_SYSTEM_ORIGINAL = 0; // 0x0 199 field public static final int OUTPUT_IMAGE_FORMAT_RGBA_8888 = 2; // 0x2 200 field public static final int OUTPUT_IMAGE_FORMAT_YUV_420_888 = 1; // 0x1 201 field public static final int STRATEGY_BLOCK_PRODUCER = 1; // 0x1 202 field public static final int STRATEGY_KEEP_ONLY_LATEST = 0; // 0x0 203 } 204 205 public static interface ImageAnalysis.Analyzer { 206 method public void analyze(androidx.camera.core.ImageProxy); 207 method public default android.util.Size? getDefaultTargetResolution(); 208 method public default int getTargetCoordinateSystem(); 209 method public default void updateTransform(android.graphics.Matrix?); 210 } 211 212 public static final class ImageAnalysis.Builder implements androidx.camera.core.ExtendableBuilder<androidx.camera.core.ImageAnalysis> { 213 ctor public ImageAnalysis.Builder(); 214 method public androidx.camera.core.ImageAnalysis build(); 215 method public androidx.camera.core.ImageAnalysis.Builder setBackgroundExecutor(java.util.concurrent.Executor); 216 method public androidx.camera.core.ImageAnalysis.Builder setBackpressureStrategy(int); 217 method public androidx.camera.core.ImageAnalysis.Builder setImageQueueDepth(int); 218 method public androidx.camera.core.ImageAnalysis.Builder setOutputImageFormat(int); 219 method @RequiresApi(23) public androidx.camera.core.ImageAnalysis.Builder setOutputImageRotationEnabled(boolean); 220 method public androidx.camera.core.ImageAnalysis.Builder setTargetAspectRatio(int); 221 method public androidx.camera.core.ImageAnalysis.Builder setTargetName(String); 222 method public androidx.camera.core.ImageAnalysis.Builder setTargetResolution(android.util.Size); 223 method public androidx.camera.core.ImageAnalysis.Builder setTargetRotation(int); 224 } 225 226 @RequiresApi(21) public final class ImageCapture extends androidx.camera.core.UseCase { 227 method public int getCaptureMode(); 228 method public int getFlashMode(); 229 method @IntRange(from=1, to=100) public int getJpegQuality(); 230 method public androidx.camera.core.ResolutionInfo? getResolutionInfo(); 231 method public int getTargetRotation(); 232 method public void setCropAspectRatio(android.util.Rational); 233 method public void setFlashMode(int); 234 method public void setTargetRotation(int); 235 method public void takePicture(androidx.camera.core.ImageCapture.OutputFileOptions, java.util.concurrent.Executor, androidx.camera.core.ImageCapture.OnImageSavedCallback); 236 method public void takePicture(java.util.concurrent.Executor, androidx.camera.core.ImageCapture.OnImageCapturedCallback); 237 field public static final int CAPTURE_MODE_MAXIMIZE_QUALITY = 0; // 0x0 238 field public static final int CAPTURE_MODE_MINIMIZE_LATENCY = 1; // 0x1 239 field @androidx.camera.core.ExperimentalZeroShutterLag public static final int CAPTURE_MODE_ZERO_SHUTTER_LAG = 2; // 0x2 240 field public static final int ERROR_CAMERA_CLOSED = 3; // 0x3 241 field public static final int ERROR_CAPTURE_FAILED = 2; // 0x2 242 field public static final int ERROR_FILE_IO = 1; // 0x1 243 field public static final int ERROR_INVALID_CAMERA = 4; // 0x4 244 field public static final int ERROR_UNKNOWN = 0; // 0x0 245 field public static final int FLASH_MODE_AUTO = 0; // 0x0 246 field public static final int FLASH_MODE_OFF = 2; // 0x2 247 field public static final int FLASH_MODE_ON = 1; // 0x1 248 } 249 250 public static final class ImageCapture.Builder implements androidx.camera.core.ExtendableBuilder<androidx.camera.core.ImageCapture> { 251 ctor public ImageCapture.Builder(); 252 method public androidx.camera.core.ImageCapture build(); 253 method public androidx.camera.core.ImageCapture.Builder setCaptureMode(int); 254 method public androidx.camera.core.ImageCapture.Builder setFlashMode(int); 255 method public androidx.camera.core.ImageCapture.Builder setIoExecutor(java.util.concurrent.Executor); 256 method public androidx.camera.core.ImageCapture.Builder setJpegQuality(@IntRange(from=1, to=100) int); 257 method public androidx.camera.core.ImageCapture.Builder setTargetAspectRatio(int); 258 method public androidx.camera.core.ImageCapture.Builder setTargetName(String); 259 method public androidx.camera.core.ImageCapture.Builder setTargetResolution(android.util.Size); 260 method public androidx.camera.core.ImageCapture.Builder setTargetRotation(int); 261 } 262 263 public static final class ImageCapture.Metadata { 264 ctor public ImageCapture.Metadata(); 265 method public android.location.Location? getLocation(); 266 method public boolean isReversedHorizontal(); 267 method public boolean isReversedVertical(); 268 method public void setLocation(android.location.Location?); 269 method public void setReversedHorizontal(boolean); 270 method public void setReversedVertical(boolean); 271 } 272 273 public abstract static class ImageCapture.OnImageCapturedCallback { 274 ctor public ImageCapture.OnImageCapturedCallback(); 275 method public void onCaptureSuccess(androidx.camera.core.ImageProxy); 276 method public void onError(androidx.camera.core.ImageCaptureException); 277 } 278 279 public static interface ImageCapture.OnImageSavedCallback { 280 method public void onError(androidx.camera.core.ImageCaptureException); 281 method public void onImageSaved(androidx.camera.core.ImageCapture.OutputFileResults); 282 } 283 284 public static final class ImageCapture.OutputFileOptions { 285 } 286 287 public static final class ImageCapture.OutputFileOptions.Builder { 288 ctor public ImageCapture.OutputFileOptions.Builder(android.content.ContentResolver, android.net.Uri, android.content.ContentValues); 289 ctor public ImageCapture.OutputFileOptions.Builder(java.io.File); 290 ctor public ImageCapture.OutputFileOptions.Builder(java.io.OutputStream); 291 method public androidx.camera.core.ImageCapture.OutputFileOptions build(); 292 method public androidx.camera.core.ImageCapture.OutputFileOptions.Builder setMetadata(androidx.camera.core.ImageCapture.Metadata); 293 } 294 295 public static class ImageCapture.OutputFileResults { 296 method public android.net.Uri? getSavedUri(); 297 } 298 299 @RequiresApi(21) public class ImageCaptureException extends java.lang.Exception { 300 ctor public ImageCaptureException(int, String, Throwable?); 301 method public int getImageCaptureError(); 302 } 303 304 @RequiresApi(21) public interface ImageInfo { 305 method public int getRotationDegrees(); 306 method public default android.graphics.Matrix getSensorToBufferTransformMatrix(); 307 method public long getTimestamp(); 308 } 309 310 @RequiresApi(21) public interface ImageProxy extends java.lang.AutoCloseable { 311 method public void close(); 312 method public android.graphics.Rect getCropRect(); 313 method public int getFormat(); 314 method public int getHeight(); 315 method @androidx.camera.core.ExperimentalGetImage public android.media.Image? getImage(); 316 method public androidx.camera.core.ImageInfo getImageInfo(); 317 method public androidx.camera.core.ImageProxy.PlaneProxy![] getPlanes(); 318 method public int getWidth(); 319 method public void setCropRect(android.graphics.Rect?); 320 } 321 322 public static interface ImageProxy.PlaneProxy { 323 method public java.nio.ByteBuffer getBuffer(); 324 method public int getPixelStride(); 325 method public int getRowStride(); 326 } 327 328 @RequiresApi(21) public class InitializationException extends java.lang.Exception { 329 ctor public InitializationException(String?); 330 ctor public InitializationException(String?, Throwable?); 331 ctor public InitializationException(Throwable?); 332 } 333 334 @RequiresApi(21) public class MeteringPoint { 335 method public float getSize(); 336 } 337 338 @RequiresApi(21) public abstract class MeteringPointFactory { 339 method public final androidx.camera.core.MeteringPoint createPoint(float, float); 340 method public final androidx.camera.core.MeteringPoint createPoint(float, float, float); 341 method public static float getDefaultPointSize(); 342 } 343 344 @RequiresApi(21) public final class Preview extends androidx.camera.core.UseCase { 345 method public androidx.camera.core.ResolutionInfo? getResolutionInfo(); 346 method public int getTargetRotation(); 347 method @UiThread public void setSurfaceProvider(androidx.camera.core.Preview.SurfaceProvider?); 348 method @UiThread public void setSurfaceProvider(java.util.concurrent.Executor, androidx.camera.core.Preview.SurfaceProvider?); 349 method public void setTargetRotation(int); 350 } 351 352 public static final class Preview.Builder implements androidx.camera.core.ExtendableBuilder<androidx.camera.core.Preview> { 353 ctor public Preview.Builder(); 354 method public androidx.camera.core.Preview build(); 355 method public androidx.camera.core.Preview.Builder setTargetAspectRatio(int); 356 method public androidx.camera.core.Preview.Builder setTargetName(String); 357 method public androidx.camera.core.Preview.Builder setTargetResolution(android.util.Size); 358 method public androidx.camera.core.Preview.Builder setTargetRotation(int); 359 } 360 361 public static interface Preview.SurfaceProvider { 362 method public void onSurfaceRequested(androidx.camera.core.SurfaceRequest); 363 } 364 365 @RequiresApi(21) @com.google.auto.value.AutoValue public abstract class ResolutionInfo { 366 method public abstract android.graphics.Rect getCropRect(); 367 method public abstract android.util.Size getResolution(); 368 method public abstract int getRotationDegrees(); 369 } 370 371 @RequiresApi(21) public class SurfaceOrientedMeteringPointFactory extends androidx.camera.core.MeteringPointFactory { 372 ctor public SurfaceOrientedMeteringPointFactory(float, float); 373 ctor public SurfaceOrientedMeteringPointFactory(float, float, androidx.camera.core.UseCase); 374 } 375 376 @RequiresApi(21) public final class SurfaceRequest { 377 method public void addRequestCancellationListener(java.util.concurrent.Executor, Runnable); 378 method public void clearTransformationInfoListener(); 379 method public android.util.Size getResolution(); 380 method public void provideSurface(android.view.Surface, java.util.concurrent.Executor, androidx.core.util.Consumer<androidx.camera.core.SurfaceRequest.Result!>); 381 method public void setTransformationInfoListener(java.util.concurrent.Executor, androidx.camera.core.SurfaceRequest.TransformationInfoListener); 382 method public boolean willNotProvideSurface(); 383 } 384 385 @com.google.auto.value.AutoValue public abstract static class SurfaceRequest.Result { 386 method public abstract int getResultCode(); 387 method public abstract android.view.Surface getSurface(); 388 field public static final int RESULT_INVALID_SURFACE = 2; // 0x2 389 field public static final int RESULT_REQUEST_CANCELLED = 1; // 0x1 390 field public static final int RESULT_SURFACE_ALREADY_PROVIDED = 3; // 0x3 391 field public static final int RESULT_SURFACE_USED_SUCCESSFULLY = 0; // 0x0 392 field public static final int RESULT_WILL_NOT_PROVIDE_SURFACE = 4; // 0x4 393 } 394 395 @com.google.auto.value.AutoValue public abstract static class SurfaceRequest.TransformationInfo { 396 method public abstract android.graphics.Rect getCropRect(); 397 method public abstract int getRotationDegrees(); 398 } 399 400 public static interface SurfaceRequest.TransformationInfoListener { 401 method public void onTransformationInfoUpdate(androidx.camera.core.SurfaceRequest.TransformationInfo); 402 } 403 404 @RequiresApi(21) public class TorchState { 405 field public static final int OFF = 0; // 0x0 406 field public static final int ON = 1; // 0x1 407 } 408 409 @RequiresApi(21) public abstract class UseCase { 410 } 411 412 @RequiresApi(21) public final class UseCaseGroup { 413 method public java.util.List<androidx.camera.core.UseCase!> getUseCases(); 414 method public androidx.camera.core.ViewPort? getViewPort(); 415 } 416 417 public static final class UseCaseGroup.Builder { 418 ctor public UseCaseGroup.Builder(); 419 method public androidx.camera.core.UseCaseGroup.Builder addUseCase(androidx.camera.core.UseCase); 420 method public androidx.camera.core.UseCaseGroup build(); 421 method public androidx.camera.core.UseCaseGroup.Builder setViewPort(androidx.camera.core.ViewPort); 422 } 423 424 @RequiresApi(21) public final class ViewPort { 425 method public android.util.Rational getAspectRatio(); 426 method public int getLayoutDirection(); 427 method public int getRotation(); 428 method public int getScaleType(); 429 field public static final int FILL_CENTER = 1; // 0x1 430 field public static final int FILL_END = 2; // 0x2 431 field public static final int FILL_START = 0; // 0x0 432 field public static final int FIT = 3; // 0x3 433 } 434 435 public static final class ViewPort.Builder { 436 ctor public ViewPort.Builder(android.util.Rational, int); 437 method public androidx.camera.core.ViewPort build(); 438 method public androidx.camera.core.ViewPort.Builder setLayoutDirection(int); 439 method public androidx.camera.core.ViewPort.Builder setScaleType(int); 440 } 441 442 @RequiresApi(21) public interface ZoomState { 443 method public float getLinearZoom(); 444 method public float getMaxZoomRatio(); 445 method public float getMinZoomRatio(); 446 method public float getZoomRatio(); 447 } 448 449} 450 451