main.cpp 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #include <QCoreApplication>
  2. #include "LHLogInit.h"
  3. #include "LHQLogAPI.h"
  4. #include "spdlog/spdlog.h"
  5. #include "ThreadPool.h"
  6. #include "LHCompareAPI.h"
  7. #include "signalstats.h"
  8. #include "ACAServer.h"
  9. #include <QDir>
  10. #include <QFile>
  11. int main(int argc, char* argv[])
  12. {
  13. QCoreApplication a(argc, argv);
  14. /* 初始化日志库 */
  15. initLog("ACAServer", g_apiLhQLog);
  16. auto logger = spdlog::get("main");
  17. if(logger == nullptr)
  18. {
  19. fmt::print("main logger is nullptr");
  20. return -1;
  21. }
  22. SPDLOG_LOGGER_INFO(logger, "★ ★ ★ ★ ★ ★ ★ ☆ ACAServer ☆ ★ ★ ★ ★ ★ ★ ★");
  23. SPDLOG_LOGGER_INFO(logger, "ACServer Version: {}", "6.0.0.3");
  24. /* 设置线程池最大线程个数 */
  25. CPPTP.setThreadMaxNum(1024);
  26. /* 加载第三方库 */
  27. /* 加载一致性比对动态库 */
  28. if(LoadCompareLibrary())
  29. {
  30. SPDLOG_INFO("一致性对比动态库加载成功!");
  31. }else {
  32. SPDLOG_ERROR("一致性对比动态库加载失败!");
  33. }
  34. SPDLOG_LOGGER_DEBUG(logger, "☆ 初始化噪音检测服务");
  35. /* 初始化噪音检测功能 */
  36. signalstats::initialize(false);
  37. SPDLOG_LOGGER_DEBUG(logger, "★ 噪音检测服务初始化完成");
  38. ACAServer acas;
  39. /* 初始化一些系统信息 */
  40. if(!acas.initGlobalInfo())
  41. {
  42. SPDLOG_LOGGER_ERROR(logger, "ACAServer 初始化失败! 即将退出程序");
  43. return -1;
  44. }
  45. /* 启动服务 */
  46. if(acas.startService())
  47. {
  48. SPDLOG_LOGGER_INFO(logger, "ACAServer 服务启动成功");
  49. } else
  50. {
  51. SPDLOG_LOGGER_ERROR(logger, "ACAServer 服务启动失败");
  52. return -1;
  53. }
  54. int result = a.exec();
  55. signalstats::finalize(); // 结束噪音检测服务
  56. SPDLOG_LOGGER_INFO(logger, "ACAServer 结束运行");
  57. return result;
  58. }