.class public Lcom/esotericsoftware/spine/Animation;
.super Ljava/lang/Object;
.source "Animation.java"


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/esotericsoftware/spine/Animation$PathConstraintMixTimeline;,
        Lcom/esotericsoftware/spine/Animation$PathConstraintSpacingTimeline;,
        Lcom/esotericsoftware/spine/Animation$PathConstraintPositionTimeline;,
        Lcom/esotericsoftware/spine/Animation$TransformConstraintTimeline;,
        Lcom/esotericsoftware/spine/Animation$IkConstraintTimeline;,
        Lcom/esotericsoftware/spine/Animation$DrawOrderTimeline;,
        Lcom/esotericsoftware/spine/Animation$EventTimeline;,
        Lcom/esotericsoftware/spine/Animation$DeformTimeline;,
        Lcom/esotericsoftware/spine/Animation$AttachmentTimeline;,
        Lcom/esotericsoftware/spine/Animation$TwoColorTimeline;,
        Lcom/esotericsoftware/spine/Animation$ColorTimeline;,
        Lcom/esotericsoftware/spine/Animation$ShearTimeline;,
        Lcom/esotericsoftware/spine/Animation$ScaleTimeline;,
        Lcom/esotericsoftware/spine/Animation$TranslateTimeline;,
        Lcom/esotericsoftware/spine/Animation$RotateTimeline;,
        Lcom/esotericsoftware/spine/Animation$CurveTimeline;,
        Lcom/esotericsoftware/spine/Animation$TimelineType;,
        Lcom/esotericsoftware/spine/Animation$MixDirection;,
        Lcom/esotericsoftware/spine/Animation$MixPose;,
        Lcom/esotericsoftware/spine/Animation$Timeline;
    }
.end annotation


# instance fields
.field final a:Ljava/lang/String;

.field final b:Lcom/badlogic/gdx/utils/Array;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Lcom/badlogic/gdx/utils/Array<",
            "Lcom/esotericsoftware/spine/Animation$Timeline;",
            ">;"
        }
    .end annotation
.end field

.field c:F


# direct methods
.method public constructor <init>(Ljava/lang/String;Lcom/badlogic/gdx/utils/Array;F)V
    .locals 0
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Lcom/badlogic/gdx/utils/Array<",
            "Lcom/esotericsoftware/spine/Animation$Timeline;",
            ">;F)V"
        }
    .end annotation

    .line 49
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    if-eqz p1, :cond_1

    if-eqz p2, :cond_0

    .line 52
    iput-object p1, p0, Lcom/esotericsoftware/spine/Animation;->a:Ljava/lang/String;

    .line 53
    iput-object p2, p0, Lcom/esotericsoftware/spine/Animation;->b:Lcom/badlogic/gdx/utils/Array;

    .line 54
    iput p3, p0, Lcom/esotericsoftware/spine/Animation;->c:F

    return-void

    .line 51
    :cond_0
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "timelines cannot be null."

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 50
    :cond_1
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "name cannot be null."

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method static a([FF)I
    .locals 6

    .line 117
    array-length v0, p0

    add-int/lit8 v0, v0, -0x2

    const/4 v1, 0x1

    if-nez v0, :cond_0

    return v1

    :cond_0
    ushr-int/lit8 v2, v0, 0x1

    const/4 v3, 0x0

    :goto_0
    add-int/lit8 v4, v2, 0x1

    .line 121
    aget v5, p0, v4

    cmpg-float v5, v5, p1

    if-gtz v5, :cond_1

    move v3, v4

    goto :goto_1

    :cond_1
    move v0, v2

    :goto_1
    if-ne v3, v0, :cond_2

    add-int/2addr v3, v1

    return v3

    :cond_2
    add-int v2, v3, v0

    ushr-int/2addr v2, v1

    goto :goto_0
.end method

.method static a([FFI)I
    .locals 5

    .line 100
    array-length v0, p0

    div-int/2addr v0, p2

    add-int/lit8 v0, v0, -0x2

    if-nez v0, :cond_0

    return p2

    :cond_0
    ushr-int/lit8 v1, v0, 0x1

    const/4 v2, 0x0

    :goto_0
    add-int/lit8 v3, v1, 0x1

    mul-int v4, v3, p2

    .line 104
    aget v4, p0, v4

    cmpg-float v4, v4, p1

    if-gtz v4, :cond_1

    move v2, v3

    goto :goto_1

    :cond_1
    move v0, v1

    :goto_1
    if-ne v2, v0, :cond_2

    add-int/lit8 v2, v2, 0x1

    mul-int v2, v2, p2

    return v2

    :cond_2
    add-int v1, v2, v0

    ushr-int/lit8 v1, v1, 0x1

    goto :goto_0
.end method


# virtual methods
.method public a()F
    .locals 1

    .line 63
    iget v0, p0, Lcom/esotericsoftware/spine/Animation;->c:F

    return v0
.end method

.method public b()Ljava/lang/String;
    .locals 1

    .line 89
    iget-object v0, p0, Lcom/esotericsoftware/spine/Animation;->a:Ljava/lang/String;

    return-object v0
.end method

.method public toString()Ljava/lang/String;
    .locals 1

    .line 93
    iget-object v0, p0, Lcom/esotericsoftware/spine/Animation;->a:Ljava/lang/String;

    return-object v0
.end method
