log_module.cpp 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. #include "stdafx.h"
  2. #include "log_module.h"
  3. #include "Functions/Functions.h"
  4. std::vector<std::shared_ptr<MyLog>> vtLog;
  5. std::map<std::string,std::shared_ptr<MyLog>> mpLog;
  6. int Log::init_log_module()
  7. {
  8. clear();
  9. for (int i = 0; i < FILE_TYPE_TOTAL; i++)
  10. {
  11. std::shared_ptr<MyLog> log = std::make_shared<MyLog>((FILE_TYPE)i);
  12. vtLog.push_back(log);
  13. //mpLog.insert(std::make_pair(my_log_file_name[i],log));
  14. }
  15. return 0;
  16. }
  17. int Log::write_log(FILE_TYPE fileType,const std::string& content)
  18. {
  19. if (fileType > FILE_TYPE::FILE_TYPE_TOTAL)
  20. {
  21. return 1;
  22. }
  23. if (vtLog.size() < fileType)
  24. {
  25. return 1;
  26. }
  27. vtLog[fileType]->WriteLog(content);
  28. return 0;
  29. }
  30. int Log::write_log(FILE_TYPE fileType,const char* pValue,bool status)
  31. {
  32. if (fileType > FILE_TYPE::FILE_TYPE_TOTAL)
  33. {
  34. return 1;
  35. }
  36. if (vtLog.size() < fileType)
  37. {
  38. return 1;
  39. }
  40. if (status != vtLog[fileType]->GetStatus())
  41. {
  42. vtLog[fileType]->SetLayout(status);
  43. }
  44. write_log(fileType,pValue);
  45. return 0;
  46. }
  47. int Log::write_log(FILE_TYPE fileType,const char* pValue)
  48. {
  49. std::string val = "";
  50. val = pValue;
  51. write_log(fileType,val);
  52. return 0;
  53. }
  54. //int Log::write_log(FILE_TYPE fileType,const char* pValue,...)
  55. //{
  56. // std::string val = "";
  57. // val = pValue;
  58. //
  59. // write_log(fileType,val);
  60. //
  61. // return 0;
  62. //}
  63. int Log::write_log(FILE_TYPE fileType,const std::string& content,bool status)
  64. {
  65. if (fileType > FILE_TYPE::FILE_TYPE_TOTAL)
  66. {
  67. return 1;
  68. }
  69. if (vtLog.size() < fileType)
  70. {
  71. return 1;
  72. }
  73. if (status != vtLog[fileType]->GetStatus())
  74. {
  75. vtLog[fileType]->SetLayout(status);
  76. }
  77. write_log(fileType,content);
  78. return 0;
  79. }
  80. int Log::clear()
  81. {
  82. if (vtLog.size() > 0)
  83. {
  84. vtLog.erase(vtLog.begin(),vtLog.end());
  85. vtLog.resize(0);
  86. }
  87. if (mpLog.size() > 0)
  88. {
  89. mpLog.erase(mpLog.begin(),mpLog.end());
  90. }
  91. return 0;
  92. }