.class public Landroidx/camera/core/a2; .super Ljava/lang/Object; .source "MetadataImageReader.java" # interfaces .implements Lx/l0; .implements Landroidx/camera/core/i0$a; # static fields .field public static final m:Ljava/lang/String; = "MetadataImageReader" # instance fields .field public final a:Ljava/lang/Object; .field public b:Lx/i; .field public c:Lx/l0$a; .field public d:Z .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .end field .field public final e:Lx/l0; .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .end field .field public f:Lx/l0$a; .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .annotation build Landroidx/annotation/Nullable; .end annotation .end field .field public g:Ljava/util/concurrent/Executor; .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .annotation build Landroidx/annotation/Nullable; .end annotation .end field .field public final h:Landroid/util/LongSparseArray; .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Landroid/util/LongSparseArray<", "Landroidx/camera/core/o1;", ">;" } .end annotation .end field .field public final i:Landroid/util/LongSparseArray; .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Landroid/util/LongSparseArray<", "Landroidx/camera/core/p1;", ">;" } .end annotation .end field .field public j:I .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .end field .field public final k:Ljava/util/List; .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Landroidx/camera/core/p1;", ">;" } .end annotation .end field .field public final l:Ljava/util/List; .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Landroidx/camera/core/p1;", ">;" } .end annotation .end field # direct methods .method public constructor (IIII)V .locals 0 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0, 0x0, 0x0, 0x0 } names = { "width", "height", "format", "maxImages" } .end annotation .line 1 invoke-static {p1, p2, p3, p4}, Landroidx/camera/core/a2;->k(IIII)Lx/l0; move-result-object p1 invoke-direct {p0, p1}, Landroidx/camera/core/a2;->(Lx/l0;)V return-void .end method .method public constructor (Lx/l0;)V .locals 2 .param p1 # Lx/l0; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "imageReaderProxy" } .end annotation .line 2 invoke-direct {p0}, Ljava/lang/Object;->()V .line 3 new-instance v0, Ljava/lang/Object; invoke-direct {v0}, Ljava/lang/Object;->()V iput-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; .line 4 new-instance v0, Landroidx/camera/core/a2$a; invoke-direct {v0, p0}, Landroidx/camera/core/a2$a;->(Landroidx/camera/core/a2;)V iput-object v0, p0, Landroidx/camera/core/a2;->b:Lx/i; .line 5 new-instance v0, Landroidx/camera/core/z1; invoke-direct {v0, p0}, Landroidx/camera/core/z1;->(Landroidx/camera/core/a2;)V iput-object v0, p0, Landroidx/camera/core/a2;->c:Lx/l0$a; const/4 v0, 0x0 .line 6 iput-boolean v0, p0, Landroidx/camera/core/a2;->d:Z .line 7 new-instance v1, Landroid/util/LongSparseArray; invoke-direct {v1}, Landroid/util/LongSparseArray;->()V iput-object v1, p0, Landroidx/camera/core/a2;->h:Landroid/util/LongSparseArray; .line 8 new-instance v1, Landroid/util/LongSparseArray; invoke-direct {v1}, Landroid/util/LongSparseArray;->()V iput-object v1, p0, Landroidx/camera/core/a2;->i:Landroid/util/LongSparseArray; .line 9 new-instance v1, Ljava/util/ArrayList; invoke-direct {v1}, Ljava/util/ArrayList;->()V iput-object v1, p0, Landroidx/camera/core/a2;->l:Ljava/util/List; .line 10 iput-object p1, p0, Landroidx/camera/core/a2;->e:Lx/l0; .line 11 iput v0, p0, Landroidx/camera/core/a2;->j:I .line 12 new-instance p1, Ljava/util/ArrayList; invoke-virtual {p0}, Landroidx/camera/core/a2;->g()I move-result v0 invoke-direct {p1, v0}, Ljava/util/ArrayList;->(I)V iput-object p1, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; return-void .end method .method public static synthetic i(Landroidx/camera/core/a2;Lx/l0;)V .locals 0 invoke-direct {p0, p1}, Landroidx/camera/core/a2;->q(Lx/l0;)V return-void .end method .method public static synthetic j(Landroidx/camera/core/a2;Lx/l0$a;)V .locals 0 invoke-direct {p0, p1}, Landroidx/camera/core/a2;->p(Lx/l0$a;)V return-void .end method .method public static k(IIII)Lx/l0; .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0, 0x0, 0x0, 0x0 } names = { "width", "height", "format", "maxImages" } .end annotation .line 1 new-instance v0, Landroidx/camera/core/d; .line 2 invoke-static {p0, p1, p2, p3}, Landroid/media/ImageReader;->newInstance(IIII)Landroid/media/ImageReader; move-result-object p0 invoke-direct {v0, p0}, Landroidx/camera/core/d;->(Landroid/media/ImageReader;)V return-object v0 .end method .method private synthetic p(Lx/l0$a;)V .locals 0 .line 1 invoke-interface {p1, p0}, Lx/l0$a;->a(Lx/l0;)V return-void .end method .method private synthetic q(Lx/l0;)V .locals 0 .line 1 invoke-virtual {p0, p1}, Landroidx/camera/core/a2;->o(Lx/l0;)V return-void .end method # virtual methods .method public a()Landroid/view/Surface; .locals 2 .annotation build Landroidx/annotation/Nullable; .end annotation .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->e:Lx/l0; invoke-interface {v1}, Lx/l0;->a()Landroid/view/Surface; move-result-object v1 monitor-exit v0 return-object v1 :catchall_0 move-exception v1 .line 3 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public b(Landroidx/camera/core/p1;)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "image" } .end annotation .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 invoke-virtual {p0, p1}, Landroidx/camera/core/a2;->l(Landroidx/camera/core/p1;)V .line 3 monitor-exit v0 return-void :catchall_0 move-exception p1 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw p1 .end method .method public c()Landroidx/camera/core/p1; .locals 5 .annotation build Landroidx/annotation/Nullable; .end annotation .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v1}, Ljava/util/List;->isEmpty()Z move-result v1 if-eqz v1, :cond_0 const/4 v1, 0x0 .line 3 monitor-exit v0 return-object v1 .line 4 :cond_0 iget v1, p0, Landroidx/camera/core/a2;->j:I iget-object v2, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v2}, Ljava/util/List;->size()I move-result v2 if-ge v1, v2, :cond_4 .line 5 new-instance v1, Ljava/util/ArrayList; invoke-direct {v1}, Ljava/util/ArrayList;->()V const/4 v2, 0x0 .line 6 :goto_0 iget-object v3, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v3}, Ljava/util/List;->size()I move-result v3 add-int/lit8 v3, v3, -0x1 if-ge v2, v3, :cond_2 .line 7 iget-object v3, p0, Landroidx/camera/core/a2;->l:Ljava/util/List; iget-object v4, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v4, v2}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v4 invoke-interface {v3, v4}, Ljava/util/List;->contains(Ljava/lang/Object;)Z move-result v3 if-nez v3, :cond_1 .line 8 iget-object v3, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v3, v2}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v3 check-cast v3, Landroidx/camera/core/p1; invoke-virtual {v1, v3}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z :cond_1 add-int/lit8 v2, v2, 0x1 goto :goto_0 .line 9 :cond_2 invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; move-result-object v1 :goto_1 invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z move-result v2 if-eqz v2, :cond_3 invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v2 check-cast v2, Landroidx/camera/core/p1; .line 10 invoke-interface {v2}, Landroidx/camera/core/p1;->close()V goto :goto_1 .line 11 :cond_3 iget-object v1, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v1}, Ljava/util/List;->size()I move-result v1 add-int/lit8 v1, v1, -0x1 iput v1, p0, Landroidx/camera/core/a2;->j:I .line 12 iget-object v2, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; add-int/lit8 v3, v1, 0x1 iput v3, p0, Landroidx/camera/core/a2;->j:I invoke-interface {v2, v1}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/camera/core/p1; .line 13 iget-object v2, p0, Landroidx/camera/core/a2;->l:Ljava/util/List; invoke-interface {v2, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 14 monitor-exit v0 return-object v1 .line 15 :cond_4 new-instance v1, Ljava/lang/IllegalStateException; const-string v2, "Maximum image number reached." invoke-direct {v1, v2}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v1 :catchall_0 move-exception v1 .line 16 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public close()V .locals 3 .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-boolean v1, p0, Landroidx/camera/core/a2;->d:Z if-eqz v1, :cond_0 .line 3 monitor-exit v0 return-void .line 4 :cond_0 new-instance v1, Ljava/util/ArrayList; iget-object v2, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-direct {v1, v2}, Ljava/util/ArrayList;->(Ljava/util/Collection;)V .line 5 invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; move-result-object v1 :goto_0 invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z move-result v2 if-eqz v2, :cond_1 invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v2 check-cast v2, Landroidx/camera/core/p1; .line 6 invoke-interface {v2}, Landroidx/camera/core/p1;->close()V goto :goto_0 .line 7 :cond_1 iget-object v1, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v1}, Ljava/util/List;->clear()V .line 8 iget-object v1, p0, Landroidx/camera/core/a2;->e:Lx/l0; invoke-interface {v1}, Lx/l0;->close()V const/4 v1, 0x1 .line 9 iput-boolean v1, p0, Landroidx/camera/core/a2;->d:Z .line 10 monitor-exit v0 return-void :catchall_0 move-exception v1 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public d()I .locals 2 .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->e:Lx/l0; invoke-interface {v1}, Lx/l0;->d()I move-result v1 monitor-exit v0 return v1 :catchall_0 move-exception v1 .line 3 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public e()V .locals 2 .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 const/4 v1, 0x0 .line 2 :try_start_0 iput-object v1, p0, Landroidx/camera/core/a2;->f:Lx/l0$a; .line 3 iput-object v1, p0, Landroidx/camera/core/a2;->g:Ljava/util/concurrent/Executor; .line 4 monitor-exit v0 return-void :catchall_0 move-exception v1 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public f(Lx/l0$a;Ljava/util/concurrent/Executor;)V .locals 2 .param p1 # Lx/l0$a; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Ljava/util/concurrent/Executor; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0, 0x0 } names = { "listener", "executor" } .end annotation .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 invoke-static {p1}, Lr1/o;->k(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 check-cast p1, Lx/l0$a; iput-object p1, p0, Landroidx/camera/core/a2;->f:Lx/l0$a; .line 3 invoke-static {p2}, Lr1/o;->k(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 check-cast p1, Ljava/util/concurrent/Executor; iput-object p1, p0, Landroidx/camera/core/a2;->g:Ljava/util/concurrent/Executor; .line 4 iget-object p1, p0, Landroidx/camera/core/a2;->e:Lx/l0; iget-object v1, p0, Landroidx/camera/core/a2;->c:Lx/l0$a; invoke-interface {p1, v1, p2}, Lx/l0;->f(Lx/l0$a;Ljava/util/concurrent/Executor;)V .line 5 monitor-exit v0 return-void :catchall_0 move-exception p1 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw p1 .end method .method public g()I .locals 2 .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->e:Lx/l0; invoke-interface {v1}, Lx/l0;->g()I move-result v1 monitor-exit v0 return v1 :catchall_0 move-exception v1 .line 3 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public getHeight()I .locals 2 .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->e:Lx/l0; invoke-interface {v1}, Lx/l0;->getHeight()I move-result v1 monitor-exit v0 return v1 :catchall_0 move-exception v1 .line 3 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public getWidth()I .locals 2 .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->e:Lx/l0; invoke-interface {v1}, Lx/l0;->getWidth()I move-result v1 monitor-exit v0 return v1 :catchall_0 move-exception v1 .line 3 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public h()Landroidx/camera/core/p1; .locals 4 .annotation build Landroidx/annotation/Nullable; .end annotation .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v1}, Ljava/util/List;->isEmpty()Z move-result v1 if-eqz v1, :cond_0 const/4 v1, 0x0 .line 3 monitor-exit v0 return-object v1 .line 4 :cond_0 iget v1, p0, Landroidx/camera/core/a2;->j:I iget-object v2, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v2}, Ljava/util/List;->size()I move-result v2 if-ge v1, v2, :cond_1 .line 5 iget-object v1, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; iget v2, p0, Landroidx/camera/core/a2;->j:I add-int/lit8 v3, v2, 0x1 iput v3, p0, Landroidx/camera/core/a2;->j:I invoke-interface {v1, v2}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/camera/core/p1; .line 6 iget-object v2, p0, Landroidx/camera/core/a2;->l:Ljava/util/List; invoke-interface {v2, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 7 monitor-exit v0 return-object v1 .line 8 :cond_1 new-instance v1, Ljava/lang/IllegalStateException; const-string v2, "Maximum image number reached." invoke-direct {v1, v2}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v1 :catchall_0 move-exception v1 .line 9 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public final l(Landroidx/camera/core/p1;)V .locals 3 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "image" } .end annotation .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v1, p1}, Ljava/util/List;->indexOf(Ljava/lang/Object;)I move-result v1 if-ltz v1, :cond_0 .line 3 iget-object v2, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v2, v1}, Ljava/util/List;->remove(I)Ljava/lang/Object; .line 4 iget v2, p0, Landroidx/camera/core/a2;->j:I if-gt v1, v2, :cond_0 add-int/lit8 v2, v2, -0x1 .line 5 iput v2, p0, Landroidx/camera/core/a2;->j:I .line 6 :cond_0 iget-object v1, p0, Landroidx/camera/core/a2;->l:Ljava/util/List; invoke-interface {v1, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z .line 7 monitor-exit v0 return-void :catchall_0 move-exception p1 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw p1 .end method .method public final m(Landroidx/camera/core/q2;)V .locals 4 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "image" } .end annotation .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v1}, Ljava/util/List;->size()I move-result v1 invoke-virtual {p0}, Landroidx/camera/core/a2;->g()I move-result v2 const/4 v3, 0x0 if-ge v1, v2, :cond_0 .line 3 invoke-virtual {p1, p0}, Landroidx/camera/core/i0;->a(Landroidx/camera/core/i0$a;)V .line 4 iget-object v1, p0, Landroidx/camera/core/a2;->k:Ljava/util/List; invoke-interface {v1, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 5 iget-object v3, p0, Landroidx/camera/core/a2;->f:Lx/l0$a; .line 6 iget-object p1, p0, Landroidx/camera/core/a2;->g:Ljava/util/concurrent/Executor; goto :goto_0 :cond_0 const-string v1, "TAG" const-string v2, "Maximum image number reached." .line 7 invoke-static {v1, v2}, Landroidx/camera/core/x1;->a(Ljava/lang/String;Ljava/lang/String;)V .line 8 invoke-virtual {p1}, Landroidx/camera/core/i0;->close()V move-object p1, v3 .line 9 :goto_0 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 if-eqz v3, :cond_2 if-eqz p1, :cond_1 .line 10 new-instance v0, Landroidx/camera/core/y1; invoke-direct {v0, p0, v3}, Landroidx/camera/core/y1;->(Landroidx/camera/core/a2;Lx/l0$a;)V invoke-interface {p1, v0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V goto :goto_1 .line 11 :cond_1 invoke-interface {v3, p0}, Lx/l0$a;->a(Lx/l0;)V :cond_2 :goto_1 return-void :catchall_0 move-exception p1 .line 12 :try_start_1 monitor-exit v0 :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 throw p1 .end method .method public n()Lx/i; .locals 1 .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->b:Lx/i; return-object v0 .end method .method public o(Lx/l0;)V .locals 6 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "imageReader" } .end annotation .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-boolean v1, p0, Landroidx/camera/core/a2;->d:Z if-eqz v1, :cond_0 .line 3 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_1 return-void :cond_0 const/4 v1, 0x0 :cond_1 const/4 v2, 0x0 .line 4 :try_start_1 invoke-interface {p1}, Lx/l0;->h()Landroidx/camera/core/p1; move-result-object v2 :try_end_1 .catch Ljava/lang/IllegalStateException; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 if-eqz v2, :cond_2 add-int/lit8 v1, v1, 0x1 .line 5 :try_start_2 iget-object v3, p0, Landroidx/camera/core/a2;->i:Landroid/util/LongSparseArray; invoke-interface {v2}, Landroidx/camera/core/p1;->f1()Landroidx/camera/core/o1; move-result-object v4 invoke-interface {v4}, Landroidx/camera/core/o1;->c()J move-result-wide v4 invoke-virtual {v3, v4, v5, v2}, Landroid/util/LongSparseArray;->put(JLjava/lang/Object;)V .line 6 invoke-virtual {p0}, Landroidx/camera/core/a2;->r()V :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_1 goto :goto_0 :catchall_0 move-exception p1 goto :goto_1 :catch_0 move-exception v3 :try_start_3 const-string v4, "MetadataImageReader" const-string v5, "Failed to acquire next image." .line 7 invoke-static {v4, v5, v3}, Landroidx/camera/core/x1;->b(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V :try_end_3 .catchall {:try_start_3 .. :try_end_3} :catchall_0 :cond_2 :goto_0 if-eqz v2, :cond_3 .line 8 :try_start_4 invoke-interface {p1}, Lx/l0;->g()I move-result v2 if-lt v1, v2, :cond_1 .line 9 :cond_3 monitor-exit v0 return-void .line 10 :goto_1 throw p1 :catchall_1 move-exception p1 .line 11 monitor-exit v0 :try_end_4 .catchall {:try_start_4 .. :try_end_4} :catchall_1 throw p1 .end method .method public final r()V .locals 7 .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->h:Landroid/util/LongSparseArray; invoke-virtual {v1}, Landroid/util/LongSparseArray;->size()I move-result v1 add-int/lit8 v1, v1, -0x1 :goto_0 if-ltz v1, :cond_1 .line 3 iget-object v2, p0, Landroidx/camera/core/a2;->h:Landroid/util/LongSparseArray; invoke-virtual {v2, v1}, Landroid/util/LongSparseArray;->valueAt(I)Ljava/lang/Object; move-result-object v2 check-cast v2, Landroidx/camera/core/o1; .line 4 invoke-interface {v2}, Landroidx/camera/core/o1;->c()J move-result-wide v3 .line 5 iget-object v5, p0, Landroidx/camera/core/a2;->i:Landroid/util/LongSparseArray; invoke-virtual {v5, v3, v4}, Landroid/util/LongSparseArray;->get(J)Ljava/lang/Object; move-result-object v5 check-cast v5, Landroidx/camera/core/p1; if-eqz v5, :cond_0 .line 6 iget-object v6, p0, Landroidx/camera/core/a2;->i:Landroid/util/LongSparseArray; invoke-virtual {v6, v3, v4}, Landroid/util/LongSparseArray;->remove(J)V .line 7 iget-object v3, p0, Landroidx/camera/core/a2;->h:Landroid/util/LongSparseArray; invoke-virtual {v3, v1}, Landroid/util/LongSparseArray;->removeAt(I)V .line 8 new-instance v3, Landroidx/camera/core/q2; invoke-direct {v3, v5, v2}, Landroidx/camera/core/q2;->(Landroidx/camera/core/p1;Landroidx/camera/core/o1;)V invoke-virtual {p0, v3}, Landroidx/camera/core/a2;->m(Landroidx/camera/core/q2;)V :cond_0 add-int/lit8 v1, v1, -0x1 goto :goto_0 .line 9 :cond_1 invoke-virtual {p0}, Landroidx/camera/core/a2;->s()V .line 10 monitor-exit v0 return-void :catchall_0 move-exception v1 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public final s()V .locals 10 .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroidx/camera/core/a2;->i:Landroid/util/LongSparseArray; invoke-virtual {v1}, Landroid/util/LongSparseArray;->size()I move-result v1 if-eqz v1, :cond_6 iget-object v1, p0, Landroidx/camera/core/a2;->h:Landroid/util/LongSparseArray; invoke-virtual {v1}, Landroid/util/LongSparseArray;->size()I move-result v1 if-nez v1, :cond_0 goto/16 :goto_2 .line 3 :cond_0 iget-object v1, p0, Landroidx/camera/core/a2;->i:Landroid/util/LongSparseArray; const/4 v2, 0x0 invoke-virtual {v1, v2}, Landroid/util/LongSparseArray;->keyAt(I)J move-result-wide v3 invoke-static {v3, v4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; move-result-object v1 .line 4 iget-object v3, p0, Landroidx/camera/core/a2;->h:Landroid/util/LongSparseArray; invoke-virtual {v3, v2}, Landroid/util/LongSparseArray;->keyAt(I)J move-result-wide v3 invoke-static {v3, v4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; move-result-object v3 .line 5 invoke-virtual {v3, v1}, Ljava/lang/Long;->equals(Ljava/lang/Object;)Z move-result v4 const/4 v5, 0x1 if-nez v4, :cond_1 move v2, v5 :cond_1 invoke-static {v2}, Lr1/o;->a(Z)V .line 6 invoke-virtual {v3}, Ljava/lang/Long;->longValue()J move-result-wide v6 invoke-virtual {v1}, Ljava/lang/Long;->longValue()J move-result-wide v8 cmp-long v2, v6, v8 if-lez v2, :cond_3 .line 7 iget-object v1, p0, Landroidx/camera/core/a2;->i:Landroid/util/LongSparseArray; invoke-virtual {v1}, Landroid/util/LongSparseArray;->size()I move-result v1 sub-int/2addr v1, v5 :goto_0 if-ltz v1, :cond_5 .line 8 iget-object v2, p0, Landroidx/camera/core/a2;->i:Landroid/util/LongSparseArray; invoke-virtual {v2, v1}, Landroid/util/LongSparseArray;->keyAt(I)J move-result-wide v4 invoke-virtual {v3}, Ljava/lang/Long;->longValue()J move-result-wide v6 cmp-long v2, v4, v6 if-gez v2, :cond_2 .line 9 iget-object v2, p0, Landroidx/camera/core/a2;->i:Landroid/util/LongSparseArray; invoke-virtual {v2, v1}, Landroid/util/LongSparseArray;->valueAt(I)Ljava/lang/Object; move-result-object v2 check-cast v2, Landroidx/camera/core/p1; .line 10 invoke-interface {v2}, Landroidx/camera/core/p1;->close()V .line 11 iget-object v2, p0, Landroidx/camera/core/a2;->i:Landroid/util/LongSparseArray; invoke-virtual {v2, v1}, Landroid/util/LongSparseArray;->removeAt(I)V :cond_2 add-int/lit8 v1, v1, -0x1 goto :goto_0 .line 12 :cond_3 iget-object v2, p0, Landroidx/camera/core/a2;->h:Landroid/util/LongSparseArray; invoke-virtual {v2}, Landroid/util/LongSparseArray;->size()I move-result v2 sub-int/2addr v2, v5 :goto_1 if-ltz v2, :cond_5 .line 13 iget-object v3, p0, Landroidx/camera/core/a2;->h:Landroid/util/LongSparseArray; invoke-virtual {v3, v2}, Landroid/util/LongSparseArray;->keyAt(I)J move-result-wide v3 invoke-virtual {v1}, Ljava/lang/Long;->longValue()J move-result-wide v5 cmp-long v3, v3, v5 if-gez v3, :cond_4 .line 14 iget-object v3, p0, Landroidx/camera/core/a2;->h:Landroid/util/LongSparseArray; invoke-virtual {v3, v2}, Landroid/util/LongSparseArray;->removeAt(I)V :cond_4 add-int/lit8 v2, v2, -0x1 goto :goto_1 .line 15 :cond_5 monitor-exit v0 return-void .line 16 :cond_6 :goto_2 monitor-exit v0 return-void :catchall_0 move-exception v1 .line 17 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public t(Landroidx/camera/core/impl/c;)V .locals 5 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "cameraCaptureResult" } .end annotation .line 1 iget-object v0, p0, Landroidx/camera/core/a2;->a:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-boolean v1, p0, Landroidx/camera/core/a2;->d:Z if-eqz v1, :cond_0 .line 3 monitor-exit v0 return-void .line 4 :cond_0 iget-object v1, p0, Landroidx/camera/core/a2;->h:Landroid/util/LongSparseArray; invoke-interface {p1}, Landroidx/camera/core/impl/c;->c()J move-result-wide v2 new-instance v4, Lz/b; invoke-direct {v4, p1}, Lz/b;->(Landroidx/camera/core/impl/c;)V invoke-virtual {v1, v2, v3, v4}, Landroid/util/LongSparseArray;->put(JLjava/lang/Object;)V .line 5 invoke-virtual {p0}, Landroidx/camera/core/a2;->r()V .line 6 monitor-exit v0 return-void :catchall_0 move-exception p1 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw p1 .end method