MetachatSceneImpl.smali 
.class public Lio/agora/metachat/internal/MetachatSceneImpl;
.super Lio/agora/metachat/IMetachatScene;
# static fields
.field private static final TAG:Ljava/lang/String; = "MetachatSceneImpl"
# instance fields
.field private final mLocalUserAvatar:Lio/agora/metachat/ILocalUserAvatar;
.field private mNativeHandle:J
# direct methods
.method static constructor <clinit>()V
    .registers 0
    return-void
.end method
.method constructor <init>(J)V
    .registers 5
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "nativeHandle"
        }
    .end annotation
    invoke-direct {p0}, Lio/agora/metachat/IMetachatScene;-><init>()V
    const-wide/16 v0, 0x0
    iput-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    iput-wide p1, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    new-instance v0, Lio/agora/metachat/internal/LocalUserAvatarImpl;
    invoke-direct {p0, p1, p2}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeGetLocalUserAvatar(J)J
    move-result-wide p1
    invoke-direct {v0, p1, p2}, Lio/agora/metachat/internal/LocalUserAvatarImpl;-><init>(J)V
    iput-object v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mLocalUserAvatar:Lio/agora/metachat/ILocalUserAvatar;
    return-void
.end method
.method private native nativeAddEventHandler(JLjava/lang/Object;)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid",
            "handler"
        }
    .end annotation
.end method
.method private static native nativeDestroy(J)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "handle"
        }
    .end annotation
.end method
.method private native nativeEnableUserPositionNotification(JZ)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid",
            "enable"
        }
    .end annotation
.end method
.method private native nativeEnableVideoDisplay(JLjava/lang/String;Z)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid",
            "displayId",
            "enable"
        }
    .end annotation
.end method
.method private native nativeEnterScene(JLio/agora/metachat/EnterSceneConfig;)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid",
            "config"
        }
    .end annotation
.end method
.method private native nativeEnumerateVideoDisplays(J)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid"
        }
    .end annotation
.end method
.method private native nativeGetLocalUserAvatar(J)J
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid"
        }
    .end annotation
.end method
.method private native nativeLeaveScene(J)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid"
        }
    .end annotation
.end method
.method private native nativePushAgoraVideoFrameToDisplay(JLjava/lang/String;I[BIIJ)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0,
            0x0,
            0x0,
            0x0,
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid",
            "displayId",
            "format",
            "buf",
            "stride",
            "height",
            "timestamp"
        }
    .end annotation
.end method
.method private native nativePushVideoFrameToDisplay(JLjava/lang/String;Lio/agora/base/VideoFrame;)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid",
            "displayId",
            "frame"
        }
    .end annotation
.end method
.method private native nativeRemoveEventHandler(JLjava/lang/Object;)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid",
            "handler"
        }
    .end annotation
.end method
.method private native nativeSendMessageToScene(J[B)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid",
            "message"
        }
    .end annotation
.end method
.method private native nativeSetSceneParameters(JLjava/lang/String;)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMetachatSceneAndroid",
            "jsonParam"
        }
    .end annotation
.end method
# virtual methods
.method public addEventHandler(Lio/agora/metachat/IMetachatSceneEventHandler;)I
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "eventHandler"
        }
    .end annotation
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v2, v0, v2
    if-nez v2, :cond_a
    const/4 p1, -0x7
    return p1
    :cond_a
    invoke-direct {p0, v0, v1, p1}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeAddEventHandler(JLjava/lang/Object;)I
    move-result p1
    return p1
.end method
.method public enableUserPositionNotification(Z)I
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "enable"
        }
    .end annotation
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v2, v0, v2
    if-nez v2, :cond_a
    const/4 p1, -0x7
    return p1
    :cond_a
    invoke-direct {p0, v0, v1, p1}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeEnableUserPositionNotification(JZ)I
    move-result p1
    return p1
.end method
.method public enableVideoDisplay(Ljava/lang/String;Z)I
    .registers 7
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "displayId",
            "enable"
        }
    .end annotation
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v2, v0, v2
    if-nez v2, :cond_a
    const/4 p1, -0x7
    return p1
    :cond_a
    invoke-direct {p0, v0, v1, p1, p2}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeEnableVideoDisplay(JLjava/lang/String;Z)I
    move-result p1
    return p1
