HardWareDll.java 1.82 KB
package cn.csbr.app.hardware;

import cn.csbr.app.hardware.callback.RfidHardWareCallback;
import cn.csbr.app.hardware.callback.ValidCardUserCallback;

import com.sun.jna.Library;
import com.sun.jna.Native;

/**
 * RFID硬件调用接口。
 *
 * @author fenglinz
 * @since 2018-9-20
 */
public interface HardWareDll extends Library, RfidHardWareApi {

    public static void main(String[] args) {
        System.out.println(HardWareDll.instance);
    }
    /** 获取RFID硬件调用代理对象 */
    HardWareDll instance = (HardWareDll) Native.loadLibrary("HardWareDllAdapter", HardWareDll.class);

    /**,
     * 初始化RFID硬件.
     *
     * @param rfidData rfid数据
     * @param cardData 卡数据
     *
     * @return 是否调用成功
     */
    @Override
    boolean initHardWare(String rfidData, String cardData);

    /**
     * 启动所有RFID设备.
     *
     * @param userCd 用户卡号
     * @param userName 用户名
     *
     * @return 是否启动成功
     */
    @Override
    boolean startAllRfid(String userCd, String userName);

    /**
     * 关闭RFID硬件设备连接
     *
     * @return 是否关闭成功
     */
    @Override
    boolean closeHardWare();

    /**
     * 设置用于回传RFID数据的回调
     *
     * @param callback 回调接口
     *
     * @return 设置结果
     */
    @Override
    boolean setActionRfidDataBack(RfidHardWareCallback callback);

    /**
     * 设置用于回传硬件异常信息的回调
     *
     * @param callback 回调接口
     *
     * @return 设置结果
     */
    @Override
    boolean setCardMessDo(RfidHardWareCallback callback);

    /**
     * 设置用于验证卡信息的回调
     *
     * @param callback 回调接口
     *
     * @return 设置结果
     */
    @Override
    boolean setFunCardUserCheck(ValidCardUserCallback callback);
}