main.cpp 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  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_wrapper.h"
  8. #include "ACAServer.h"
  9. #include <QDir>
  10. #include <QFile>
  11. void test();
  12. void test1();
  13. void LoadLibrary();
  14. int main(int argc, char* argv[])
  15. {
  16. QCoreApplication a(argc, argv);
  17. /* 初始化日志库 */
  18. initLog("SecurePlayAuxServer", g_apiLhQLog);
  19. auto logger = spdlog::get("main");
  20. if(logger == nullptr)
  21. {
  22. fmt::print("main logger is nullptr");
  23. return -1;
  24. }
  25. SPDLOG_LOGGER_INFO(logger, "★ ★ ★ ★ ★ ★ ☆ ☆ ACAServer ☆ ☆ ★ ★ ★ ★ ★ ★");
  26. SPDLOG_LOGGER_INFO(logger, "ACServer Version: {}", "6.0.0.0");
  27. /* 设置线程池最大线程个数 */
  28. CPPTP.setThreadMaxNum(1024);
  29. /* 加载第三方库 */
  30. void LoadLibrary();
  31. /* 初始化噪音检测功能 */
  32. signalstats_wrapper::initialize();
  33. ACAServer acas;
  34. /* 初始化一些系统信息 */
  35. if(!acas.initGlobalInfo())
  36. {
  37. SPDLOG_LOGGER_ERROR(logger, "ACAServer 初始化失败!");
  38. }
  39. // test();
  40. // CPPTP.add_task(test1);
  41. /* 启动服务 */
  42. if(acas.startService())
  43. {
  44. SPDLOG_LOGGER_INFO(logger, "ACAServer 服务启动成功");
  45. } else
  46. {
  47. SPDLOG_LOGGER_ERROR(logger, "ACAServer 服务启动失败");
  48. return -1;
  49. }
  50. int result = a.exec();
  51. /* 释放资源 */
  52. signalstats_wrapper::finalize();
  53. SPDLOG_LOGGER_INFO(logger, "ACAServer 结束运行");
  54. return result;
  55. }
  56. /* 加载第三方动态库 */
  57. void LoadLibrary()
  58. {
  59. /* 加载一致性比对动态库 */
  60. if(LoadCompareLibrary())
  61. {
  62. SPDLOG_INFO("动态库加载成功!");
  63. }
  64. }
  65. void test()
  66. {
  67. QString appDataPath = QCoreApplication::applicationDirPath() + "/testDir";
  68. QDir dir;
  69. dir.setPath(appDataPath);
  70. if (!dir.exists()) {
  71. if(dir.mkpath(appDataPath))
  72. {
  73. SPDLOG_INFO("Directory created: {}", dir.absolutePath().toStdString());
  74. }
  75. else
  76. {
  77. SPDLOG_ERROR("Failed to create directory: {}", dir.absolutePath().toStdString());
  78. return;
  79. }
  80. }
  81. SPDLOG_INFO("当前文件夹: {}", dir.absolutePath().toStdString());
  82. // dir.setCurrent(appDataPath);
  83. QFile file(dir.filePath("test.txt"));
  84. if (file.open(QIODevice::WriteOnly | QIODevice::Text)) {
  85. file.write("Hello, World!");
  86. file.close();
  87. } else {
  88. SPDLOG_INFO("Failed to create file: {}", file.errorString().toStdString());
  89. }
  90. SPDLOG_INFO("Current directory: {}", dir.absolutePath().toStdString());
  91. SPDLOG_INFO("File created at: {}", file.fileName().toStdString());
  92. if(QFile::rename(file.fileName(), dir.filePath("test3.txt")))
  93. {
  94. SPDLOG_INFO("File renamed successfully to: {}", dir.filePath("test3.txt").toStdString());
  95. }
  96. else
  97. {
  98. SPDLOG_ERROR("Failed to rename file: {}", file.errorString().toStdString());
  99. }
  100. }
  101. void test1()
  102. {
  103. QFile file("test1.txt");
  104. if (file.open(QIODevice::WriteOnly | QIODevice::Text)) {
  105. file.write("Hello, World!");
  106. file.close();
  107. SPDLOG_INFO("File created successfully: {}", file.fileName().toStdString());
  108. } else {
  109. SPDLOG_ERROR("Failed to create file: {}", file.errorString().toStdString());
  110. }
  111. SPDLOG_INFO("File path: {}", file.fileName().toStdString());
  112. SPDLOG_INFO("Current working directory: {}", QDir::currentPath().toStdString());
  113. QFile::rename("test1.txt", "test2.txt");
  114. }