package com.seewo.libshid.devices;

import com.seewo.libshid.HID;
import com.seewo.libshid.util.BaseThread;

/* JADX INFO: loaded from: classes.dex */
public class TouchScreen {
    private byte HEAD_0 = -4;
    private byte HEAD_1 = -91;
    private byte HEAD_2 = -124;
    private byte HEAD_3 = 59;
    private byte HEAD_4 = 0;
    private int mFD;
    private ReadThread mReadThread;
    private TouchScreenCallBack mTouchScreenCallBack;
    private HID mhid;

    public class ReadThread extends BaseThread {
        public ReadThread() {
        }

        public boolean isValidBuffer(byte[] bArr) {
            return bArr != null && bArr[0] == TouchScreen.this.HEAD_0 && bArr[1] == TouchScreen.this.HEAD_1 && bArr[2] == TouchScreen.this.HEAD_2 && bArr[3] == TouchScreen.this.HEAD_3 && bArr[4] == TouchScreen.this.HEAD_4;
        }

        @Override // com.seewo.libshid.util.BaseThread, java.lang.Thread, java.lang.Runnable
        public void run() {
            while (TouchScreen.this.mFD != -1) {
                byte[] bytesWithoutWait = TouchScreen.this.mhid.getBytesWithoutWait(TouchScreen.this.mFD, 64);
                if (isValidBuffer(bytesWithoutWait)) {
                    TouchScreen.this.resolveData(bytesWithoutWait);
                }
            }
        }
    }

    public interface TouchScreenCallBack {
        void getData(byte[] bArr);
    }

    /* JADX INFO: Access modifiers changed from: private */
    public void resolveData(byte[] bArr) {
        TouchScreenCallBack touchScreenCallBack = this.mTouchScreenCallBack;
        if (touchScreenCallBack != null) {
            touchScreenCallBack.getData(bArr);
        }
    }

    public void close() {
        ReadThread readThread = this.mReadThread;
        if (readThread != null) {
            readThread.stopThread();
            this.mReadThread = null;
        }
        int i2 = this.mFD;
        if (i2 != -1) {
            this.mhid.closeFD(i2);
        }
    }

    public boolean hasHID() {
        int iFindDevWithPidRange = this.mhid.findDevWithPidRange(511, 1);
        this.mFD = iFindDevWithPidRange;
        return iFindDevWithPidRange != -1;
    }

    public void setCallback(TouchScreenCallBack touchScreenCallBack) {
        this.mTouchScreenCallBack = touchScreenCallBack;
    }

    public boolean start() {
        HID hid = new HID();
        this.mhid = hid;
        hid.setVID(8183);
        int iFindDevWithPidRange = this.mhid.findDevWithPidRange(511, 1);
        this.mFD = iFindDevWithPidRange;
        if (iFindDevWithPidRange == -1 || this.mReadThread != null) {
            return false;
        }
        ReadThread readThread = new ReadThread();
        this.mReadThread = readThread;
        readThread.start();
        return true;
    }
}
