]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/log/include/boost/log/sources/logger.hpp
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / log / include / boost / log / sources / logger.hpp
1 /*
2 * Copyright Andrey Semashev 2007 - 2015.
3 * Distributed under the Boost Software License, Version 1.0.
4 * (See accompanying file LICENSE_1_0.txt or copy at
5 * http://www.boost.org/LICENSE_1_0.txt)
6 */
7 /*!
8 * \file logger.hpp
9 * \author Andrey Semashev
10 * \date 08.03.2007
11 *
12 * The header contains implementation of a simplistic logger with no features.
13 */
14
15 #ifndef BOOST_LOG_SOURCES_LOGGER_HPP_INCLUDED_
16 #define BOOST_LOG_SOURCES_LOGGER_HPP_INCLUDED_
17
18 #include <boost/log/detail/config.hpp>
19 #include <boost/log/sources/basic_logger.hpp>
20 #include <boost/log/sources/features.hpp>
21 #include <boost/log/sources/threading_models.hpp>
22 #if !defined(BOOST_LOG_NO_THREADS)
23 #include <boost/log/detail/light_rw_mutex.hpp>
24 #endif // !defined(BOOST_LOG_NO_THREADS)
25 #include <boost/log/detail/header.hpp>
26
27 #ifdef BOOST_HAS_PRAGMA_ONCE
28 #pragma once
29 #endif
30
31 namespace boost {
32
33 BOOST_LOG_OPEN_NAMESPACE
34
35 namespace sources {
36
37 #ifdef BOOST_LOG_USE_CHAR
38
39 /*!
40 * \brief Narrow-char logger. Functionally equivalent to \c basic_logger.
41 *
42 * See \c basic_logger class template for a more detailed description.
43 */
44 class logger :
45 public basic_composite_logger< char, logger, single_thread_model, features< > >
46 {
47 BOOST_LOG_FORWARD_LOGGER_MEMBERS(logger)
48 };
49
50 #if !defined(BOOST_LOG_NO_THREADS)
51
52 /*!
53 * \brief Narrow-char thread-safe logger. Functionally equivalent to \c basic_logger.
54 *
55 * See \c basic_logger class template for a more detailed description.
56 */
57 class logger_mt :
58 public basic_composite_logger< char, logger_mt, multi_thread_model< boost::log::aux::light_rw_mutex >, features< > >
59 {
60 BOOST_LOG_FORWARD_LOGGER_MEMBERS(logger_mt)
61 };
62
63 #endif // !defined(BOOST_LOG_NO_THREADS)
64 #endif // BOOST_LOG_USE_CHAR
65
66 #ifdef BOOST_LOG_USE_WCHAR_T
67
68 /*!
69 * \brief Wide-char logger. Functionally equivalent to \c basic_logger.
70 *
71 * See \c basic_logger class template for a more detailed description.
72 */
73 class wlogger :
74 public basic_composite_logger< wchar_t, wlogger, single_thread_model, features< > >
75 {
76 BOOST_LOG_FORWARD_LOGGER_MEMBERS(wlogger)
77 };
78
79 #if !defined(BOOST_LOG_NO_THREADS)
80
81 /*!
82 * \brief Wide-char thread-safe logger. Functionally equivalent to \c basic_logger.
83 *
84 * See \c basic_logger class template for a more detailed description.
85 */
86 class wlogger_mt :
87 public basic_composite_logger< wchar_t, wlogger_mt, multi_thread_model< boost::log::aux::light_rw_mutex >, features< > >
88 {
89 BOOST_LOG_FORWARD_LOGGER_MEMBERS(wlogger_mt)
90 };
91
92 #endif // !defined(BOOST_LOG_NO_THREADS)
93 #endif // BOOST_LOG_USE_WCHAR_T
94
95 } // namespace sources
96
97 BOOST_LOG_CLOSE_NAMESPACE // namespace log
98
99 } // namespace boost
100
101 #include <boost/log/detail/footer.hpp>
102
103 #endif // BOOST_LOG_SOURCES_LOGGER_HPP_INCLUDED_