l.smali

.class public Lh7/l;
.super Lg7/a;
.source "HueFilter.java"

# interfaces
.implements Lg7/e;


# instance fields
.field public i:F

.field public j:I


# direct methods
.method static constructor <clinit>()V
    .registers 1

    return-void
.end method

.method public constructor <init>()V
    .registers 2

    invoke-direct {p0}, Lg7/a;-><init>()V

    const/4 v0, 0x0

    iput v0, p0, Lh7/l;->i:F

    const/4 v0, -0x1

    iput v0, p0, Lh7/l;->j:I

    return-void
.end method


# virtual methods
.method public a(I)V
    .registers 3

    invoke-super {p0, p1}, Lg7/a;->a(I)V

    const-string v0, "hue"

    invoke-static {p1, v0}, Landroid/opengl/GLES20;->glGetUniformLocation(ILjava/lang/String;)I

    move-result p1

    iput p1, p0, Lh7/l;->j:I

    invoke-static {p1, v0}, Ls7/a;->a(ILjava/lang/String;)V

    return-void
.end method

.method public b(F)V
    .registers 3

    const/high16 v0, 0x43b40000    # 360.0f

    mul-float p1, p1, v0

    invoke-virtual {p0, p1}, Lh7/l;->c(F)V

    return-void
.end method

.method public b(J[F)V
    .registers 4
    .param p1    # J
        .annotation build Landroidx/annotation/NonNull;
        .end annotation
    .end param

    invoke-super {p0, p1, p2, p3}, Lg7/a;->b(J[F)V

    iget p1, p0, Lh7/l;->i:F

    const/high16 p2, 0x42340000    # 45.0f

    sub-float/2addr p1, p2

    div-float/2addr p1, p2

    const/high16 p2, 0x3f000000    # 0.5f

    add-float/2addr p1, p2

    const/high16 p2, -0x40800000    # -1.0f

    mul-float p1, p1, p2

    iget p2, p0, Lh7/l;->j:I

    invoke-static {p2, p1}, Landroid/opengl/GLES20;->glUniform1f(IF)V

    const-string p1, "glUniform1f"

    invoke-static {p1}, Ls7/a;->a(Ljava/lang/String;)V

    return-void
.end method

.method public c()Ljava/lang/String;
    .registers 2
    .annotation build Landroidx/annotation/NonNull;
    .end annotation

    const-string v0, "#extension GL_OES_EGL_image_external : require\nprecision mediump float;\nvarying vec2 vTextureCoord;\nuniform samplerExternalOES sTexture;\nuniform float hue;\nvoid main() {\n  vec4 kRGBToYPrime = vec4 (0.299, 0.587, 0.114, 0.0);\n  vec4 kRGBToI = vec4 (0.595716, -0.274453, -0.321263, 0.0);\n  vec4 kRGBToQ = vec4 (0.211456, -0.522591, 0.31135, 0.0);\n  vec4 kYIQToR = vec4 (1.0, 0.9563, 0.6210, 0.0);\n  vec4 kYIQToG = vec4 (1.0, -0.2721, -0.6474, 0.0);\n  vec4 kYIQToB = vec4 (1.0, -1.1070, 1.7046, 0.0);\n  vec4 color = texture2D(sTexture, vTextureCoord);\n  float YPrime = dot(color, kRGBToYPrime);\n  float I = dot(color, kRGBToI);\n  float Q = dot(color, kRGBToQ);\n  float chroma = sqrt (I * I + Q * Q);\n  Q = chroma * sin (hue);\n  I = chroma * cos (hue);\n  vec4 yIQ = vec4 (YPrime, I, Q, 0.0);\n  color.r = dot (yIQ, kYIQToR);\n  color.g = dot (yIQ, kYIQToG);\n  color.b = dot (yIQ, kYIQToB);\n  gl_FragColor = color;\n}\n"

    return-object v0
.end method

.method public c(F)V
    .registers 3

    const/high16 v0, 0x43b40000    # 360.0f

    rem-float/2addr p1, v0

    iput p1, p0, Lh7/l;->i:F

    return-void
.end method

.method public d()F
    .registers 3

    invoke-virtual {p0}, Lh7/l;->g()F

    move-result v0

    const/high16 v1, 0x43b40000    # 360.0f

    div-float/2addr v0, v1

    return v0
.end method

.method public g()F
    .registers 2

    iget v0, p0, Lh7/l;->i:F

    return v0
.end method

.method public onDestroy()V
    .registers 2

    invoke-super {p0}, Lg7/a;->onDestroy()V

    const/4 v0, -0x1

    iput v0, p0, Lh7/l;->j:I

    return-void
.end method