FingerPrintClass.h 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. /////////////////////////////////////////////////////////////////////////////////
  2. /// Copyright (c) 2012 China Merchants Bank, all rights reserved ///
  3. /// Adapter Interface for FingerPrint Instrument. ///
  4. /// ///
  5. ////////////////////////////////////////////////////////////////////////////////
  6. #ifndef FINGER_PRINT_H
  7. #define FINGER_PRINT_H
  8. #pragma once
  9. #include "DeviceBaseClass.h"
  10. class FingerPrintClass : public DeviceBaseClass
  11. {
  12. public:
  13. //
  14. // Open Device
  15. virtual ErrorCodeEnum DevOpen(DWORD dwPort, DWORD dwBaudRate) = 0;
  16. //采集指纹图片及对应特征值,imagePath保存图片名,lpbFeature保存对应特征,iLength:输入代表特征lpbFeature最大可用长度,输出为特征lpbFeature实际长度
  17. //imagePath为传入的图片名,采集到的指纹图像请按此名称保存在dep目录下,lpbFeature为对应指纹图像特征
  18. //Compute features
  19. virtual ErrorCodeEnum Image2Feature(const char* imageName, LPBYTE lpbFeature, int &iLength) = 0;
  20. //生成特征模板(注册时使用)
  21. //imagePath1、imagePath2、imagePath3表示生成特征需要输入的三张图片名称,由应用传入,lpbTemplate表示输出特征模板,iLength表示模板长度
  22. virtual ErrorCodeEnum Image2Template(const char* imagePath1, const char* imagePath2, const char* imagePath3, LPBYTE lpbTemplate, int &iLength) = 0;
  23. //比对校验
  24. //lpbTemplate和iTemplateLen分别表示输入的一组特征模板及其对应的长度,templateNum为数组长度(即模板个数)
  25. //lbpFeature表示待校验的指纹特征,iFeatureLen表示其长度,level表示校验等级,默认取3
  26. virtual ErrorCodeEnum Match(LPBYTE lpbTemplate[], int iTemplateLen[] ,int templateNum, LPBYTE lbpFeature, int &iFeatureLen ,int level = 3) = 0;
  27. //取消采集指纹
  28. virtual ErrorCodeEnum Cancel() = 0;
  29. };
  30. #endif //FINGER_PRINT_H