ViEAndroidGLES20$a.smali
.class final Lorg/webrtc/videoengine/ViEAndroidGLES20$a;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroid/opengl/GLSurfaceView$EGLConfigChooser;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lorg/webrtc/videoengine/ViEAndroidGLES20;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = "a"
.end annotation
# static fields
.field private static g:I = 0x4
.field private static h:[I
# instance fields
.field protected a:I
.field protected b:I
.field protected c:I
.field protected d:I
.field protected e:I
.field protected f:I
.field private i:[I
# direct methods
.method static constructor <clinit>()V
.registers 4
const/16 v0, 0x9
new-array v0, v0, [I
const/4 v1, 0x0
const/16 v2, 0x3024
aput v2, v0, v1
const/4 v1, 0x4
const/4 v2, 0x1
aput v1, v0, v2
const/4 v2, 0x2
const/16 v3, 0x3023
aput v3, v0, v2
const/4 v2, 0x3
aput v1, v0, v2
const/16 v2, 0x3022
aput v2, v0, v1
const/4 v2, 0x5
aput v1, v0, v2
const/4 v2, 0x6
const/16 v3, 0x3040
aput v3, v0, v2
const/4 v2, 0x7
aput v1, v0, v2
const/16 v1, 0x8
const/16 v2, 0x3038
aput v2, v0, v1
.line 124
sput-object v0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->h:[I
return-void
.end method
.method public constructor <init>(IIIIII)V
.registers 8
.line 111
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x1
new-array v0, v0, [I
.line 295
iput-object v0, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->i:[I
.line 112
iput p1, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->a:I
.line 113
iput p2, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->b:I
.line 114
iput p3, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->c:I
.line 115
iput p4, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->d:I
.line 116
iput p5, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->e:I
.line 117
iput p6, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->f:I
return-void
.end method
.method private a(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;I)I
.registers 6
.line 187
iget-object v0, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->i:[I
invoke-interface {p1, p2, p3, p4, v0}, Ljavax/microedition/khronos/egl/EGL10;->eglGetConfigAttrib(Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;I[I)Z
move-result p1
const/4 p2, 0x0
if-eqz p1, :cond_e
.line 188
iget-object p1, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->i:[I
aget p1, p1, p2
return p1
:cond_e
return p2
.end method
.method private a(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;[Ljavax/microedition/khronos/egl/EGLConfig;)Ljavax/microedition/khronos/egl/EGLConfig;
.registers 12
.line 158
array-length v0, p3
const/4 v1, 0x0
:goto_2
if-ge v1, v0, :cond_46
aget-object v2, p3, v1
const/16 v3, 0x3025
.line 159
invoke-direct {p0, p1, p2, v2, v3}, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->a(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;I)I
move-result v3
const/16 v4, 0x3026
.line 161
invoke-direct {p0, p1, p2, v2, v4}, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->a(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;I)I
move-result v4
.line 165
iget v5, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->e:I
if-lt v3, v5, :cond_43
iget v3, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->f:I
if-lt v4, v3, :cond_43
const/16 v3, 0x3024
.line 169
invoke-direct {p0, p1, p2, v2, v3}, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->a(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;I)I
move-result v3
const/16 v4, 0x3023
.line 171
invoke-direct {p0, p1, p2, v2, v4}, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->a(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;I)I
move-result v4
const/16 v5, 0x3022
.line 173
invoke-direct {p0, p1, p2, v2, v5}, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->a(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;I)I
move-result v5
const/16 v6, 0x3021
.line 175
invoke-direct {p0, p1, p2, v2, v6}, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->a(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;I)I
move-result v6
.line 178
iget v7, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->a:I
if-ne v3, v7, :cond_43
iget v3, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->b:I
if-ne v4, v3, :cond_43
iget v3, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->c:I
if-ne v5, v3, :cond_43
iget v3, p0, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->d:I
if-ne v6, v3, :cond_43
return-object v2
:cond_43
add-int/lit8 v1, v1, 0x1
goto :goto_2
:cond_46
const/4 p1, 0x0
return-object p1
.end method
# virtual methods
.method public final chooseConfig(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;)Ljavax/microedition/khronos/egl/EGLConfig;
.registers 11
const/4 v0, 0x1
new-array v0, v0, [I
.line 137
sget-object v3, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->h:[I
const/4 v4, 0x0
const/4 v5, 0x0
move-object v1, p1
move-object v2, p2
move-object v6, v0
invoke-interface/range {v1 .. v6}, Ljavax/microedition/khronos/egl/EGL10;->eglChooseConfig(Ljavax/microedition/khronos/egl/EGLDisplay;[I[Ljavax/microedition/khronos/egl/EGLConfig;I[I)Z
const/4 v1, 0x0
.line 139
aget v5, v0, v1
if-lez v5, :cond_22
.line 146
new-array v7, v5, [Ljavax/microedition/khronos/egl/EGLConfig;
.line 147
sget-object v3, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->h:[I
move-object v1, p1
move-object v2, p2
move-object v4, v7
move-object v6, v0
invoke-interface/range {v1 .. v6}, Ljavax/microedition/khronos/egl/EGL10;->eglChooseConfig(Ljavax/microedition/khronos/egl/EGLDisplay;[I[Ljavax/microedition/khronos/egl/EGLConfig;I[I)Z
.line 153
invoke-direct {p0, p1, p2, v7}, Lorg/webrtc/videoengine/ViEAndroidGLES20$a;->a(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;[Ljavax/microedition/khronos/egl/EGLConfig;)Ljavax/microedition/khronos/egl/EGLConfig;
move-result-object p1
return-object p1
.line 142
:cond_22
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string p2, "No configs match configSpec"
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method