/src/spdlog/include/spdlog/spdlog-inl.h
Line | Count | Source |
1 | | // Copyright(c) 2015-present, Gabi Melman & spdlog contributors. |
2 | | // Distributed under the MIT License (http://opensource.org/licenses/MIT) |
3 | | |
4 | | #pragma once |
5 | | |
6 | | #ifndef SPDLOG_HEADER_ONLY |
7 | | #include <spdlog/spdlog.h> |
8 | | #endif |
9 | | |
10 | | #include <spdlog/common.h> |
11 | | #include <spdlog/pattern_formatter.h> |
12 | | |
13 | | namespace spdlog { |
14 | | |
15 | 0 | SPDLOG_INLINE void initialize_logger(std::shared_ptr<logger> logger) { |
16 | 0 | details::registry::instance().initialize_logger(std::move(logger)); |
17 | 0 | } |
18 | | |
19 | 0 | SPDLOG_INLINE std::shared_ptr<logger> get(const std::string &name) { |
20 | 0 | return details::registry::instance().get(name); |
21 | 0 | } |
22 | | |
23 | 0 | SPDLOG_INLINE void set_formatter(std::unique_ptr<spdlog::formatter> formatter) { |
24 | 0 | details::registry::instance().set_formatter(std::move(formatter)); |
25 | 0 | } |
26 | | |
27 | 0 | SPDLOG_INLINE void set_pattern(std::string pattern, pattern_time_type time_type) { |
28 | 0 | set_formatter( |
29 | 0 | std::unique_ptr<spdlog::formatter>(new pattern_formatter(std::move(pattern), time_type))); |
30 | 0 | } |
31 | | |
32 | 0 | SPDLOG_INLINE void enable_backtrace(size_t n_messages) { |
33 | 0 | details::registry::instance().enable_backtrace(n_messages); |
34 | 0 | } |
35 | | |
36 | 0 | SPDLOG_INLINE void disable_backtrace() { details::registry::instance().disable_backtrace(); } |
37 | | |
38 | 0 | SPDLOG_INLINE void dump_backtrace() { default_logger_raw()->dump_backtrace(); } |
39 | | |
40 | 0 | SPDLOG_INLINE level::level_enum get_level() { return default_logger_raw()->level(); } |
41 | | |
42 | 0 | SPDLOG_INLINE bool should_log(level::level_enum log_level) { |
43 | 0 | return default_logger_raw()->should_log(log_level); |
44 | 0 | } |
45 | | |
46 | 0 | SPDLOG_INLINE void set_level(level::level_enum log_level) { |
47 | 0 | details::registry::instance().set_level(log_level); |
48 | 0 | } |
49 | | |
50 | 0 | SPDLOG_INLINE void flush_on(level::level_enum log_level) { |
51 | 0 | details::registry::instance().flush_on(log_level); |
52 | 0 | } |
53 | | |
54 | 0 | SPDLOG_INLINE void set_error_handler(void (*handler)(const std::string &msg)) { |
55 | 0 | details::registry::instance().set_error_handler(handler); |
56 | 0 | } |
57 | | |
58 | 0 | SPDLOG_INLINE void register_logger(std::shared_ptr<logger> logger) { |
59 | 0 | details::registry::instance().register_logger(std::move(logger)); |
60 | 0 | } |
61 | | |
62 | 0 | SPDLOG_INLINE void register_or_replace(std::shared_ptr<logger> logger) { |
63 | 0 | details::registry::instance().register_or_replace(std::move(logger)); |
64 | 0 | } |
65 | | |
66 | 0 | SPDLOG_INLINE void apply_all(const std::function<void(std::shared_ptr<logger>)> &fun) { |
67 | 0 | details::registry::instance().apply_all(fun); |
68 | 0 | } |
69 | | |
70 | 0 | SPDLOG_INLINE void drop(const std::string &name) { details::registry::instance().drop(name); } |
71 | | |
72 | 0 | SPDLOG_INLINE void drop_all() { details::registry::instance().drop_all(); } |
73 | | |
74 | 0 | SPDLOG_INLINE void shutdown() { details::registry::instance().shutdown(); } |
75 | | |
76 | 0 | SPDLOG_INLINE void set_automatic_registration(bool automatic_registration) { |
77 | 0 | details::registry::instance().set_automatic_registration(automatic_registration); |
78 | 0 | } |
79 | | |
80 | 0 | SPDLOG_INLINE std::shared_ptr<spdlog::logger> default_logger() { |
81 | 0 | return details::registry::instance().default_logger(); |
82 | 0 | } |
83 | | |
84 | 9.06k | SPDLOG_INLINE spdlog::logger *default_logger_raw() { |
85 | 9.06k | return details::registry::instance().get_default_raw(); |
86 | 9.06k | } |
87 | | |
88 | 1 | SPDLOG_INLINE void set_default_logger(std::shared_ptr<spdlog::logger> default_logger) { |
89 | 1 | details::registry::instance().set_default_logger(std::move(default_logger)); |
90 | 1 | } |
91 | | |
92 | 0 | SPDLOG_INLINE void apply_logger_env_levels(std::shared_ptr<logger> logger) { |
93 | 0 | details::registry::instance().apply_logger_env_levels(std::move(logger)); |
94 | 0 | } |
95 | | |
96 | | } // namespace spdlog |