BWCabinetTestDll.java 2.51 KB
package cn.csbr.app.hardware;

import com.sun.jna.Library;
import com.sun.jna.Memory;
import com.sun.jna.Native;
import com.sun.jna.Pointer;
import com.sun.jna.ptr.IntByReference;
import com.sun.jna.ptr.PointerByReference;
import org.apache.ibatis.javassist.bytecode.stackmap.BasicBlock;

import java.io.UnsupportedEncodingException;
import java.util.EmptyStackException;

public interface BWCabinetTestDll extends Library{
    /** 获取RFID硬件调用代理对象 */
    BWCabinetTestDll instance = (BWCabinetTestDll) Native.loadLibrary("BWCabinetTest", BWCabinetTestDll.class);

    int PointTest(Pointer DEsc);
    int StringTest(Pointer Desc);

    int PointTest(IntByReference a);

    int BWInitCabinet();//初始化RFID硬件.



    int BWExitCabinet();//上位机退出

    int BWConnectRelay(int CabIndex);//连接控制器

    int CheckNumber(String uCommandStr, int iLength);//检查数量??

    int BWGetCabinetState(int CabIndex, IntByReference bLocked, IntByReference bDoorOpened); //获取柜子门信号和锁信号


    int BWUnlockDoor(int CabIndex); //开锁,开大灯,开绿灯

    int BWLockDoor(int CabIndex); //关锁

    int BWCloseAllKeys(int CabIndex); //关锁,关大灯,

    int BWStartRedLight(int CabIndex,int Secend); //开红灯亮几秒,Secend秒数


    int BWCloseRelay(int CabIndex); //关闭继电器模块


    //IC卡接口
    int BWConnectIDCard(int CabIndex);

    int BWGetIDCardNum(int CabIndex, Pointer strIdCardNum,IntByReference CardNumLength);

    int BWCloseIDCard(int CabIndex);

    //指纹接口
    int BWConnectFinger(int CabIndex);

    int BWQueryFingerNum(int CabIndex, IntByReference nFingerNum);

    int BWCloseFinger(int CabIndex);

    //RFID读写器接口
    int BWConnectRfid(int CabIndex);

    int BWSetAscii(int bAscii); //1为ascii  0为16进制

    int BWQueryRfidTab(int CabIndex, Pointer RfidTab,IntByReference RfidTabLength);

    int BWCloseRfid(int CabIndex);

    //指纹注册模块
    int BWGetLastFingerNum(int CabIndex,IntByReference nFingerNum); //获取指纹模块中注册过的最大指纹号
    int BWGetFingerImage(int CabIndex,int BufferId);//采集指纹,需调用2次,参数2第一次为1 第二次为2
    int BWStoreFinger(int CabIndex,int nFingerNum); //存储之前采集的指纹并绑定一个指纹号(参数2)
    int BWSynFinger(int StartCabIndex,int EndCabIndex); //上一步存储的指纹库存储到其他模块中1-4号柜子
    int BWDelFinger(int CabIndex,int nFingerNum);  //第二个参数为指定要删除的指纹号

}