ImageCaptureExtender.smali
.class public abstract Landroidx/camera/extensions/ImageCaptureExtender;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/camera/extensions/ImageCaptureExtender$ImageCaptureAdapter;
}
.end annotation
# static fields
.field static final OPTION_IMAGE_CAPTURE_EXTENDER_MODE:Landroidx/camera/core/impl/Config$Option;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/camera/core/impl/Config$Option<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field private static final TAG:Ljava/lang/String; = "ImageCaptureExtender"
# instance fields
.field private mBuilder:Landroidx/camera/core/ImageCapture$Builder;
.field private mEffectMode:I
.field private mExtensionCameraFilter:Landroidx/camera/extensions/ExtensionCameraFilter;
.field private mImpl:Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;
# direct methods
.method static constructor <clinit>()V
.registers 2
.line 1
.line 2
const-string v0, "camerax.extensions.imageCaptureExtender.mode"
.line 3
.line 4
const-class v1, Ljava/lang/Integer;
.line 5
.line 6
.line 7
invoke-static {v0, v1}, Landroidx/camera/core/impl/Config$Option;->create(Ljava/lang/String;Ljava/lang/Class;)Landroidx/camera/core/impl/Config$Option;
.line 8
move-result-object v0
.line 9
.line 10
sput-object v0, Landroidx/camera/extensions/ImageCaptureExtender;->OPTION_IMAGE_CAPTURE_EXTENDER_MODE:Landroidx/camera/core/impl/Config$Option;
.line 11
return-void
.line 12
.line 13
.line 14
.line 15
.line 16
.line 17
.line 18
.line 19
.line 20
.line 21
.line 22
.line 23
.line 24
.end method
.method public constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static synthetic a(ILjava/util/Collection;)V
.registers 2
invoke-static {p0, p1}, Landroidx/camera/extensions/ImageCaptureExtender;->lambda$updateBuilderConfig$0(ILjava/util/Collection;)V
return-void
.end method
.method static checkPreviewEnabled(ILjava/util/Collection;)V
.registers 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(I",
"Ljava/util/Collection<",
"Landroidx/camera/core/UseCase;",
">;)V"
}
.end annotation
.line 1
.line 2
if-eqz p1, :cond_48
.line 3
.line 4
.line 5
invoke-interface {p1}, Ljava/util/Collection;->isEmpty()Z
.line 6
move-result v0
.line 7
.line 8
if-eqz v0, :cond_9
.line 9
goto :goto_48
.line 10
.line 11
.line 12
:cond_9
invoke-interface {p1}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
.line 13
move-result-object p1
.line 14
const/4 v0, 0x0
.line 15
move v1, v0
.line 16
move v2, v1
.line 17
.line 18
.line 19
:cond_10
:goto_10
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
.line 20
move-result v3
.line 21
.line 22
if-eqz v3, :cond_39
.line 23
.line 24
.line 25
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
.line 26
move-result-object v3
.line 27
.line 28
check-cast v3, Landroidx/camera/core/UseCase;
.line 29
.line 30
.line 31
invoke-virtual {v3}, Landroidx/camera/core/UseCase;->getCurrentConfig()Landroidx/camera/core/impl/UseCaseConfig;
.line 32
move-result-object v3
.line 33
.line 34
sget-object v4, Landroidx/camera/extensions/PreviewExtender;->OPTION_PREVIEW_EXTENDER_MODE:Landroidx/camera/core/impl/Config$Option;
.line 35
.line 36
.line 37
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
.line 38
move-result-object v5
.line 39
.line 40
.line 41
invoke-interface {v3, v4, v5}, Landroidx/camera/core/impl/ReadableConfig;->retrieveOption(Landroidx/camera/core/impl/Config$Option;Ljava/lang/Object;)Ljava/lang/Object;
.line 42
move-result-object v3
.line 43
.line 44
check-cast v3, Ljava/lang/Integer;
.line 45
.line 46
.line 47
invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
.line 48
move-result v3
.line 49
const/4 v4, 0x1
.line 50
.line 51
if-ne p0, v3, :cond_35
.line 52
move v2, v4
.line 53
goto :goto_10
.line 54
.line 55
:cond_35
if-eqz v3, :cond_10
.line 56
move v1, v4
.line 57
goto :goto_10
.line 58
.line 59
:cond_39
if-eqz v1, :cond_41
.line 60
.line 61
sget-object p0, Landroidx/camera/extensions/ExtensionsErrorListener$ExtensionsErrorCode;->MISMATCHED_EXTENSIONS_ENABLED:Landroidx/camera/extensions/ExtensionsErrorListener$ExtensionsErrorCode;
.line 62
.line 63
.line 64
invoke-static {p0}, Landroidx/camera/extensions/ExtensionsManager;->postExtensionsError(Landroidx/camera/extensions/ExtensionsErrorListener$ExtensionsErrorCode;)V
.line 65
goto :goto_48
.line 66
.line 67
:cond_41
if-nez v2, :cond_48
.line 68
.line 69
sget-object p0, Landroidx/camera/extensions/ExtensionsErrorListener$ExtensionsErrorCode;->PREVIEW_EXTENSION_REQUIRED:Landroidx/camera/extensions/ExtensionsErrorListener$ExtensionsErrorCode;
.line 70
.line 71
.line 72
invoke-static {p0}, Landroidx/camera/extensions/ExtensionsManager;->postExtensionsError(Landroidx/camera/extensions/ExtensionsErrorListener$ExtensionsErrorCode;)V
.line 73
:cond_48
:goto_48
return-void
.line 74
.line 75
.line 76
.line 77
.line 78
.line 79
.line 80
.line 81
.line 82
.line 83
.line 84
.line 85
.line 86
.line 87
.line 88
.line 89
.line 90
.line 91
.line 92
.line 93
.line 94
.line 95
.line 96
.line 97
.line 98
.line 99
.line 100
.line 101
.line 102
.line 103
.line 104
.line 105
.line 106
.line 107
.line 108
.line 109
.line 110
.line 111
.line 112
.line 113
.line 114
.line 115
.line 116
.line 117
.line 118
.line 119
.line 120
.line 121
.line 122
.line 123
.line 124
.line 125
.line 126
.line 127
.line 128
.line 129
.line 130
.line 131
.line 132
.line 133
.line 134
.line 135
.line 136
.line 137
.line 138
.line 139
.line 140
.line 141
.line 142
.line 143
.line 144
.line 145
.line 146
.line 147
.line 148
.line 149
.line 150
.line 151
.line 152
.line 153
.line 154
.line 155
.line 156
.line 157
.line 158
.line 159
.line 160
.line 161
.line 162
.line 163
.line 164
.line 165
.line 166
.line 167
.line 168
.line 169
.line 170
.line 171
.line 172
.line 173
.line 174
.line 175
.line 176
.line 177
.line 178
.line 179
.line 180
.line 181
.line 182
.line 183
.line 184
.line 185
.line 186
.line 187
.line 188
.line 189
.line 190
.line 191
.line 192
.line 193
.line 194
.line 195
.line 196
.line 197
.line 198
.line 199
.line 200
.line 201
.line 202
.line 203
.line 204
.line 205
.line 206
.line 207
.line 208
.line 209
.line 210
.line 211
.line 212
.line 213
.line 214
.line 215
.line 216
.line 217
.line 218
.line 219
.line 220
.line 221
.line 222
.line 223
.line 224
.line 225
.line 226
.line 227
.line 228
.line 229
.line 230
.line 231
.line 232
.line 233
.line 234
.line 235
.line 236
.line 237
.line 238
.line 239
.line 240
.line 241
.line 242
.line 243
.line 244
.line 245
.line 246
.line 247
.line 248
.line 249
.line 250
.line 251
.line 252
.line 253
.line 254
.line 255
.line 256
.line 257
.line 258
.line 259
.line 260
.line 261
.line 262
.line 263
.line 264
.line 265
.line 266
.line 267
.line 268
.line 269
.line 270
.line 271
.line 272
.line 273
.line 274
.line 275
.end method
.method private getCameraWithExtension(Landroidx/camera/core/CameraSelector;)Ljava/lang/String;
.registers 3
.param p1 # Landroidx/camera/core/CameraSelector;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/experimental/UseExperimental;
markerClass = Landroidx/camera/core/ExperimentalCameraFilter;
.end annotation
.line 1
.line 2
.line 3
invoke-static {p1}, Landroidx/camera/core/CameraSelector$Builder;->fromSelector(Landroidx/camera/core/CameraSelector;)Landroidx/camera/core/CameraSelector$Builder;
.line 4
move-result-object p1
.line 5
.line 6
iget-object v0, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mExtensionCameraFilter:Landroidx/camera/extensions/ExtensionCameraFilter;
.line 7
.line 8
.line 9
invoke-virtual {p1, v0}, Landroidx/camera/core/CameraSelector$Builder;->addCameraFilter(Landroidx/camera/core/CameraFilter;)Landroidx/camera/core/CameraSelector$Builder;
.line 10
.line 11
.line 12
invoke-virtual {p1}, Landroidx/camera/core/CameraSelector$Builder;->build()Landroidx/camera/core/CameraSelector;
.line 13
move-result-object p1
.line 14
.line 15
.line 16
invoke-static {p1}, Landroidx/camera/extensions/CameraUtil;->getCameraIdUnchecked(Landroidx/camera/core/CameraSelector;)Ljava/lang/String;
.line 17
move-result-object p1
.line 18
return-object p1
.line 19
.line 20
.line 21
.line 22
.line 23
.line 24
.line 25
.line 26
.line 27
.end method
.method public static getSupportedResolutions(Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;)Ljava/util/List;
.registers 3
.param p0 # Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;",
")",
"Ljava/util/List<",
"Landroid/util/Pair<",
"Ljava/lang/Integer;",
"[",
"Landroid/util/Size;",
">;>;"
}
.end annotation
.line 1
.line 2
.line 3
invoke-static {}, Landroidx/camera/extensions/ExtensionVersion;->getRuntimeVersion()Landroidx/camera/extensions/Version;
.line 4
move-result-object v0
.line 5
.line 6
sget-object v1, Landroidx/camera/extensions/Version;->VERSION_1_1:Landroidx/camera/extensions/Version;
.line 7
.line 8
.line 9
invoke-virtual {v0, v1}, Landroidx/camera/extensions/Version;->compareTo(Landroidx/camera/extensions/Version;)I
.line 10
move-result v0
.line 11
const/4 v1, 0x0
.line 12
.line 13
if-gez v0, :cond_e
.line 14
return-object v1
.line 15
.line 16
.line 17
:cond_e
:try_start_e
invoke-interface {p0}, Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;->getSupportedResolutions()Ljava/util/List;
.line 18
move-result-object p0
:try_end_12
.catch Ljava/lang/NoSuchMethodError; {:try_start_e .. :try_end_12} :catch_13
.line 19
return-object p0
.line 20
.line 21
:catch_13
const-string p0, "ImageCaptureExtender"
.line 22
.line 23
const-string v0, "getSupportedResolution interface is not implemented in vendor library."
.line 24
.line 25
.line 26
invoke-static {p0, v0}, Landroidx/camera/core/Logger;->e(Ljava/lang/String;Ljava/lang/String;)V
.line 27
return-object v1
.end method
.method private static synthetic lambda$updateBuilderConfig$0(ILjava/util/Collection;)V
.registers 2
invoke-static {p0, p1}, Landroidx/camera/extensions/ImageCaptureExtender;->checkPreviewEnabled(ILjava/util/Collection;)V
return-void
.end method
.method public static updateBuilderConfig(Landroidx/camera/core/ImageCapture$Builder;ILandroidx/camera/extensions/impl/ImageCaptureExtenderImpl;Landroid/content/Context;)V
.registers 8
.param p0 # Landroidx/camera/core/ImageCapture$Builder;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.line 1
.line 2
.line 3
invoke-interface {p2}, Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;->getCaptureProcessor()Landroidx/camera/extensions/impl/CaptureProcessorImpl;
.line 4
move-result-object v0
.line 5
.line 6
if-eqz v0, :cond_e
.line 7
.line 8
new-instance v1, Landroidx/camera/extensions/internal/AdaptingCaptureProcessor;
.line 9
.line 10
.line 11
invoke-direct {v1, v0}, Landroidx/camera/extensions/internal/AdaptingCaptureProcessor;-><init>(Landroidx/camera/extensions/impl/CaptureProcessorImpl;)V
.line 12
.line 13
.line 14
invoke-virtual {p0, v1}, Landroidx/camera/core/ImageCapture$Builder;->setCaptureProcessor(Landroidx/camera/core/impl/CaptureProcessor;)Landroidx/camera/core/ImageCapture$Builder;
.line 15
.line 16
.line 17
:cond_e
invoke-interface {p2}, Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;->getMaxCaptureStage()I
.line 18
move-result v0
.line 19
.line 20
if-lez v0, :cond_1b
.line 21
.line 22
.line 23
invoke-interface {p2}, Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;->getMaxCaptureStage()I
.line 24
move-result v0
.line 25
.line 26
.line 27
invoke-virtual {p0, v0}, Landroidx/camera/core/ImageCapture$Builder;->setMaxCaptureStages(I)Landroidx/camera/core/ImageCapture$Builder;
.line 28
.line 29
:cond_1b
new-instance v0, Landroidx/camera/extensions/ImageCaptureExtender$ImageCaptureAdapter;
.line 30
.line 31
.line 32
invoke-direct {v0, p2, p3}, Landroidx/camera/extensions/ImageCaptureExtender$ImageCaptureAdapter;-><init>(Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;Landroid/content/Context;)V
.line 33
.line 34
new-instance p3, Landroidx/camera/camera2/impl/Camera2ImplConfig$Extender;
.line 35
.line 36
.line 37
invoke-direct {p3, p0}, Landroidx/camera/camera2/impl/Camera2ImplConfig$Extender;-><init>(Landroidx/camera/core/ExtendableBuilder;)V
.line 38
.line 39
new-instance v1, Landroidx/camera/camera2/impl/CameraEventCallbacks;
.line 40
const/4 v2, 0x1
.line 41
.line 42
new-array v2, v2, [Landroidx/camera/camera2/impl/CameraEventCallback;
.line 43
const/4 v3, 0x0
.line 44
.line 45
aput-object v0, v2, v3
.line 46
.line 47
.line 48
invoke-direct {v1, v2}, Landroidx/camera/camera2/impl/CameraEventCallbacks;-><init>([Landroidx/camera/camera2/impl/CameraEventCallback;)V
.line 49
.line 50
.line 51
invoke-virtual {p3, v1}, Landroidx/camera/camera2/impl/Camera2ImplConfig$Extender;->setCameraEventCallback(Landroidx/camera/camera2/impl/CameraEventCallbacks;)Landroidx/camera/camera2/impl/Camera2ImplConfig$Extender;
.line 52
.line 53
.line 54
invoke-virtual {p0, v0}, Landroidx/camera/core/ImageCapture$Builder;->setUseCaseEventCallback(Landroidx/camera/core/UseCase$EventCallback;)Landroidx/camera/core/ImageCapture$Builder;
.line 55
.line 56
:try_start_36
new-instance p3, Landroidx/camera/extensions/c;
.line 57
.line 58
.line 59
invoke-direct {p3, p1}, Landroidx/camera/extensions/c;-><init>(I)V
.line 60
.line 61
.line 62
invoke-virtual {p0, p3}, Landroidx/camera/core/ImageCapture$Builder;->setAttachedUseCasesUpdateListener(Landroidx/core/util/Consumer;)Landroidx/camera/core/ImageCapture$Builder;
:try_end_3e
.catch Ljava/lang/NoSuchMethodError; {:try_start_36 .. :try_end_3e} :catch_3f
.line 63
goto :goto_46
.line 64
.line 65
:catch_3f
const-string p3, "ImageCaptureExtender"
.line 66
.line 67
const-string v1, "Can\'t set attached use cases update listener."
.line 68
.line 69
.line 70
invoke-static {p3, v1}, Landroidx/camera/core/Logger;->e(Ljava/lang/String;Ljava/lang/String;)V
.line 71
.line 72
.line 73
:goto_46
invoke-virtual {p0, v0}, Landroidx/camera/core/ImageCapture$Builder;->setCaptureBundle(Landroidx/camera/core/impl/CaptureBundle;)Landroidx/camera/core/ImageCapture$Builder;
.line 74
.line 75
.line 76
invoke-virtual {p0}, Landroidx/camera/core/ImageCapture$Builder;->getMutableConfig()Landroidx/camera/core/impl/MutableConfig;
.line 77
move-result-object p3
.line 78
.line 79
sget-object v0, Landroidx/camera/extensions/ImageCaptureExtender;->OPTION_IMAGE_CAPTURE_EXTENDER_MODE:Landroidx/camera/core/impl/Config$Option;
.line 80
.line 81
.line 82
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
.line 83
move-result-object p1
.line 84
.line 85
.line 86
invoke-interface {p3, v0, p1}, Landroidx/camera/core/impl/MutableConfig;->insertOption(Landroidx/camera/core/impl/Config$Option;Ljava/lang/Object;)V
.line 87
.line 88
.line 89
invoke-static {p2}, Landroidx/camera/extensions/ImageCaptureExtender;->getSupportedResolutions(Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;)Ljava/util/List;
.line 90
move-result-object p1
.line 91
.line 92
if-eqz p1, :cond_5f
.line 93
.line 94
.line 95
invoke-virtual {p0, p1}, Landroidx/camera/core/ImageCapture$Builder;->setSupportedResolutions(Ljava/util/List;)Landroidx/camera/core/ImageCapture$Builder;
.line 96
:cond_5f
return-void
.line 97
.line 98
.line 99
.line 100
.line 101
.line 102
.line 103
.line 104
.line 105
.line 106
.line 107
.line 108
.line 109
.line 110
.line 111
.line 112
.line 113
.line 114
.line 115
.line 116
.line 117
.line 118
.line 119
.line 120
.line 121
.line 122
.line 123
.line 124
.line 125
.line 126
.line 127
.line 128
.line 129
.line 130
.line 131
.line 132
.line 133
.line 134
.line 135
.line 136
.line 137
.line 138
.line 139
.line 140
.line 141
.line 142
.line 143
.line 144
.line 145
.line 146
.line 147
.line 148
.line 149
.line 150
.line 151
.line 152
.line 153
.line 154
.line 155
.line 156
.line 157
.line 158
.line 159
.line 160
.line 161
.line 162
.line 163
.line 164
.line 165
.line 166
.line 167
.line 168
.line 169
.line 170
.line 171
.line 172
.line 173
.line 174
.line 175
.line 176
.line 177
.line 178
.line 179
.line 180
.line 181
.line 182
.line 183
.line 184
.line 185
.line 186
.line 187
.line 188
.line 189
.line 190
.line 191
.line 192
.line 193
.line 194
.line 195
.line 196
.line 197
.line 198
.line 199
.line 200
.line 201
.line 202
.line 203
.line 204
.line 205
.line 206
.line 207
.line 208
.line 209
.line 210
.line 211
.line 212
.line 213
.line 214
.line 215
.line 216
.line 217
.line 218
.line 219
.line 220
.line 221
.line 222
.line 223
.line 224
.line 225
.line 226
.line 227
.line 228
.line 229
.line 230
.line 231
.line 232
.line 233
.line 234
.line 235
.line 236
.line 237
.line 238
.line 239
.line 240
.line 241
.line 242
.line 243
.end method
# virtual methods
.method public enableExtension(Landroidx/camera/core/CameraSelector;)V
.registers 5
.param p1 # Landroidx/camera/core/CameraSelector;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/experimental/UseExperimental;
markerClass = Landroidx/camera/core/ExperimentalCameraFilter;
.end annotation
.line 1
.line 2
.line 3
invoke-direct {p0, p1}, Landroidx/camera/extensions/ImageCaptureExtender;->getCameraWithExtension(Landroidx/camera/core/CameraSelector;)Ljava/lang/String;
.line 4
move-result-object p1
.line 5
.line 6
if-nez p1, :cond_7
.line 7
return-void
.line 8
.line 9
:cond_7
iget-object v0, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mBuilder:Landroidx/camera/core/ImageCapture$Builder;
.line 10
.line 11
.line 12
invoke-virtual {v0}, Landroidx/camera/core/ImageCapture$Builder;->getUseCaseConfig()Landroidx/camera/core/impl/ImageCaptureConfig;
.line 13
move-result-object v0
.line 14
const/4 v1, 0x0
.line 15
.line 16
.line 17
invoke-virtual {v0, v1}, Landroidx/camera/core/impl/ImageCaptureConfig;->getCameraSelector(Landroidx/camera/core/CameraSelector;)Landroidx/camera/core/CameraSelector;
.line 18
move-result-object v0
.line 19
.line 20
if-nez v0, :cond_29
.line 21
.line 22
iget-object v0, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mBuilder:Landroidx/camera/core/ImageCapture$Builder;
.line 23
.line 24
new-instance v1, Landroidx/camera/core/CameraSelector$Builder;
.line 25
.line 26
.line 27
invoke-direct {v1}, Landroidx/camera/core/CameraSelector$Builder;-><init>()V
.line 28
.line 29
iget-object v2, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mExtensionCameraFilter:Landroidx/camera/extensions/ExtensionCameraFilter;
.line 30
.line 31
.line 32
invoke-virtual {v1, v2}, Landroidx/camera/core/CameraSelector$Builder;->addCameraFilter(Landroidx/camera/core/CameraFilter;)Landroidx/camera/core/CameraSelector$Builder;
.line 33
move-result-object v1
.line 34
.line 35
.line 36
invoke-virtual {v1}, Landroidx/camera/core/CameraSelector$Builder;->build()Landroidx/camera/core/CameraSelector;
.line 37
move-result-object v1
.line 38
.line 39
.line 40
invoke-virtual {v0, v1}, Landroidx/camera/core/ImageCapture$Builder;->setCameraSelector(Landroidx/camera/core/CameraSelector;)Landroidx/camera/core/ImageCapture$Builder;
.line 41
goto :goto_3c
.line 42
.line 43
:cond_29
iget-object v1, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mBuilder:Landroidx/camera/core/ImageCapture$Builder;
.line 44
.line 45
.line 46
invoke-static {v0}, Landroidx/camera/core/CameraSelector$Builder;->fromSelector(Landroidx/camera/core/CameraSelector;)Landroidx/camera/core/CameraSelector$Builder;
.line 47
move-result-object v0
.line 48
.line 49
iget-object v2, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mExtensionCameraFilter:Landroidx/camera/extensions/ExtensionCameraFilter;
.line 50
.line 51
.line 52
invoke-virtual {v0, v2}, Landroidx/camera/core/CameraSelector$Builder;->addCameraFilter(Landroidx/camera/core/CameraFilter;)Landroidx/camera/core/CameraSelector$Builder;
.line 53
move-result-object v0
.line 54
.line 55
.line 56
invoke-virtual {v0}, Landroidx/camera/core/CameraSelector$Builder;->build()Landroidx/camera/core/CameraSelector;
.line 57
move-result-object v0
.line 58
.line 59
.line 60
invoke-virtual {v1, v0}, Landroidx/camera/core/ImageCapture$Builder;->setCameraSelector(Landroidx/camera/core/CameraSelector;)Landroidx/camera/core/ImageCapture$Builder;
.line 61
.line 62
.line 63
:goto_3c
invoke-static {p1}, Landroidx/camera/extensions/CameraUtil;->getCameraCharacteristics(Ljava/lang/String;)Landroid/hardware/camera2/CameraCharacteristics;
.line 64
move-result-object v0
.line 65
.line 66
iget-object v1, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mImpl:Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;
.line 67
.line 68
.line 69
invoke-interface {v1, p1, v0}, Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;->init(Ljava/lang/String;Landroid/hardware/camera2/CameraCharacteristics;)V
.line 70
.line 71
.line 72
invoke-static {}, Landroidx/camera/core/CameraX;->getContext()Landroid/content/Context;
.line 73
move-result-object p1
.line 74
.line 75
iget-object v0, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mBuilder:Landroidx/camera/core/ImageCapture$Builder;
.line 76
.line 77
iget v1, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mEffectMode:I
.line 78
.line 79
iget-object v2, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mImpl:Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;
.line 80
.line 81
.line 82
invoke-static {v0, v1, v2, p1}, Landroidx/camera/extensions/ImageCaptureExtender;->updateBuilderConfig(Landroidx/camera/core/ImageCapture$Builder;ILandroidx/camera/extensions/impl/ImageCaptureExtenderImpl;Landroid/content/Context;)V
.line 83
return-void
.line 84
.line 85
.line 86
.line 87
.line 88
.end method
.method init(Landroidx/camera/core/ImageCapture$Builder;Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;I)V
.registers 4
.annotation build Landroidx/annotation/experimental/UseExperimental;
markerClass = Landroidx/camera/core/ExperimentalCameraFilter;
.end annotation
.line 1
.line 2
iput-object p1, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mBuilder:Landroidx/camera/core/ImageCapture$Builder;
.line 3
.line 4
iput-object p2, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mImpl:Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;
.line 5
.line 6
iput p3, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mEffectMode:I
.line 7
.line 8
new-instance p1, Landroidx/camera/extensions/ExtensionCameraFilter;
.line 9
.line 10
.line 11
invoke-direct {p1, p2}, Landroidx/camera/extensions/ExtensionCameraFilter;-><init>(Landroidx/camera/extensions/impl/ImageCaptureExtenderImpl;)V
.line 12
.line 13
iput-object p1, p0, Landroidx/camera/extensions/ImageCaptureExtender;->mExtensionCameraFilter:Landroidx/camera/extensions/ExtensionCameraFilter;
.line 14
return-void
.line 15
.line 16
.line 17
.line 18
.line 19
.line 20
.line 21
.line 22
.line 23
.line 24
.line 25
.line 26
.line 27
.line 28
.line 29
.line 30
.line 31
.line 32
.line 33
.line 34
.line 35
.line 36
.line 37
.line 38
.line 39
.line 40
.line 41
.line 42
.line 43
.line 44
.line 45
.line 46
.line 47
.line 48
.line 49
.line 50
.line 51
.line 52
.line 53
.line 54
.line 55
.line 56
.line 57
.line 58
.line 59
.line 60
.line 61
.line 62
.line 63
.line 64
.line 65
.line 66
.line 67
.line 68
.line 69
.line 70
.line 71
.line 72
.line 73
.line 74
.line 75
.line 76
.line 77
.line 78
.line 79
.line 80
.line 81
.line 82
.line 83
.line 84
.line 85
.line 86
.line 87
.line 88
.line 89
.line 90
.line 91
.line 92
.line 93
.line 94
.line 95
.line 96
.line 97
.line 98
.line 99
.line 100
.line 101
.line 102
.line 103
.line 104
.line 105
.line 106
.line 107
.line 108
.line 109
.line 110
.line 111
.line 112
.line 113
.line 114
.line 115
.line 116
.line 117
.line 118
.line 119
.line 120
.line 121
.line 122
.line 123
.line 124
.line 125
.line 126
.line 127
.line 128
.line 129
.line 130
.line 131
.line 132
.line 133
.end method
.method public isExtensionAvailable(Landroidx/camera/core/CameraSelector;)Z
.registers 2
.param p1 # Landroidx/camera/core/CameraSelector;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
invoke-direct {p0, p1}, Landroidx/camera/extensions/ImageCaptureExtender;->getCameraWithExtension(Landroidx/camera/core/CameraSelector;)Ljava/lang/String;
move-result-object p1
if-eqz p1, :cond_8
const/4 p1, 0x1
goto :goto_9
:cond_8
const/4 p1, 0x0
:goto_9
return p1
.end method