c$b.smali
.class Lcom/airbnb/lottie/model/a/c$b;
.super Ljava/lang/Object;
# interfaces
.implements Lcom/airbnb/lottie/model/a/m$a;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/airbnb/lottie/model/a/c;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "b"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Lcom/airbnb/lottie/model/a/m$a",
"<",
"Lcom/airbnb/lottie/model/content/c;",
">;"
}
.end annotation
# instance fields
.field private final a:I
# direct methods
.method private constructor <init>(I)V
.registers 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput p1, p0, Lcom/airbnb/lottie/model/a/c$b;->a:I
return-void
.end method
.method synthetic constructor <init>(ILcom/airbnb/lottie/model/a/c$1;)V
.registers 3
invoke-direct {p0, p1}, Lcom/airbnb/lottie/model/a/c$b;-><init>(I)V
return-void
.end method
.method private a(D[D[D)I
.registers 16
.annotation build Landroid/support/annotation/IntRange;
from = 0x0L
to = 0xffL
.end annotation
const-wide v8, 0x406fe00000000000L # 255.0
const/4 v0, 0x1
move v2, v0
:goto_7
array-length v0, p3
if-ge v2, v0, :cond_2d
add-int/lit8 v0, v2, -0x1
aget-wide v0, p3, v0
aget-wide v4, p3, v2
aget-wide v6, p3, v2
cmpl-double v3, v6, p1
if-ltz v3, :cond_29
sub-double v6, p1, v0
sub-double v0, v4, v0
div-double v4, v6, v0
add-int/lit8 v0, v2, -0x1
aget-wide v0, p4, v0
aget-wide v2, p4, v2
invoke-static/range {v0 .. v5}, Lcom/airbnb/lottie/c/e;->a(DDD)D
move-result-wide v0
mul-double/2addr v0, v8
double-to-int v0, v0
:goto_28
return v0
:cond_29
add-int/lit8 v0, v2, 0x1
move v2, v0
goto :goto_7
:cond_2d
array-length v0, p4
add-int/lit8 v0, v0, -0x1
aget-wide v0, p4, v0
mul-double/2addr v0, v8
double-to-int v0, v0
goto :goto_28
.end method
.method private a(Lcom/airbnb/lottie/model/content/c;Lorg/json/JSONArray;)V
.registers 11
const/4 v1, 0x0
iget v0, p0, Lcom/airbnb/lottie/model/a/c$b;->a:I
mul-int/lit8 v0, v0, 0x4
invoke-virtual {p2}, Lorg/json/JSONArray;->length()I
move-result v2
if-gt v2, v0, :cond_c
:cond_b
return-void
:cond_c
invoke-virtual {p2}, Lorg/json/JSONArray;->length()I
move-result v2
sub-int/2addr v2, v0
div-int/lit8 v2, v2, 0x2
new-array v3, v2, [D
new-array v4, v2, [D
move v2, v0
move v0, v1
:goto_19
invoke-virtual {p2}, Lorg/json/JSONArray;->length()I
move-result v5
if-ge v2, v5, :cond_35
rem-int/lit8 v5, v2, 0x2
if-nez v5, :cond_2c
invoke-virtual {p2, v2}, Lorg/json/JSONArray;->optDouble(I)D
move-result-wide v6
aput-wide v6, v3, v0
:goto_29
add-int/lit8 v2, v2, 0x1
goto :goto_19
:cond_2c
invoke-virtual {p2, v2}, Lorg/json/JSONArray;->optDouble(I)D
move-result-wide v6
aput-wide v6, v4, v0
add-int/lit8 v0, v0, 0x1
goto :goto_29
:cond_35
:goto_35
invoke-virtual {p1}, Lcom/airbnb/lottie/model/content/c;->c()I
move-result v0
if-ge v1, v0, :cond_b
invoke-virtual {p1}, Lcom/airbnb/lottie/model/content/c;->b()[I
move-result-object v0
aget v0, v0, v1
invoke-virtual {p1}, Lcom/airbnb/lottie/model/content/c;->a()[F
move-result-object v2
aget v2, v2, v1
float-to-double v6, v2
invoke-direct {p0, v6, v7, v3, v4}, Lcom/airbnb/lottie/model/a/c$b;->a(D[D[D)I
move-result v2
invoke-static {v0}, Landroid/graphics/Color;->red(I)I
move-result v5
invoke-static {v0}, Landroid/graphics/Color;->green(I)I
move-result v6
invoke-static {v0}, Landroid/graphics/Color;->blue(I)I
move-result v0
invoke-static {v2, v5, v6, v0}, Landroid/graphics/Color;->argb(IIII)I
move-result v0
invoke-virtual {p1}, Lcom/airbnb/lottie/model/content/c;->b()[I
move-result-object v2
aput v0, v2, v1
add-int/lit8 v1, v1, 0x1
goto :goto_35
.end method
# virtual methods
.method public a(Ljava/lang/Object;F)Lcom/airbnb/lottie/model/content/c;
.registers 15
const/4 v0, 0x0
const-wide v10, 0x406fe00000000000L # 255.0
check-cast p1, Lorg/json/JSONArray;
iget v1, p0, Lcom/airbnb/lottie/model/a/c$b;->a:I
new-array v3, v1, [F
iget v1, p0, Lcom/airbnb/lottie/model/a/c$b;->a:I
new-array v4, v1, [I
new-instance v5, Lcom/airbnb/lottie/model/content/c;
invoke-direct {v5, v3, v4}, Lcom/airbnb/lottie/model/content/c;-><init>([F[I)V
invoke-virtual {p1}, Lorg/json/JSONArray;->length()I
move-result v1
iget v2, p0, Lcom/airbnb/lottie/model/a/c$b;->a:I
mul-int/lit8 v2, v2, 0x4
if-eq v1, v2, :cond_53
const-string/jumbo v1, "LOTTIE"
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v6, "Unexpected gradient length: "
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {p1}, Lorg/json/JSONArray;->length()I
move-result v6
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v2
const-string/jumbo v6, ". Expected "
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
iget v6, p0, Lcom/airbnb/lottie/model/a/c$b;->a:I
mul-int/lit8 v6, v6, 0x4
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v2
const-string/jumbo v6, ". This may affect the appearance of the gradient. Make sure to save your After Effects file before exporting an animation with gradients."
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
:cond_53
move v1, v0
move v2, v0
:goto_55
iget v6, p0, Lcom/airbnb/lottie/model/a/c$b;->a:I
mul-int/lit8 v6, v6, 0x4
if-ge v0, v6, :cond_80
div-int/lit8 v6, v0, 0x4
invoke-virtual {p1, v0}, Lorg/json/JSONArray;->optDouble(I)D
move-result-wide v8
rem-int/lit8 v7, v0, 0x4
packed-switch v7, :pswitch_data_84
:goto_66
add-int/lit8 v0, v0, 0x1
goto :goto_55
:pswitch_69
double-to-float v7, v8
aput v7, v3, v6
goto :goto_66
:pswitch_6d
mul-double v6, v8, v10
double-to-int v2, v6
goto :goto_66
:pswitch_71
mul-double v6, v8, v10
double-to-int v1, v6
goto :goto_66
:pswitch_75
mul-double/2addr v8, v10
double-to-int v7, v8
const/16 v8, 0xff
invoke-static {v8, v2, v1, v7}, Landroid/graphics/Color;->argb(IIII)I
move-result v7
aput v7, v4, v6
goto :goto_66
:cond_80
invoke-direct {p0, v5, p1}, Lcom/airbnb/lottie/model/a/c$b;->a(Lcom/airbnb/lottie/model/content/c;Lorg/json/JSONArray;)V
return-object v5
:pswitch_data_84
.packed-switch 0x0
:pswitch_69
:pswitch_6d
:pswitch_71
:pswitch_75
.end packed-switch
.end method
.method public synthetic b(Ljava/lang/Object;F)Ljava/lang/Object;
.registers 4
invoke-virtual {p0, p1, p2}, Lcom/airbnb/lottie/model/a/c$b;->a(Ljava/lang/Object;F)Lcom/airbnb/lottie/model/content/c;
move-result-object v0
return-object v0
.end method