BarcodeAlgDllApi.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. /*****************************************************************************
  2. 模块名 : FmmAlg
  3. 文件名 : FmmAlgDllApi.h
  4. 相关文件 :
  5. 文件实现功能:
  6. 作者 : XP
  7. 版本 : 1.0.0
  8. -----------------------------------------------------------------------------
  9. 修改记录:
  10. ******************************************************************************/
  11. #pragma once
  12. #ifdef DLL_EXPORTS
  13. #define EXPORT_API __declspec(dllexport)
  14. #else
  15. #define EXPORT_API __declspec(dllimport)
  16. #endif
  17. #ifndef EXPORT_API_C
  18. #define EXPORT_API_C extern "C" EXPORT_API
  19. #endif // !EXPORT_API_C
  20. #ifndef IN
  21. #define IN
  22. #endif
  23. #ifndef OUT
  24. #define OUT
  25. #endif
  26. #ifndef INOUT
  27. #define INOUT
  28. #endif
  29. namespace HalconCpp
  30. {
  31. class HObject;
  32. class HTuple;
  33. }
  34. struct AlgInfo
  35. {
  36. const char* version; // 版本号
  37. const char* name; // 算法名称
  38. const char* lastUpdated; // 更新日期
  39. const char* updateDescribe; // 最新修改记录
  40. };
  41. //获取算法信息
  42. EXPORT_API_C int getAlgInfo(OUT AlgInfo& algInfo);
  43. /// <summary>
  44. /// 读取配置文件,(最先运行)
  45. /// </summary>
  46. /// <param name="xmlPath">xml路径</param>
  47. /// <returns>函数运行成功为0</returns>
  48. EXPORT_API int loadConfigParams(IN const char* xmlPath);
  49. /// <summary>
  50. /// 处理函数
  51. /// </summary>
  52. /// <param name="image">输入图像</param>
  53. /// <param name="outXlds">输出xld信息</param>
  54. /// <param name="barcodes">读取的barcodes</param>
  55. /// <returns></returns>
  56. EXPORT_API void process(IN const HalconCpp::HObject& ho_Image, OUT HalconCpp::HObject& ho_outXlds, OUT HalconCpp::HTuple& hv_barcodes, OUT HalconCpp::HTuple hv_flag);