SpiecsEngine
 
Loading...
Searching...
No Matches

◆ sink_it_()

void Spices::Console::sink_it_ ( const spdlog::details::log_msg & msg)
overrideprotected

Inherited from spdlog, run when a message pushed.

Parameters
[in]msgspdlog message.

Get Log time.

Get Log level.

Get Log time.

Get Log level.

Definition at line 53 of file Console.cpp.

54 {
56
57 //std::lock_guard<std::mutex> lock(mutex_);
58
59 std::stringstream ss;
60
64 time_t t = std::chrono::system_clock::to_time_t(msg.time);
65 std::string times = ctime(&t);
66 times.pop_back();
67
71 InfoLevelHelper helper;
72
73 switch (msg.level)
74 {
75 case spdlog::level::level_enum::trace:
76 helper.level = "trace";
77 helper.color = glm::vec4(0.83f, 0.83f, 0.83f, 1.0f);
78 ss << "[" << times << "] [" << msg.logger_name.data() << "] [" << helper.level << "] " << msg.payload.data();
79 helper.str = ss.str();
81 {
82 m_InfoData.m_TraceLogInfos.pop_front();
83 }
84 m_InfoData.m_TraceLogInfos.push_back(helper);
85 break;
86
87 case spdlog::level::level_enum::info:
88 helper.level = "info";
89 helper.color = glm::vec4(0.574f, 0.829f, 1.0f, 1.0f);
90 ss << "[" << times << "] [" << msg.logger_name.data() << "] [" << helper.level << "] " << msg.payload.data();
91 helper.str = ss.str();
93 {
94 m_InfoData.m_InfoLogInfos.pop_front();
95 }
96 m_InfoData.m_InfoLogInfos.push_back(helper);
97 break;
98
99 case spdlog::level::level_enum::warn:
100 helper.level = "warn";
101 helper.color = glm::vec4(0.974f, 0.896f, 0.39f, 1.0f);
102 ss << "[" << times << "] [" << msg.logger_name.data() << "] [" << helper.level << "] " << msg.payload.data();
103 helper.str = ss.str();
105 {
106 m_InfoData.m_WarnLogInfos.pop_front();
107 }
108 m_InfoData.m_WarnLogInfos.push_back(helper);
109 break;
110
111 case spdlog::level::level_enum::err:
112 helper.level = "error";
113 helper.color = glm::vec4(1.0f, 0.641f, 0.59f, 1.0f);
114 ss << "[" << times << "] [" << msg.logger_name.data() << "] [" << helper.level << "] " << msg.payload.data();
115 helper.str = ss.str();
117 {
118 m_InfoData.m_ErrorLogInfos.pop_front();
119 }
120 m_InfoData.m_ErrorLogInfos.push_back(helper);
121 break;
122
123 case spdlog::level::level_enum::critical:
124 helper.level = "critical";
125 helper.color = glm::vec4(1.0f, 0.0f, 0.0f, 1.0f);
126 ss << "[" << times << "] [" << msg.logger_name.data() << "] [" << helper.level << "] " << msg.payload.data();
127 helper.str = ss.str();
129 {
130 m_InfoData.m_CriticalLogInfos.pop_front();
131 }
132 m_InfoData.m_CriticalLogInfos.push_back(helper);
133 break;
134 }
135 }
#define SPICES_PROFILE_ZONE
InfoData m_InfoData
Console Information.
Definition Console.h:160
uint32_t m_MaxInfos
Maximum Num of Information's.
Definition Console.h:155
std::deque< InfoLevelHelper > m_InfoLogInfos
info deque.
Definition Console.h:49
std::deque< InfoLevelHelper > m_WarnLogInfos
warn deque.
Definition Console.h:54
std::deque< InfoLevelHelper > m_TraceLogInfos
trace deque.
Definition Console.h:44
std::deque< InfoLevelHelper > m_ErrorLogInfos
error deque.
Definition Console.h:59
std::deque< InfoLevelHelper > m_CriticalLogInfos
critical deque.
Definition Console.h:64