#ifndef _FPDEVICE_H_
#define _FPDEVICE_H_

/////////////////////////////////////////////////////////////////////////////////////////////////
//操作设备内数据

int WINAPI GetIDCount(int * count);		//获取设备内模板数
int WINAPI ClearID();					//清除设备内模版
int WINAPI DeleteID(int id);

//Asynchronous Mode
void WINAPI EnrolID(int id);
void WINAPI VerifyID(int id);
void WINAPI IdentifyID();

int WINAPI	GetReturnID();

//获取标准指纹图像
int WINAPI GetFingerImage(BYTE * imagedata,int * size);

//获取原始指纹图像
int WINAPI GetFingerImageEx(BYTE * imagedata,int * size);

//在窗口上画指纹图像
int WINAPI DrawFingerImage(BYTE * imagedata,int size,HDC hdc,int left,int top);

int WINAPI DrawFingerImageEx(BYTE * imagedata,int size,HDC hdc,int left,int top);



//在设备上登记模版
int WINAPI EnrollIDInDevice(int id);
//在设备上1:1识别模版
int WINAPI VerifyIDInDevice(int id,int* iScore);
//在设备上1:N识别模版
int WINAPI IdentifyIDInDevice(int * id);

//保存指纹到模板
BOOL WINAPI SaveToModule(int id,BYTE *tpbuf,int size);
//从模块中载入指纹
BOOL WINAPI LoadFromModule(int id,BYTE *tpbuf,int *size);


//登记模版
int WINAPI EnrollToPc(BYTE * templates,int * tempsize);
//采集指纹特征点
int WINAPI GenCharToPc(BYTE * templates,int * tempsize);


//在设备上比对两个模版
int WINAPI MatchInDevice(BYTE * templates1,int tempsize1,BYTE * templates2,int tempsize2,int* iScore);
//在设备上查找指匹配模板
int WINAPI VerifyInDevice(BYTE * templates1,int tempsize1,int* iScore);



#endif