1 | // |
---|
2 | // Copyright(c) 2015 Gabi Melman. |
---|
3 | // Distributed under the MIT License (http://opensource.org/licenses/MIT) |
---|
4 | // |
---|
5 | |
---|
6 | #pragma once |
---|
7 | |
---|
8 | /////////////////////////////////////////////////////////////////////////////// |
---|
9 | // |
---|
10 | // Edit this file to squeeze more performance, and to customize supported |
---|
11 | // features |
---|
12 | // |
---|
13 | /////////////////////////////////////////////////////////////////////////////// |
---|
14 | |
---|
15 | /////////////////////////////////////////////////////////////////////////////// |
---|
16 | // Under Linux, the much faster CLOCK_REALTIME_COARSE clock can be used. |
---|
17 | // This clock is less accurate - can be off by dozens of millis - depending on |
---|
18 | // the kernel HZ. |
---|
19 | // Uncomment to use it instead of the regular clock. |
---|
20 | // |
---|
21 | // #define SPDLOG_CLOCK_COARSE |
---|
22 | /////////////////////////////////////////////////////////////////////////////// |
---|
23 | |
---|
24 | /////////////////////////////////////////////////////////////////////////////// |
---|
25 | // Uncomment if date/time logging is not needed and never appear in the log |
---|
26 | // pattern. |
---|
27 | // This will prevent spdlog from querying the clock on each log call. |
---|
28 | // |
---|
29 | // WARNING: If the log pattern contains any date/time while this flag is on, the |
---|
30 | // result is undefined. |
---|
31 | // You must set new pattern(spdlog::set_pattern(..") without any |
---|
32 | // date/time in it |
---|
33 | // |
---|
34 | // #define SPDLOG_NO_DATETIME |
---|
35 | /////////////////////////////////////////////////////////////////////////////// |
---|
36 | |
---|
37 | /////////////////////////////////////////////////////////////////////////////// |
---|
38 | // Uncomment if thread id logging is not needed (i.e. no %t in the log pattern). |
---|
39 | // This will prevent spdlog from querying the thread id on each log call. |
---|
40 | // |
---|
41 | // WARNING: If the log pattern contains thread id (i.e, %t) while this flag is |
---|
42 | // on, the result is undefined. |
---|
43 | // |
---|
44 | // #define SPDLOG_NO_THREAD_ID |
---|
45 | /////////////////////////////////////////////////////////////////////////////// |
---|
46 | |
---|
47 | /////////////////////////////////////////////////////////////////////////////// |
---|
48 | // Uncomment to prevent spdlog from using thread local storage. |
---|
49 | // |
---|
50 | // WARNING: if your program forks, UNCOMMENT this flag to prevent undefined |
---|
51 | // thread ids in the children logs. |
---|
52 | // |
---|
53 | // #define SPDLOG_NO_TLS |
---|
54 | /////////////////////////////////////////////////////////////////////////////// |
---|
55 | |
---|
56 | /////////////////////////////////////////////////////////////////////////////// |
---|
57 | // Uncomment if logger name logging is not needed. |
---|
58 | // This will prevent spdlog from copying the logger name on each log call. |
---|
59 | // |
---|
60 | // #define SPDLOG_NO_NAME |
---|
61 | /////////////////////////////////////////////////////////////////////////////// |
---|
62 | |
---|
63 | /////////////////////////////////////////////////////////////////////////////// |
---|
64 | // Uncomment to enable the SPDLOG_DEBUG/SPDLOG_TRACE macros. |
---|
65 | // |
---|
66 | // #define SPDLOG_DEBUG_ON |
---|
67 | // #define SPDLOG_TRACE_ON |
---|
68 | /////////////////////////////////////////////////////////////////////////////// |
---|
69 | |
---|
70 | /////////////////////////////////////////////////////////////////////////////// |
---|
71 | // Uncomment to avoid spdlog's usage of atomic log levels |
---|
72 | // Use only if your code never modifies a logger's log levels concurrently by |
---|
73 | // different threads. |
---|
74 | // |
---|
75 | // #define SPDLOG_NO_ATOMIC_LEVELS |
---|
76 | /////////////////////////////////////////////////////////////////////////////// |
---|
77 | |
---|
78 | /////////////////////////////////////////////////////////////////////////////// |
---|
79 | // Uncomment to enable usage of wchar_t for file names on Windows. |
---|
80 | // |
---|
81 | // #define SPDLOG_WCHAR_FILENAMES |
---|
82 | /////////////////////////////////////////////////////////////////////////////// |
---|
83 | |
---|
84 | /////////////////////////////////////////////////////////////////////////////// |
---|
85 | // Uncomment to override default eol ("\n" or "\r\n" under Linux/Windows) |
---|
86 | // |
---|
87 | // #define SPDLOG_EOL ";-)\n" |
---|
88 | /////////////////////////////////////////////////////////////////////////////// |
---|
89 | |
---|
90 | /////////////////////////////////////////////////////////////////////////////// |
---|
91 | // Uncomment to use your own copy of the fmt library instead of spdlog's copy. |
---|
92 | // In this case spdlog will try to include <fmt/format.h> so set your -I flag |
---|
93 | // accordingly. |
---|
94 | // |
---|
95 | // #define SPDLOG_FMT_EXTERNAL |
---|
96 | /////////////////////////////////////////////////////////////////////////////// |
---|
97 | |
---|
98 | /////////////////////////////////////////////////////////////////////////////// |
---|
99 | // Uncomment to enable wchar_t support (convert to utf8) |
---|
100 | // |
---|
101 | // #define SPDLOG_WCHAR_TO_UTF8_SUPPORT |
---|
102 | /////////////////////////////////////////////////////////////////////////////// |
---|
103 | |
---|
104 | /////////////////////////////////////////////////////////////////////////////// |
---|
105 | // Uncomment to prevent child processes from inheriting log file descriptors |
---|
106 | // |
---|
107 | // #define SPDLOG_PREVENT_CHILD_FD |
---|
108 | /////////////////////////////////////////////////////////////////////////////// |
---|
109 | |
---|
110 | /////////////////////////////////////////////////////////////////////////////// |
---|
111 | // Uncomment to enable message counting feature. |
---|
112 | // Use the %i in the logger pattern to display log message sequence id. |
---|
113 | // |
---|
114 | // #define SPDLOG_ENABLE_MESSAGE_COUNTER |
---|
115 | /////////////////////////////////////////////////////////////////////////////// |
---|
116 | |
---|
117 | /////////////////////////////////////////////////////////////////////////////// |
---|
118 | // Uncomment to customize level names (e.g. "MT TRACE") |
---|
119 | // |
---|
120 | // #define SPDLOG_LEVEL_NAMES { "MY TRACE", "MY DEBUG", "MY INFO", "MY WARNING", |
---|
121 | // "MY ERROR", "MY CRITICAL", "OFF" } |
---|
122 | /////////////////////////////////////////////////////////////////////////////// |
---|
123 | |
---|
124 | /////////////////////////////////////////////////////////////////////////////// |
---|
125 | // Uncomment to disable default logger creation. |
---|
126 | // This might save some (very) small initialization time if no default logger is needed. |
---|
127 | // |
---|
128 | // #define SPDLOG_DISABLE_DEFAULT_LOGGER |
---|
129 | /////////////////////////////////////////////////////////////////////////////// |
---|
130 | |
---|
131 | /////////////////////////////////////////////////////////////////////////////// |
---|
132 | // Uncomment and set to compile time level with zero cost (default is INFO). |
---|
133 | // Macros like SPDLOG_DEBUG(..), SPDLOG_INFO(..) will expand to empty statements if not enabled |
---|
134 | // |
---|
135 | // #define SPDLOG_ACTIVE_LEVEL SPDLOG_LEVEL_INFO |
---|
136 | /////////////////////////////////////////////////////////////////////////////// |
---|
137 | |
---|
138 | /////////////////////////////////////////////////////////////////////////////// |
---|
139 | // Uncomment (and change if desired) macro to use for function names. |
---|
140 | // This is compiler dependent. |
---|
141 | // __PRETTY_FUNCTION__ might be nicer in clang/gcc, and __FUNCTION__ in msvc. |
---|
142 | // Defaults to __FUNCTION__ (should work on all compilers) if not defined. |
---|
143 | // |
---|
144 | // #define SPDLOG_FUNCTION __PRETTY_FUNCTION__ |
---|
145 | /////////////////////////////////////////////////////////////////////////////// |
---|