a$a.smali
.class public final Lv7/a$a;
.super Ljava/lang/Object;
.source "GlProgram.kt"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lv7/a;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "a"
.end annotation
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public synthetic constructor <init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
.registers 2
invoke-direct {p0}, Lv7/a$a;-><init>()V
return-void
.end method
# virtual methods
.method public final a(ILjava/lang/String;)I
.registers 7
invoke-static {p1}, Landroid/opengl/GLES20;->glCreateShader(I)I
move-result v0
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "glCreateShader type="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Ls7/a;->a(Ljava/lang/String;)V
invoke-static {v0, p2}, Landroid/opengl/GLES20;->glShaderSource(ILjava/lang/String;)V
invoke-static {v0}, Landroid/opengl/GLES20;->glCompileShader(I)V
const/4 v1, 0x1
new-array v1, v1, [I
const/4 v2, 0x0
const v3, 0x8b81
invoke-static {v0, v3, v1, v2}, Landroid/opengl/GLES20;->glGetShaderiv(II[II)V
aget v1, v1, v2
if-eqz v1, :cond_2d
return v0
:cond_2d
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Could not compile shader "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p1, ": "
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {v0}, Landroid/opengl/GLES20;->glGetShaderInfoLog(I)Ljava/lang/String;
move-result-object p1
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, " source: "
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {v0}, Landroid/opengl/GLES20;->glDeleteShader(I)V
new-instance p2, Ljava/lang/RuntimeException;
invoke-direct {p2, p1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p2
.end method
.method public final a(Ljava/lang/String;Ljava/lang/String;)I
.registers 6
.annotation runtime Lkotlin/jvm/JvmStatic;
.end annotation
const v0, 0x8b30
invoke-virtual {p0, v0, p2}, Lv7/a$a;->a(ILjava/lang/String;)I
move-result p2
if-eqz p2, :cond_6b
const v0, 0x8b31
invoke-virtual {p0, v0, p1}, Lv7/a$a;->a(ILjava/lang/String;)I
move-result p1
if-eqz p1, :cond_63
invoke-static {}, Landroid/opengl/GLES20;->glCreateProgram()I
move-result v0
const-string v1, "glCreateProgram"
invoke-static {v1}, Ls7/a;->a(Ljava/lang/String;)V
if-eqz v0, :cond_5b
invoke-static {v0, p1}, Landroid/opengl/GLES20;->glAttachShader(II)V
const-string p1, "glAttachShader"
invoke-static {p1}, Ls7/a;->a(Ljava/lang/String;)V
invoke-static {v0, p2}, Landroid/opengl/GLES20;->glAttachShader(II)V
invoke-static {p1}, Ls7/a;->a(Ljava/lang/String;)V
invoke-static {v0}, Landroid/opengl/GLES20;->glLinkProgram(I)V
const/4 p1, 0x1
new-array p2, p1, [I
const v1, 0x8b82
const/4 v2, 0x0
invoke-static {v0, v1, p2, v2}, Landroid/opengl/GLES20;->glGetProgramiv(II[II)V
aget p2, p2, v2
if-ne p2, p1, :cond_3d
return v0
:cond_3d
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string p2, "Could not link program: "
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {v0}, Landroid/opengl/GLES20;->glGetProgramInfoLog(I)Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {v0}, Landroid/opengl/GLES20;->glDeleteProgram(I)V
new-instance p2, Ljava/lang/RuntimeException;
invoke-direct {p2, p1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p2
:cond_5b
new-instance p1, Ljava/lang/RuntimeException;
const-string p2, "Could not create program"
invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p1
:cond_63
new-instance p1, Ljava/lang/RuntimeException;
const-string p2, "Could not load vertex shader"
invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p1
:cond_6b
new-instance p1, Ljava/lang/RuntimeException;
const-string p2, "Could not load fragment shader"
invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p1
.end method