.end method
.method public enterScene(Lio/agora/metachat/EnterSceneConfig;)I
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "config"
        }
    .end annotation
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v2, v0, v2
    if-nez v2, :cond_a
    const/4 p1, -0x7
    return p1
    :cond_a
    invoke-direct {p0, v0, v1, p1}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeEnterScene(JLio/agora/metachat/EnterSceneConfig;)I
    move-result p1
    return p1
.end method
.method public enumerateVideoDisplays()I
    .registers 5
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v2, v0, v2
    if-nez v2, :cond_a
    const/4 v0, -0x7
    return v0
    :cond_a
    invoke-direct {p0, v0, v1}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeEnumerateVideoDisplays(J)I
    move-result v0
    return v0
.end method
.method public getLocalUserAvatar()Lio/agora/metachat/ILocalUserAvatar;
    .registers 2
    iget-object v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mLocalUserAvatar:Lio/agora/metachat/ILocalUserAvatar;
    return-object v0
.end method
.method public leaveScene()I
    .registers 5
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v2, v0, v2
    if-nez v2, :cond_a
    const/4 v0, -0x7
    return v0
    :cond_a
    invoke-direct {p0, v0, v1}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeLeaveScene(J)I
    move-result v0
    return v0
.end method
.method public pushVideoFrameToDisplay(Ljava/lang/String;Lio/agora/base/VideoFrame;)I
    .registers 7
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "displayId",
            "frame"
        }
    .end annotation
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v2, v0, v2
    if-nez v2, :cond_a
    const/4 p1, -0x7
    return p1
    :cond_a
    invoke-direct {p0, v0, v1, p1, p2}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativePushVideoFrameToDisplay(JLjava/lang/String;Lio/agora/base/VideoFrame;)I
    move-result p1
    return p1
.end method
.method public pushVideoFrameToDisplay(Ljava/lang/String;Lio/agora/rtc2/video/AgoraVideoFrame;)I
    .registers 13
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "displayId",
            "frame"
        }
    .end annotation
    iget-wide v1, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v3, 0x0
    cmp-long v0, v1, v3
    if-nez v0, :cond_a
    const/4 p1, -0x7
    return p1
    :cond_a
    iget v4, p2, Lio/agora/rtc2/video/AgoraVideoFrame;->format:I
    iget-object v5, p2, Lio/agora/rtc2/video/AgoraVideoFrame;->buf:[B
    iget v6, p2, Lio/agora/rtc2/video/AgoraVideoFrame;->stride:I
    iget v7, p2, Lio/agora/rtc2/video/AgoraVideoFrame;->height:I
    iget-wide v8, p2, Lio/agora/rtc2/video/AgoraVideoFrame;->timeStamp:J
    move-object v0, p0
    move-object v3, p1
    invoke-direct/range {v0 .. v9}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativePushAgoraVideoFrameToDisplay(JLjava/lang/String;I[BIIJ)I
    move-result p1
    return p1
.end method
.method public release()I
    .registers 6
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v4, v0, v2
    if-eqz v4, :cond_d
    invoke-static {v0, v1}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeDestroy(J)I
    iput-wide v2, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    :cond_d
    const/4 v0, 0x0
    return v0
.end method
.method public removeEventHandler(Lio/agora/metachat/IMetachatSceneEventHandler;)I
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "eventHandler"
        }
    .end annotation
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v2, v0, v2
    if-nez v2, :cond_a
    const/4 p1, -0x7
    return p1
    :cond_a
    invoke-direct {p0, v0, v1, p1}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeRemoveEventHandler(JLjava/lang/Object;)I
    move-result p1
    return p1
.end method
.method public sendMessageToScene([B)I
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "message"
        }
    .end annotation
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v2, v0, v2
    if-nez v2, :cond_a
    const/4 p1, -0x7
    return p1
    :cond_a
    invoke-direct {p0, v0, v1, p1}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeSendMessageToScene(J[B)I
    move-result p1
    return p1
.end method
.method public setSceneParameters(Ljava/lang/String;)I
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "jsonParam"
        }
    .end annotation
    iget-wide v0, p0, Lio/agora/metachat/internal/MetachatSceneImpl;->mNativeHandle:J
    const-wide/16 v2, 0x0
    cmp-long v2, v0, v2
    if-nez v2, :cond_a
    const/4 p1, -0x7
    return p1
    :cond_a
    invoke-direct {p0, v0, v1, p1}, Lio/agora/metachat/internal/MetachatSceneImpl;->nativeSetSceneParameters(JLjava/lang/String;)I
    move-result p1
    return p1
.end method