logger.cpp 2.1 KB
Newer Older
gabime's avatar
gabime committed
1 2 3 4
#include "logger.h"
#include "spdlog/spdlog.h"
#include "spdlog/logger.h"

gabime's avatar
gabime committed
5
static spdlog::level::level_enum to_spdlog_level(spdlog::lite::level level)
gabime's avatar
gabime committed
6
{
gabime's avatar
gabime committed
7
    return static_cast<spdlog::level::level_enum>(level);
gabime's avatar
gabime committed
8 9 10 11 12 13 14
}

static spdlog::lite::level to_lite_level(spdlog::level::level_enum level)
{
    return static_cast<spdlog::lite::level>(level);
}

gabime's avatar
gabime committed
15 16 17 18 19
spdlog::lite::logger::logger(std::shared_ptr<spdlog::logger> impl)
{
    impl_ = std::move(impl);
}

gabime's avatar
gabime committed
20
bool spdlog::lite::logger::should_log(spdlog::lite::level level) const SPDLOG_NOEXCEPT
gabime's avatar
gabime committed
21
{
gabime's avatar
gabime committed
22
    auto spd_level = to_spdlog_level(level);
gabime's avatar
gabime committed
23
    return impl_->should_log(spd_level); // TODO level
gabime's avatar
gabime committed
24 25
}

gabime's avatar
gabime committed
26
void spdlog::lite::logger::log_formatted_(spdlog::lite::level level, const fmt::memory_buffer &formatted)
gabime's avatar
gabime committed
27
{
gabime's avatar
gabime committed
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
    auto spd_level = to_spdlog_level(level);
    impl_->log(spd_level, spdlog::details::fmt_helper::to_string_view(formatted));
}

void spdlog::lite::logger::log_formatted_src(const spdlog::lite::src_loc &src, spdlog::lite::level lvl, const fmt::memory_buffer &formatted)
{
    auto spd_level = to_spdlog_level(lvl);
    spdlog::source_loc source_loc{src.filename, src.line, src.funcname};
    impl_->log(source_loc, spd_level, spdlog::details::fmt_helper::to_string_view(formatted));
}

void spdlog::lite::logger::set_level(spdlog::lite::level level)
{
    auto spd_level = to_spdlog_level(level);
    impl_->set_level(spd_level);
}

spdlog::lite::level spdlog::lite::logger::get_level() const
{
    return to_lite_level(impl_->level());
}

std::string spdlog::lite::logger::name() const
{
    return impl_->name();
}

void spdlog::lite::logger::flush()
{
    impl_->flush();
}

void spdlog::lite::logger::flush_on(spdlog::lite::level level)
{
    auto spd_level = to_spdlog_level(level);
    impl_->flush_on(spd_level);
}

spdlog::lite::level spdlog::lite::logger::flush_level() const
{
    return to_lite_level(impl_->flush_level());
}

// pattern
void spdlog::lite::logger::set_pattern(std::string pattern)
{
    impl_->set_pattern(std::move(pattern));
}

spdlog::lite::logger &spdlog::lite::default_logger()
{
    static spdlog::lite::logger s_default(spdlog::default_logger());
    return s_default;
}