qxLib
debugger_logger_stream.inl
Go to the documentation of this file.
1 /**
2 
3  @file debugger_logger_stream.inl
4  @author Khrapov
5  @date 12.11.2023
6  @copyright © Nick Khrapov, 2023. All right reserved.
7 
8 **/
9 
10 namespace qx
11 {
12 
13 inline debugger_logger_stream::debugger_logger_stream(verbosity eMinFlushVerbosity)
14  : base_logger_stream({ .bProtectLog = false, .eMinFlushVerbosity = eMinFlushVerbosity })
15 {
16 }
17 
18 inline void debugger_logger_stream::do_log(
19  const category& category,
20  verbosity eVerbosity,
21  std::thread::id threadId,
22  std::chrono::system_clock::time_point messageTime,
23  string_view svFile,
24  string_view svFunction,
25  int nLine,
26  string_view svMessage)
27 {
28 #if QX_WIN
29  if (IsDebuggerPresent())
30  {
31  thread_local wstring sMessage;
32  sMessage = to_wstring(svMessage);
33  OutputDebugStringW(sMessage.c_str());
34  }
35 #endif
36 }
37 
38 inline void debugger_logger_stream::do_flush()
39 {
40 }
41 
42 } // namespace qx
Base class for logger streams.
debugger_logger_stream(verbosity eMinFlushVerbosity=verbosity::error)
debugger_logger_stream object constructor