package com.vacenter.Taurus;

import com.vacenter.Taurus.Device;

/* JADX INFO: loaded from: classes.dex */
public class Engine {
    private long nativeImpl = 0;

    public static class Configuration {
        public Device.DeviceInformation info;
        public String[] networkInterfaceNames;
        public boolean enableBeingControlled = true;
        public boolean enableBeingSearched = true;
        public boolean enableSearch = true;
        public int controlPort = 9898;
        public String logPath = "";
    }

    public interface EngineObserver {
        void onDeviceAdd(Device device);

        void onDeviceRemove(Device device);
    }

    public Engine() {
        System.loadLibrary("Taurus");
    }

    private native long getNativeController();

    public native void addControllerObserver(ControllerObserver controllerObserver);

    public native void addObserver(EngineObserver engineObserver);

    public native long createNativeRtspClient();

    public native long createNativeRtspServer();

    public RtspClient createRtspClient() {
        return new RtspClient(createNativeRtspClient());
    }

    public RtspServer createRtspServer() {
        return new RtspServer(createNativeRtspServer());
    }

    public Controller getController() {
        return new Controller(getNativeController());
    }

    public native Device[] getDevices();

    public native String getVersion();

    public native void initialize(Configuration configuration);

    public native void release();

    public native void releaseNativeRtspClient(long j2);

    public native void releaseNativeRtspServer(long j2);

    public void releaseRtspClient(RtspClient rtspClient) {
        releaseNativeRtspClient(rtspClient.getNativeImpl());
    }

    public void releaseRtspServer(RtspServer rtspServer) {
        releaseNativeRtspServer(rtspServer.getNativeImpl());
    }

    public native int setEngineLogLevel(int i2);

    public native int setEngineLogUdpSink(String str, int i2);
}
