o.smali
.class public Ljp/co/cyberagent/android/gpuimage/o;
.super Ljp/co/cyberagent/android/gpuimage/g;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.registers 4
const/4 v0, 0x0
.line 1
invoke-direct {p0, v0}, Ljp/co/cyberagent/android/gpuimage/g;-><init>(Ljava/util/List;)V
.line 2
new-instance v0, Ljp/co/cyberagent/android/gpuimage/e;
const-string v1, "attribute vec4 position;\nattribute vec4 inputTextureCoordinate;\n\nconst int GAUSSIAN_SAMPLES = 9;\n\nuniform float texelWidthOffset;\nuniform float texelHeightOffset;\n\nvarying vec2 textureCoordinate;\nvarying vec2 blurCoordinates[GAUSSIAN_SAMPLES];\n\nvoid main()\n{\n\tgl_Position = position;\n\ttextureCoordinate = inputTextureCoordinate.xy;\n\t\n\t// Calculate the positions for the blur\n\tint multiplier = 0;\n\tvec2 blurStep;\n vec2 singleStepOffset = vec2(texelWidthOffset, texelHeightOffset);\n \n\tfor (int i = 0; i < GAUSSIAN_SAMPLES; i++)\n {\n\t\tmultiplier = (i - ((GAUSSIAN_SAMPLES - 1) / 2));\n // Blur in x (horizontal)\n blurStep = float(multiplier) * singleStepOffset;\n\t\tblurCoordinates[i] = inputTextureCoordinate.xy + blurStep;\n\t}\n}\n"
const-string v2, "uniform sampler2D inputImageTexture;\n\nconst lowp int GAUSSIAN_SAMPLES = 9;\n\nvarying highp vec2 textureCoordinate;\nvarying highp vec2 blurCoordinates[GAUSSIAN_SAMPLES];\n\nvoid main()\n{\n\tlowp vec3 sum = vec3(0.0);\n lowp vec4 fragColor=texture2D(inputImageTexture,textureCoordinate);\n\t\n sum += texture2D(inputImageTexture, blurCoordinates[0]).rgb * 0.05;\n sum += texture2D(inputImageTexture, blurCoordinates[1]).rgb * 0.09;\n sum += texture2D(inputImageTexture, blurCoordinates[2]).rgb * 0.12;\n sum += texture2D(inputImageTexture, blurCoordinates[3]).rgb * 0.15;\n sum += texture2D(inputImageTexture, blurCoordinates[4]).rgb * 0.18;\n sum += texture2D(inputImageTexture, blurCoordinates[5]).rgb * 0.15;\n sum += texture2D(inputImageTexture, blurCoordinates[6]).rgb * 0.12;\n sum += texture2D(inputImageTexture, blurCoordinates[7]).rgb * 0.09;\n sum += texture2D(inputImageTexture, blurCoordinates[8]).rgb * 0.05;\n\n\tgl_FragColor = vec4(sum,fragColor.a);\n}"
invoke-direct {v0, v1, v2}, Ljp/co/cyberagent/android/gpuimage/e;-><init>(Ljava/lang/String;Ljava/lang/String;)V
invoke-virtual {p0, v0}, Ljp/co/cyberagent/android/gpuimage/g;->l(Ljp/co/cyberagent/android/gpuimage/e;)V
.line 3
new-instance v0, Ljp/co/cyberagent/android/gpuimage/e;
invoke-direct {v0, v1, v2}, Ljp/co/cyberagent/android/gpuimage/e;-><init>(Ljava/lang/String;Ljava/lang/String;)V
invoke-virtual {p0, v0}, Ljp/co/cyberagent/android/gpuimage/g;->l(Ljp/co/cyberagent/android/gpuimage/e;)V
return-void
.end method
# virtual methods
.method public final f()V
.registers 1
.line 1
invoke-super {p0}, Ljp/co/cyberagent/android/gpuimage/g;->f()V
.line 2
invoke-virtual {p0}, Ljp/co/cyberagent/android/gpuimage/o;->o()V
return-void
.end method
.method public final h(II)V
.registers 3
.line 1
invoke-super {p0, p1, p2}, Ljp/co/cyberagent/android/gpuimage/g;->h(II)V
.line 2
invoke-virtual {p0}, Ljp/co/cyberagent/android/gpuimage/o;->o()V
return-void
.end method
.method public final o()V
.registers 9
.line 1
move-object v0, p0
check-cast v0, Ljp/co/cyberagent/android/gpuimage/i;
.line 2
iget v1, v0, Ljp/co/cyberagent/android/gpuimage/i;->r:F
.line 3
iget-object v2, p0, Ljp/co/cyberagent/android/gpuimage/g;->k:Ljava/util/List;
const/4 v3, 0x0
invoke-interface {v2, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljp/co/cyberagent/android/gpuimage/e;
.line 4
iget v3, v2, Ljp/co/cyberagent/android/gpuimage/e;->d:I
const-string v4, "texelWidthOffset"
.line 5
invoke-static {v3, v4}, Landroid/opengl/GLES20;->glGetUniformLocation(ILjava/lang/String;)I
move-result v3
.line 6
iget v5, v2, Ljp/co/cyberagent/android/gpuimage/e;->d:I
const-string v6, "texelHeightOffset"
.line 7
invoke-static {v5, v6}, Landroid/opengl/GLES20;->glGetUniformLocation(ILjava/lang/String;)I
move-result v5
.line 8
iget v7, p0, Ljp/co/cyberagent/android/gpuimage/e;->h:I
int-to-float v7, v7
div-float/2addr v1, v7
invoke-virtual {v2, v3, v1}, Ljp/co/cyberagent/android/gpuimage/e;->k(IF)V
const/4 v1, 0x0
.line 9
invoke-virtual {v2, v5, v1}, Ljp/co/cyberagent/android/gpuimage/e;->k(IF)V
.line 10
iget v0, v0, Ljp/co/cyberagent/android/gpuimage/i;->r:F
.line 11
iget-object v2, p0, Ljp/co/cyberagent/android/gpuimage/g;->k:Ljava/util/List;
const/4 v3, 0x1
invoke-interface {v2, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljp/co/cyberagent/android/gpuimage/e;
.line 12
iget v3, v2, Ljp/co/cyberagent/android/gpuimage/e;->d:I
.line 13
invoke-static {v3, v4}, Landroid/opengl/GLES20;->glGetUniformLocation(ILjava/lang/String;)I
move-result v3
.line 14
iget v4, v2, Ljp/co/cyberagent/android/gpuimage/e;->d:I
.line 15
invoke-static {v4, v6}, Landroid/opengl/GLES20;->glGetUniformLocation(ILjava/lang/String;)I
move-result v4
.line 16
invoke-virtual {v2, v3, v1}, Ljp/co/cyberagent/android/gpuimage/e;->k(IF)V
.line 17
iget v1, p0, Ljp/co/cyberagent/android/gpuimage/e;->i:I
int-to-float v1, v1
div-float/2addr v0, v1
invoke-virtual {v2, v4, v0}, Ljp/co/cyberagent/android/gpuimage/e;->k(IF)V
return-void
.end method