1// Signature format: 4.0 2package androidx.camera.core { 3 4 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 public interface Camera { 10 method public androidx.camera.core.CameraControl getCameraControl(); 11 method public androidx.camera.core.CameraInfo getCameraInfo(); 12 } 13 14 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.Void!> setLinearZoom(@FloatRange(from=0.0f, to=1.0f) float); 18 method public com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> setZoomRatio(float); 19 method public com.google.common.util.concurrent.ListenableFuture<androidx.camera.core.FocusMeteringResult!> startFocusAndMetering(androidx.camera.core.FocusMeteringAction); 20 } 21 22 public static final class CameraControl.OperationCanceledException extends java.lang.Exception { 23 } 24 25 public interface CameraInfo { 26 method public int getSensorRotationDegrees(); 27 method public int getSensorRotationDegrees(int); 28 method public androidx.lifecycle.LiveData<java.lang.Integer!> getTorchState(); 29 method public androidx.lifecycle.LiveData<androidx.camera.core.ZoomState!> getZoomState(); 30 method public boolean hasFlashUnit(); 31 } 32 33 public final class CameraInfoUnavailableException extends java.lang.Exception { 34 } 35 36 public final class CameraSelector { 37 field public static final androidx.camera.core.CameraSelector DEFAULT_BACK_CAMERA; 38 field public static final androidx.camera.core.CameraSelector DEFAULT_FRONT_CAMERA; 39 field public static final int LENS_FACING_BACK = 1; // 0x1 40 field public static final int LENS_FACING_FRONT = 0; // 0x0 41 } 42 43 public static final class CameraSelector.Builder { 44 ctor public CameraSelector.Builder(); 45 method public androidx.camera.core.CameraSelector build(); 46 method public androidx.camera.core.CameraSelector.Builder requireLensFacing(int); 47 } 48 49 public final class CameraXConfig { 50 } 51 52 public static final class CameraXConfig.Builder { 53 method public androidx.camera.core.CameraXConfig build(); 54 method public static androidx.camera.core.CameraXConfig.Builder fromConfig(androidx.camera.core.CameraXConfig); 55 method public androidx.camera.core.CameraXConfig.Builder setCameraExecutor(java.util.concurrent.Executor); 56 } 57 58 public static interface CameraXConfig.Provider { 59 method public androidx.camera.core.CameraXConfig getCameraXConfig(); 60 } 61 62 public final class DisplayOrientedMeteringPointFactory extends androidx.camera.core.MeteringPointFactory { 63 ctor public DisplayOrientedMeteringPointFactory(android.view.Display, androidx.camera.core.CameraSelector, float, float); 64 } 65 66 @experimental.Experimental @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.CLASS) public @interface ExperimentalGetImage { 67 } 68 69 public interface ExtendableBuilder<T> { 70 method public T build(); 71 } 72 73 public final class FocusMeteringAction { 74 method public long getAutoCancelDurationInMillis(); 75 method public java.util.List<androidx.camera.core.MeteringPoint!> getMeteringPointsAe(); 76 method public java.util.List<androidx.camera.core.MeteringPoint!> getMeteringPointsAf(); 77 method public java.util.List<androidx.camera.core.MeteringPoint!> getMeteringPointsAwb(); 78 method public boolean isAutoCancelEnabled(); 79 field public static final int FLAG_AE = 2; // 0x2 80 field public static final int FLAG_AF = 1; // 0x1 81 field public static final int FLAG_AWB = 4; // 0x4 82 } 83 84 public static class FocusMeteringAction.Builder { 85 ctor public FocusMeteringAction.Builder(androidx.camera.core.MeteringPoint); 86 ctor public FocusMeteringAction.Builder(androidx.camera.core.MeteringPoint, int); 87 method public androidx.camera.core.FocusMeteringAction.Builder addPoint(androidx.camera.core.MeteringPoint); 88 method public androidx.camera.core.FocusMeteringAction.Builder addPoint(androidx.camera.core.MeteringPoint, int); 89 method public androidx.camera.core.FocusMeteringAction build(); 90 method public androidx.camera.core.FocusMeteringAction.Builder disableAutoCancel(); 91 method public androidx.camera.core.FocusMeteringAction.Builder setAutoCancelDuration(@IntRange(from=1) long, java.util.concurrent.TimeUnit); 92 } 93 94 public final class FocusMeteringResult { 95 method public boolean isFocusSuccessful(); 96 } 97 98 public final class ImageAnalysis extends androidx.camera.core.UseCase { 99 method public void clearAnalyzer(); 100 method public int getBackpressureStrategy(); 101 method public int getImageQueueDepth(); 102 method public int getTargetRotation(); 103 method public void setAnalyzer(java.util.concurrent.Executor, androidx.camera.core.ImageAnalysis.Analyzer); 104 method public void setTargetRotation(int); 105 field public static final int STRATEGY_BLOCK_PRODUCER = 1; // 0x1 106 field public static final int STRATEGY_KEEP_ONLY_LATEST = 0; // 0x0 107 } 108 109 public static interface ImageAnalysis.Analyzer { 110 method public void analyze(androidx.camera.core.ImageProxy); 111 } 112 113 public static final class ImageAnalysis.Builder implements androidx.camera.core.ExtendableBuilder<androidx.camera.core.ImageAnalysis> { 114 ctor public ImageAnalysis.Builder(); 115 method public androidx.camera.core.ImageAnalysis build(); 116 method public androidx.camera.core.ImageAnalysis.Builder setBackgroundExecutor(java.util.concurrent.Executor); 117 method public androidx.camera.core.ImageAnalysis.Builder setBackpressureStrategy(int); 118 method public androidx.camera.core.ImageAnalysis.Builder setImageQueueDepth(int); 119 method public androidx.camera.core.ImageAnalysis.Builder setTargetAspectRatio(int); 120 method public androidx.camera.core.ImageAnalysis.Builder setTargetName(String); 121 method public androidx.camera.core.ImageAnalysis.Builder setTargetResolution(android.util.Size); 122 method public androidx.camera.core.ImageAnalysis.Builder setTargetRotation(int); 123 } 124 125 public final class ImageCapture extends androidx.camera.core.UseCase { 126 method public int getCaptureMode(); 127 method public int getFlashMode(); 128 method public int getTargetRotation(); 129 method public void setCropAspectRatio(android.util.Rational); 130 method public void setFlashMode(int); 131 method public void setTargetRotation(int); 132 method public void takePicture(androidx.camera.core.ImageCapture.OutputFileOptions, java.util.concurrent.Executor, androidx.camera.core.ImageCapture.OnImageSavedCallback); 133 method public void takePicture(java.util.concurrent.Executor, androidx.camera.core.ImageCapture.OnImageCapturedCallback); 134 field public static final int CAPTURE_MODE_MAXIMIZE_QUALITY = 0; // 0x0 135 field public static final int CAPTURE_MODE_MINIMIZE_LATENCY = 1; // 0x1 136 field public static final int ERROR_CAMERA_CLOSED = 3; // 0x3 137 field public static final int ERROR_CAPTURE_FAILED = 2; // 0x2 138 field public static final int ERROR_FILE_IO = 1; // 0x1 139 field public static final int ERROR_INVALID_CAMERA = 4; // 0x4 140 field public static final int ERROR_UNKNOWN = 0; // 0x0 141 field public static final int FLASH_MODE_AUTO = 0; // 0x0 142 field public static final int FLASH_MODE_OFF = 2; // 0x2 143 field public static final int FLASH_MODE_ON = 1; // 0x1 144 } 145 146 public static final class ImageCapture.Builder implements androidx.camera.core.ExtendableBuilder<androidx.camera.core.ImageCapture> { 147 ctor public ImageCapture.Builder(); 148 method public androidx.camera.core.ImageCapture build(); 149 method public androidx.camera.core.ImageCapture.Builder setCaptureMode(int); 150 method public androidx.camera.core.ImageCapture.Builder setFlashMode(int); 151 method public androidx.camera.core.ImageCapture.Builder setIoExecutor(java.util.concurrent.Executor); 152 method public androidx.camera.core.ImageCapture.Builder setTargetAspectRatio(int); 153 method public androidx.camera.core.ImageCapture.Builder setTargetName(String); 154 method public androidx.camera.core.ImageCapture.Builder setTargetResolution(android.util.Size); 155 method public androidx.camera.core.ImageCapture.Builder setTargetRotation(int); 156 } 157 158 public static final class ImageCapture.Metadata { 159 ctor public ImageCapture.Metadata(); 160 method public android.location.Location? getLocation(); 161 method public boolean isReversedHorizontal(); 162 method public boolean isReversedVertical(); 163 method public void setLocation(android.location.Location?); 164 method public void setReversedHorizontal(boolean); 165 method public void setReversedVertical(boolean); 166 } 167 168 public abstract static class ImageCapture.OnImageCapturedCallback { 169 ctor public ImageCapture.OnImageCapturedCallback(); 170 method public void onCaptureSuccess(androidx.camera.core.ImageProxy); 171 method public void onError(androidx.camera.core.ImageCaptureException); 172 } 173 174 public static interface ImageCapture.OnImageSavedCallback { 175 method public void onError(androidx.camera.core.ImageCaptureException); 176 method public void onImageSaved(androidx.camera.core.ImageCapture.OutputFileResults); 177 } 178 179 public static final class ImageCapture.OutputFileOptions { 180 } 181 182 public static final class ImageCapture.OutputFileOptions.Builder { 183 ctor public ImageCapture.OutputFileOptions.Builder(android.content.ContentResolver, android.net.Uri, android.content.ContentValues); 184 ctor public ImageCapture.OutputFileOptions.Builder(java.io.File); 185 ctor public ImageCapture.OutputFileOptions.Builder(java.io.OutputStream); 186 method public androidx.camera.core.ImageCapture.OutputFileOptions build(); 187 method public androidx.camera.core.ImageCapture.OutputFileOptions.Builder setMetadata(androidx.camera.core.ImageCapture.Metadata); 188 } 189 190 public static class ImageCapture.OutputFileResults { 191 method public android.net.Uri? getSavedUri(); 192 } 193 194 public class ImageCaptureException extends java.lang.Exception { 195 ctor public ImageCaptureException(int, String, Throwable?); 196 method public int getImageCaptureError(); 197 } 198 199 public interface ImageInfo { 200 method public int getRotationDegrees(); 201 method public long getTimestamp(); 202 } 203 204 public interface ImageProxy extends java.lang.AutoCloseable { 205 method public void close(); 206 method public android.graphics.Rect getCropRect(); 207 method public int getFormat(); 208 method public int getHeight(); 209 method @androidx.camera.core.ExperimentalGetImage public android.media.Image? getImage(); 210 method public androidx.camera.core.ImageInfo getImageInfo(); 211 method public androidx.camera.core.ImageProxy.PlaneProxy![] getPlanes(); 212 method public int getWidth(); 213 method public void setCropRect(android.graphics.Rect?); 214 } 215 216 public static interface ImageProxy.PlaneProxy { 217 method public java.nio.ByteBuffer getBuffer(); 218 method public int getPixelStride(); 219 method public int getRowStride(); 220 } 221 222 public class MeteringPoint { 223 method public float getSize(); 224 } 225 226 public abstract class MeteringPointFactory { 227 method public final androidx.camera.core.MeteringPoint createPoint(float, float); 228 method public final androidx.camera.core.MeteringPoint createPoint(float, float, float); 229 method public static float getDefaultPointSize(); 230 } 231 232 public final class Preview extends androidx.camera.core.UseCase { 233 method public int getTargetRotation(); 234 method @UiThread public void setSurfaceProvider(androidx.camera.core.Preview.SurfaceProvider?); 235 method @UiThread public void setSurfaceProvider(java.util.concurrent.Executor, androidx.camera.core.Preview.SurfaceProvider?); 236 } 237 238 public static final class Preview.Builder implements androidx.camera.core.ExtendableBuilder<androidx.camera.core.Preview> { 239 ctor public Preview.Builder(); 240 method public androidx.camera.core.Preview build(); 241 method public androidx.camera.core.Preview.Builder setTargetAspectRatio(int); 242 method public androidx.camera.core.Preview.Builder setTargetName(String); 243 method public androidx.camera.core.Preview.Builder setTargetResolution(android.util.Size); 244 method public androidx.camera.core.Preview.Builder setTargetRotation(int); 245 } 246 247 public static interface Preview.SurfaceProvider { 248 method public void onSurfaceRequested(androidx.camera.core.SurfaceRequest); 249 } 250 251 public class SurfaceOrientedMeteringPointFactory extends androidx.camera.core.MeteringPointFactory { 252 ctor public SurfaceOrientedMeteringPointFactory(float, float); 253 ctor public SurfaceOrientedMeteringPointFactory(float, float, androidx.camera.core.UseCase); 254 } 255 256 public final class SurfaceRequest { 257 method public void addRequestCancellationListener(java.util.concurrent.Executor, Runnable); 258 method public android.util.Size getResolution(); 259 method public void provideSurface(android.view.Surface, java.util.concurrent.Executor, androidx.core.util.Consumer<androidx.camera.core.SurfaceRequest.Result!>); 260 method public boolean willNotProvideSurface(); 261 } 262 263 @com.google.auto.value.AutoValue public abstract static class SurfaceRequest.Result { 264 method public abstract int getResultCode(); 265 method public abstract android.view.Surface getSurface(); 266 field public static final int RESULT_INVALID_SURFACE = 2; // 0x2 267 field public static final int RESULT_REQUEST_CANCELLED = 1; // 0x1 268 field public static final int RESULT_SURFACE_ALREADY_PROVIDED = 3; // 0x3 269 field public static final int RESULT_SURFACE_USED_SUCCESSFULLY = 0; // 0x0 270 field public static final int RESULT_WILL_NOT_PROVIDE_SURFACE = 4; // 0x4 271 } 272 273 public class TorchState { 274 field public static final int OFF = 0; // 0x0 275 field public static final int ON = 1; // 0x1 276 } 277 278 public abstract class UseCase { 279 } 280 281 public interface ZoomState { 282 method public float getLinearZoom(); 283 method public float getMaxZoomRatio(); 284 method public float getMinZoomRatio(); 285 method public float getZoomRatio(); 286 } 287 288} 289 290