abstract class android.opengl.GLSurfaceView$BaseConfigChooser implements android.opengl.GLSurfaceView$EGLConfigChooser
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: android.opengl.GLSurfaceView$BaseConfigChooser
super_class: java.lang.Object
{
protected int[] mConfigSpec;
descriptor: [I
flags: (0x0004) ACC_PROTECTED
final android.opengl.GLSurfaceView this$0;
descriptor: Landroid/opengl/GLSurfaceView;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(android.opengl.GLSurfaceView, int[]);
descriptor: (Landroid/opengl/GLSurfaceView;[I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 2 0: aload 0
aload 1
putfield android.opengl.GLSurfaceView$BaseConfigChooser.this$0:Landroid/opengl/GLSurfaceView;
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 0
aload 2
invokevirtual android.opengl.GLSurfaceView$BaseConfigChooser.filterConfigSpec:([I)[I
putfield android.opengl.GLSurfaceView$BaseConfigChooser.mConfigSpec:[I
2: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/opengl/GLSurfaceView$BaseConfigChooser;
0 3 2 configSpec [I
MethodParameters:
Name Flags
this$0 final
configSpec
public javax.microedition.khronos.egl.EGLConfig chooseConfig(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay);
descriptor: (Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;)Ljavax/microedition/khronos/egl/EGLConfig;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iconst_1
newarray 10
astore 3
start local 3 1: aload 1
aload 2
aload 0
getfield android.opengl.GLSurfaceView$BaseConfigChooser.mConfigSpec:[I
aconst_null
iconst_0
2: aload 3
3: invokeinterface javax.microedition.khronos.egl.EGL10.eglChooseConfig:(Ljavax/microedition/khronos/egl/EGLDisplay;[I[Ljavax/microedition/khronos/egl/EGLConfig;I[I)Z
4: ifne 6
5: new java.lang.IllegalArgumentException
dup
ldc "eglChooseConfig failed"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: int[]
StackMap stack:
aload 3
iconst_0
iaload
istore 4
start local 4 7: iload 4
ifgt 11
8: new java.lang.IllegalArgumentException
dup
9: ldc "No configs match configSpec"
10: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals: int
StackMap stack:
iload 4
anewarray javax.microedition.khronos.egl.EGLConfig
astore 5
start local 5 12: aload 1
aload 2
aload 0
getfield android.opengl.GLSurfaceView$BaseConfigChooser.mConfigSpec:[I
aload 5
iload 4
13: aload 3
14: invokeinterface javax.microedition.khronos.egl.EGL10.eglChooseConfig:(Ljavax/microedition/khronos/egl/EGLDisplay;[I[Ljavax/microedition/khronos/egl/EGLConfig;I[I)Z
15: ifne 17
16: new java.lang.IllegalArgumentException
dup
ldc "eglChooseConfig#2 failed"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
17: StackMap locals: javax.microedition.khronos.egl.EGLConfig[]
StackMap stack:
aload 0
aload 1
aload 2
aload 5
invokevirtual android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig:(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;[Ljavax/microedition/khronos/egl/EGLConfig;)Ljavax/microedition/khronos/egl/EGLConfig;
astore 6
start local 6 18: aload 6
ifnonnull 20
19: new java.lang.IllegalArgumentException
dup
ldc "No config chosen"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
20: StackMap locals: javax.microedition.khronos.egl.EGLConfig
StackMap stack:
aload 6
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Landroid/opengl/GLSurfaceView$BaseConfigChooser;
0 21 1 egl Ljavax/microedition/khronos/egl/EGL10;
0 21 2 display Ljavax/microedition/khronos/egl/EGLDisplay;
1 21 3 num_config [I
7 21 4 numConfigs I
12 21 5 configs [Ljavax/microedition/khronos/egl/EGLConfig;
18 21 6 config Ljavax/microedition/khronos/egl/EGLConfig;
MethodParameters:
Name Flags
egl
display
abstract javax.microedition.khronos.egl.EGLConfig chooseConfig(javax.microedition.khronos.egl.EGL10, javax.microedition.khronos.egl.EGLDisplay, javax.microedition.khronos.egl.EGLConfig[]);
descriptor: (Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLDisplay;[Ljavax/microedition/khronos/egl/EGLConfig;)Ljavax/microedition/khronos/egl/EGLConfig;
flags: (0x0400) ACC_ABSTRACT
MethodParameters:
Name Flags
egl
display
configs
private int[] filterConfigSpec(int[]);
descriptor: ([I)[I
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield android.opengl.GLSurfaceView$BaseConfigChooser.this$0:Landroid/opengl/GLSurfaceView;
getfield android.opengl.GLSurfaceView.mEGLContextClientVersion:I
iconst_2
if_icmpeq 2
aload 0
getfield android.opengl.GLSurfaceView$BaseConfigChooser.this$0:Landroid/opengl/GLSurfaceView;
getfield android.opengl.GLSurfaceView.mEGLContextClientVersion:I
iconst_3
if_icmpeq 2
1: aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 1
arraylength
istore 2
start local 2 3: iload 2
iconst_2
iadd
newarray 10
astore 3
start local 3 4: aload 1
iconst_0
aload 3
iconst_0
iload 2
iconst_1
isub
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: aload 3
iload 2
iconst_1
isub
sipush 12352
iastore
6: aload 0
getfield android.opengl.GLSurfaceView$BaseConfigChooser.this$0:Landroid/opengl/GLSurfaceView;
getfield android.opengl.GLSurfaceView.mEGLContextClientVersion:I
iconst_2
if_icmpne 9
7: aload 3
iload 2
iconst_4
iastore
8: goto 10
9: StackMap locals: int int[]
StackMap stack:
aload 3
iload 2
bipush 64
iastore
10: StackMap locals:
StackMap stack:
aload 3
iload 2
iconst_1
iadd
sipush 12344
iastore
11: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Landroid/opengl/GLSurfaceView$BaseConfigChooser;
0 12 1 configSpec [I
3 12 2 len I
4 12 3 newConfigSpec [I
MethodParameters:
Name Flags
configSpec
}
SourceFile: "GLSurfaceView.java"
NestHost: android.opengl.GLSurfaceView
InnerClasses:
private abstract BaseConfigChooser = android.opengl.GLSurfaceView$BaseConfigChooser of android.opengl.GLSurfaceView
public abstract EGLConfigChooser = android.opengl.GLSurfaceView$EGLConfigChooser of android.opengl.GLSurfaceView