package com.seewo.libshid.devices;

import a.b.c.a.a;
import android.util.Log;
import com.seewo.libshid.HID;
import com.seewo.libshid.util.BaseThread;

/* JADX INFO: loaded from: classes.dex */
public abstract class AbstractSmartPen {
    public static final String TAG = "SmartPen";
    public int mFD;
    public boolean mPreviousStatus = false;
    private ReadThread mReadThread;
    public SmartPenDataCallBack mSmartPenDataCallBack;
    public HID mhid;

    public class ReadThread extends BaseThread {
        public int offset;

        public ReadThread(int i2) {
            this.offset = -1;
            this.offset = i2;
        }

        @Override // com.seewo.libshid.util.BaseThread, java.lang.Thread, java.lang.Runnable
        public void run() {
            super.run();
            while (this.mIsRunning) {
                AbstractSmartPen abstractSmartPen = AbstractSmartPen.this;
                abstractSmartPen.resolveData(abstractSmartPen.mFD);
            }
        }
    }

    public class SPData {
        public int key;
        public boolean keyStatus;
        public int pressure;

        public SPData() {
        }

        public String toString() {
            StringBuilder sbC = a.C("key: ");
            sbC.append(this.key);
            sbC.append(" keyStatus: ");
            sbC.append(this.keyStatus);
            sbC.append(" pressure: ");
            sbC.append(this.pressure);
            return sbC.toString();
        }
    }

    public static abstract class SmartPenDataCallBack {
        public void getKey(SPData sPData) {
        }
    }

    public AbstractSmartPen(int i2, int i3) {
        Log.d(TAG, "AbstractSmartPen Constructor");
        HID hid = new HID();
        this.mhid = hid;
        hid.setVID(i3);
        this.mhid.setPID(i2);
    }

    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() {
        if (this.mFD != -1) {
            StringBuilder sbC = a.C("hasHID closeFD: ");
            sbC.append(this.mFD);
            Log.d(TAG, sbC.toString());
            this.mhid.closeFD(this.mFD);
        }
        int iFindDev = this.mhid.findDev();
        this.mFD = iFindDev;
        if (iFindDev != -1) {
            return true;
        }
        Log.d(TAG, "don't have hid");
        return false;
    }

    public abstract void pairing();

    public abstract void resolveData(int i2);

    public void setCallback(SmartPenDataCallBack smartPenDataCallBack) {
        this.mSmartPenDataCallBack = smartPenDataCallBack;
    }

    public boolean start() {
        Log.d(TAG, "Call start()");
        this.mFD = this.mhid.findDev();
        StringBuilder sbC = a.C("mFD: ");
        sbC.append(this.mFD);
        Log.d(TAG, sbC.toString());
        if (this.mFD == -1) {
            return false;
        }
        ReadThread readThread = this.mReadThread;
        if (readThread != null && !readThread.isRunning()) {
            this.mReadThread = null;
        }
        ReadThread readThread2 = new ReadThread(this.mFD);
        this.mReadThread = readThread2;
        readThread2.start();
        return true;
    }
}
