mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2025-01-09 13:43:22 +00:00
216 lines
7.1 KiB
Smali
216 lines
7.1 KiB
Smali
.class Lorg/webrtc/EglBase10Impl$Context;
|
|
.super Ljava/lang/Object;
|
|
.source "EglBase10Impl.java"
|
|
|
|
# interfaces
|
|
.implements Lorg/webrtc/EglBase10$Context;
|
|
|
|
|
|
# annotations
|
|
.annotation system Ldalvik/annotation/EnclosingClass;
|
|
value = Lorg/webrtc/EglBase10Impl;
|
|
.end annotation
|
|
|
|
.annotation system Ldalvik/annotation/InnerClass;
|
|
accessFlags = 0xa
|
|
name = "Context"
|
|
.end annotation
|
|
|
|
|
|
# instance fields
|
|
.field private final egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
.field private final eglContext:Ljavax/microedition/khronos/egl/EGLContext;
|
|
|
|
.field private final eglContextConfig:Ljavax/microedition/khronos/egl/EGLConfig;
|
|
|
|
|
|
# direct methods
|
|
.method public constructor <init>(Ljavax/microedition/khronos/egl/EGL10;Ljavax/microedition/khronos/egl/EGLContext;Ljavax/microedition/khronos/egl/EGLConfig;)V
|
|
.locals 0
|
|
|
|
.line 84
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
|
|
iput-object p1, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
iput-object p2, p0, Lorg/webrtc/EglBase10Impl$Context;->eglContext:Ljavax/microedition/khronos/egl/EGLContext;
|
|
|
|
iput-object p3, p0, Lorg/webrtc/EglBase10Impl$Context;->eglContextConfig:Ljavax/microedition/khronos/egl/EGLConfig;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
|
|
# virtual methods
|
|
.method public getNativeEglContext()J
|
|
.locals 10
|
|
|
|
const-string v0, "Failed to make temporary EGL surface active: "
|
|
|
|
iget-object v1, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
.line 53
|
|
invoke-interface {v1}, Ljavax/microedition/khronos/egl/EGL10;->eglGetCurrentContext()Ljavax/microedition/khronos/egl/EGLContext;
|
|
|
|
move-result-object v1
|
|
|
|
iget-object v2, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
.line 54
|
|
invoke-interface {v2}, Ljavax/microedition/khronos/egl/EGL10;->eglGetCurrentDisplay()Ljavax/microedition/khronos/egl/EGLDisplay;
|
|
|
|
move-result-object v2
|
|
|
|
iget-object v3, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
const/16 v4, 0x3059
|
|
|
|
.line 55
|
|
invoke-interface {v3, v4}, Ljavax/microedition/khronos/egl/EGL10;->eglGetCurrentSurface(I)Ljavax/microedition/khronos/egl/EGLSurface;
|
|
|
|
move-result-object v3
|
|
|
|
iget-object v4, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
const/16 v5, 0x305a
|
|
|
|
.line 56
|
|
invoke-interface {v4, v5}, Ljavax/microedition/khronos/egl/EGL10;->eglGetCurrentSurface(I)Ljavax/microedition/khronos/egl/EGLSurface;
|
|
|
|
move-result-object v4
|
|
|
|
.line 59
|
|
sget-object v5, Ljavax/microedition/khronos/egl/EGL10;->EGL_NO_DISPLAY:Ljavax/microedition/khronos/egl/EGLDisplay;
|
|
|
|
if-ne v2, v5, :cond_0
|
|
|
|
iget-object v2, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
.line 60
|
|
sget-object v5, Ljavax/microedition/khronos/egl/EGL10;->EGL_DEFAULT_DISPLAY:Ljava/lang/Object;
|
|
|
|
invoke-interface {v2, v5}, Ljavax/microedition/khronos/egl/EGL10;->eglGetDisplay(Ljava/lang/Object;)Ljavax/microedition/khronos/egl/EGLDisplay;
|
|
|
|
move-result-object v2
|
|
|
|
:cond_0
|
|
const/4 v5, 0x0
|
|
|
|
:try_start_0
|
|
iget-object v6, p0, Lorg/webrtc/EglBase10Impl$Context;->eglContext:Ljavax/microedition/khronos/egl/EGLContext;
|
|
|
|
if-eq v1, v6, :cond_2
|
|
|
|
const/4 v6, 0x1
|
|
|
|
const/16 v7, 0x3057
|
|
|
|
const/16 v8, 0x3056
|
|
|
|
const/16 v9, 0x3038
|
|
|
|
filled-new-array {v7, v6, v8, v6, v9}, [I
|
|
|
|
move-result-object v6
|
|
|
|
iget-object v7, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
iget-object v8, p0, Lorg/webrtc/EglBase10Impl$Context;->eglContextConfig:Ljavax/microedition/khronos/egl/EGLConfig;
|
|
|
|
.line 67
|
|
invoke-interface {v7, v2, v8, v6}, Ljavax/microedition/khronos/egl/EGL10;->eglCreatePbufferSurface(Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLConfig;[I)Ljavax/microedition/khronos/egl/EGLSurface;
|
|
|
|
move-result-object v5
|
|
|
|
iget-object v6, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
iget-object v7, p0, Lorg/webrtc/EglBase10Impl$Context;->eglContext:Ljavax/microedition/khronos/egl/EGLContext;
|
|
|
|
.line 68
|
|
invoke-interface {v6, v2, v5, v5, v7}, Ljavax/microedition/khronos/egl/EGL10;->eglMakeCurrent(Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLSurface;Ljavax/microedition/khronos/egl/EGLSurface;Ljavax/microedition/khronos/egl/EGLContext;)Z
|
|
|
|
move-result v6
|
|
|
|
if-eqz v6, :cond_1
|
|
|
|
goto :goto_0
|
|
|
|
.line 69
|
|
:cond_1
|
|
new-instance v6, Ljava/lang/RuntimeException;
|
|
|
|
new-instance v7, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v7, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
|
|
|
iget-object v0, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
.line 70
|
|
invoke-interface {v0}, Ljavax/microedition/khronos/egl/EGL10;->eglGetError()I
|
|
|
|
move-result v0
|
|
|
|
invoke-virtual {v7, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-direct {v6, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw v6
|
|
|
|
.line 74
|
|
:cond_2
|
|
:goto_0
|
|
invoke-static {}, Lorg/webrtc/EglBase10Impl;->access$000()J
|
|
|
|
move-result-wide v6
|
|
:try_end_0
|
|
.catchall {:try_start_0 .. :try_end_0} :catchall_0
|
|
|
|
if-eqz v5, :cond_3
|
|
|
|
iget-object v0, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
.line 77
|
|
invoke-interface {v0, v2, v3, v4, v1}, Ljavax/microedition/khronos/egl/EGL10;->eglMakeCurrent(Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLSurface;Ljavax/microedition/khronos/egl/EGLSurface;Ljavax/microedition/khronos/egl/EGLContext;)Z
|
|
|
|
iget-object p0, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
.line 79
|
|
invoke-interface {p0, v2, v5}, Ljavax/microedition/khronos/egl/EGL10;->eglDestroySurface(Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLSurface;)Z
|
|
|
|
:cond_3
|
|
return-wide v6
|
|
|
|
:catchall_0
|
|
move-exception v0
|
|
|
|
if-eqz v5, :cond_4
|
|
|
|
iget-object v6, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
.line 77
|
|
invoke-interface {v6, v2, v3, v4, v1}, Ljavax/microedition/khronos/egl/EGL10;->eglMakeCurrent(Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLSurface;Ljavax/microedition/khronos/egl/EGLSurface;Ljavax/microedition/khronos/egl/EGLContext;)Z
|
|
|
|
iget-object p0, p0, Lorg/webrtc/EglBase10Impl$Context;->egl:Ljavax/microedition/khronos/egl/EGL10;
|
|
|
|
.line 79
|
|
invoke-interface {p0, v2, v5}, Ljavax/microedition/khronos/egl/EGL10;->eglDestroySurface(Ljavax/microedition/khronos/egl/EGLDisplay;Ljavax/microedition/khronos/egl/EGLSurface;)Z
|
|
|
|
.line 81
|
|
:cond_4
|
|
throw v0
|
|
.end method
|
|
|
|
.method public getRawContext()Ljavax/microedition/khronos/egl/EGLContext;
|
|
.locals 0
|
|
|
|
iget-object p0, p0, Lorg/webrtc/EglBase10Impl$Context;->eglContext:Ljavax/microedition/khronos/egl/EGLContext;
|
|
|
|
return-object p0
|
|
.end method
|