ValueObject.smali

.class public Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;
.super Ljava/lang/Object;
.source "ValueObject.java"

# interfaces
.implements Lcom/cleanmaster/hpsharelib/base/anim/Changeable;


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/cleanmaster/hpsharelib/base/anim/ValueObject$OnValueChangeListener;
    }
.end annotation


# instance fields
.field debug:Z

.field endTime:F

.field endValue:F

.field interpolator:Landroid/view/animation/Interpolator;

.field mOnValueChangeListener:Lcom/cleanmaster/hpsharelib/base/anim/ValueObject$OnValueChangeListener;

.field max:F

.field middle:F

.field min:F

.field startTime:F

.field startValue:F

.field tag:Ljava/lang/String;

.field value:F


# direct methods
.method public constructor <init>(FFFFLandroid/view/animation/Interpolator;)V
    .registers 6

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

    .line 37
    iput p1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startValue:F

    .line 38
    iput p2, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endValue:F

    .line 39
    iput p3, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startTime:F

    .line 40
    iput p4, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endTime:F

    .line 41
    iput-object p5, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->interpolator:Landroid/view/animation/Interpolator;

    .line 42
    return-void
.end method


# virtual methods
.method public applyValueK(F)F
    .registers 6

    .prologue
    const/high16 v0, 0x3f800000    # 1.0f

    const/4 v1, 0x0

    .line 81
    cmpg-float v2, p1, v1

    if-gez v2, :cond_3a

    .line 83
    :goto_7
    cmpl-float v2, v1, v0

    if-lez v2, :cond_38

    .line 86
    :goto_b
    iget-object v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->interpolator:Landroid/view/animation/Interpolator;

    if-eqz v1, :cond_15

    .line 87
    iget-object v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->interpolator:Landroid/view/animation/Interpolator;

    invoke-interface {v1, v0}, Landroid/view/animation/Interpolator;->getInterpolation(F)F

    move-result v0

    .line 90
    :cond_15
    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startValue:F

    iget v2, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endValue:F

    iget v3, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startValue:F

    sub-float/2addr v2, v3

    mul-float/2addr v0, v2

    add-float/2addr v0, v1

    .line 91
    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    cmpl-float v1, v0, v1

    if-eqz v1, :cond_35

    .line 92
    iput v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    .line 93
    iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->mOnValueChangeListener:Lcom/cleanmaster/hpsharelib/base/anim/ValueObject$OnValueChangeListener;

    if-eqz v0, :cond_35

    .line 94
    iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->mOnValueChangeListener:Lcom/cleanmaster/hpsharelib/base/anim/ValueObject$OnValueChangeListener;

    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    iget v2, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->min:F

    iget v3, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->max:F

    invoke-interface {v0, v1, v2, v3}, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject$OnValueChangeListener;->onValueApply(FFF)V

    .line 98
    :cond_35
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    return v0

    :cond_38
    move v0, v1

    goto :goto_b

    :cond_3a
    move v1, p1

    goto :goto_7
.end method

.method public applyValueTime(F)F
    .registers 5

    .prologue
    .line 74
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startTime:F

    sub-float v0, p1, v0

    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endTime:F

    iget v2, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startTime:F

    sub-float/2addr v1, v2

    div-float/2addr v0, v1

    .line 75
    invoke-virtual {p0, v0}, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->applyValueK(F)F

    move-result v0

    return v0
.end method

.method public changeValue(F)Z
    .registers 6

    .prologue
    .line 161
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    add-float/2addr v0, p1

    .line 162
    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->min:F

    cmpg-float v1, v0, v1

    if-gez v1, :cond_24

    .line 163
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->min:F

    .line 167
    :cond_b
    :goto_b
    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    cmpl-float v1, v0, v1

    if-eqz v1, :cond_2d

    .line 169
    iput v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    .line 170
    iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->mOnValueChangeListener:Lcom/cleanmaster/hpsharelib/base/anim/ValueObject$OnValueChangeListener;

    if-eqz v0, :cond_22

    .line 171
    iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->mOnValueChangeListener:Lcom/cleanmaster/hpsharelib/base/anim/ValueObject$OnValueChangeListener;

    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    iget v2, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->min:F

    iget v3, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->max:F

    invoke-interface {v0, v1, v2, v3}, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject$OnValueChangeListener;->onValueApply(FFF)V

    .line 172
    :cond_22
    const/4 v0, 0x1

    .line 174
    :goto_23
    return v0

    .line 164
    :cond_24
    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->max:F

    cmpl-float v1, v0, v1

    if-lez v1, :cond_b

    .line 165
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->max:F

    goto :goto_b

    .line 174
    :cond_2d
    const/4 v0, 0x0

    goto :goto_23
