sink.cpp 858 Bytes
Newer Older
gabime's avatar
gabime committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
#include "spdlog/common.h"
#include "spdlog/details/pattern_formatter.h"

#ifndef SPDLOG_HEADER_ONLY
#include "spdlog/sinks/sink.h"
#endif

SPDLOG_INLINE spdlog::sinks::sink::sink()
    : formatter_{details::make_unique<spdlog::pattern_formatter>()}
{}

SPDLOG_INLINE spdlog::sinks::sink::sink(std::unique_ptr<spdlog::formatter> formatter)
    : formatter_{std::move(formatter)}
{}

SPDLOG_INLINE bool spdlog::sinks::sink::should_log(spdlog::level::level_enum msg_level) const
{
    return msg_level >= level_.load(std::memory_order_relaxed);
}

SPDLOG_INLINE void spdlog::sinks::sink::set_level(level::level_enum log_level)
{
    level_.store(log_level);
}

SPDLOG_INLINE spdlog::level::level_enum spdlog::sinks::sink::level() const
{
    return static_cast<spdlog::level::level_enum>(level_.load(std::memory_order_relaxed));
}