.end method

.method public distance()F
    .registers 3

    .prologue
    .line 111
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endValue:F

    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startValue:F

    sub-float/2addr v0, v1

    return v0
.end method

.method public duration()F
    .registers 3

    .prologue
    .line 115
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endTime:F

    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startTime:F

    sub-float/2addr v0, v1

    return v0
.end method

.method public getK()F
    .registers 4

    .prologue
    .line 119
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startValue:F

    sub-float/2addr v0, v1

    iget v1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endValue:F

    iget v2, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startValue:F

    sub-float/2addr v1, v2

    div-float/2addr v0, v1

    .line 120
    return v0
.end method

.method public getMax()F
    .registers 2

    .prologue
    .line 145
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->max:F

    return v0
.end method

.method public getMin()F
    .registers 2

    .prologue
    .line 141
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->min:F

    return v0
.end method

.method public getStep()I
    .registers 2

    .prologue
    .line 135
    const/4 v0, 0x0

    return v0
.end method

.method public getValue()F
    .registers 2

    .prologue
    .line 130
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    return v0
.end method

.method public inPeriod(F)Z
    .registers 3

    .prologue
    .line 107
    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startTime:F

    cmpg-float v0, v0, p1

    if-gtz v0, :cond_e

    iget v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endTime:F

    cmpg-float v0, p1, v0

    if-gtz v0, :cond_e

    const/4 v0, 0x1

    :goto_d
    return v0

    :cond_e
    const/4 v0, 0x0

    goto :goto_d
.end method

.method public initAnim(FFFF)V
    .registers 5

    .prologue
    .line 45
    iput p1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startValue:F

    .line 46
    iput p2, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endValue:F

    .line 47
    iput p3, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startTime:F

    .line 48
    iput p4, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endTime:F

    .line 49
    return-void
.end method

.method public initAnim(FFFFF)V
    .registers 8

    .prologue
    .line 53
    sub-float v0, p2, p1

    div-float/2addr v0, p4

    invoke-static {v0}, Ljava/lang/Math;->abs(F)F

    move-result v0

    float-to-int v0, v0

    int-to-float v0, v0

    .line 54
    cmpg-float v1, v0, p5

    if-gez v1, :cond_18

    .line 57
    :goto_d
    iput p1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startValue:F

    .line 58
    iput p2, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endValue:F

    .line 59
    iput p3, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startTime:F

    .line 60
    add-float v0, p3, p5

    iput v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endTime:F

    .line 61
    return-void

    :cond_18
    move p5, v0

    goto :goto_d
.end method

.method public setClipValue(FF)V
    .registers 5

    .prologue
    .line 154
    iput p1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->min:F

    .line 155
    iput p2, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->max:F

    .line 156
    add-float v0, p1, p2

    const/high16 v1, 0x40000000    # 2.0f

    div-float/2addr v0, v1

    iput v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->middle:F

    .line 157
    return-void
.end method

.method public setOnValueChangeListener(Lcom/cleanmaster/hpsharelib/base/anim/ValueObject$OnValueChangeListener;)V
    .registers 2

    .prologue
    .line 70
    iput-object p1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->mOnValueChangeListener:Lcom/cleanmaster/hpsharelib/base/anim/ValueObject$OnValueChangeListener;

    .line 71
    return-void
.end method

.method public setValue(F)V
    .registers 2

    .prologue
    .line 125
    iput p1, p0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->value:F

    .line 126
    return-void
.end method