parent
efe4140efb
commit
4ab8e80c87
4 changed files with 67 additions and 1 deletions
@ -0,0 +1,28 @@ |
|||||||
|
#include "log.h" |
||||||
|
|
||||||
|
namespace Bk { |
||||||
|
|
||||||
|
std::shared_ptr<spdlog::logger> Log::CoreLogger; |
||||||
|
std::shared_ptr<spdlog::logger> Log::AppLogger; |
||||||
|
|
||||||
|
void Log::Init() |
||||||
|
{ |
||||||
|
std::vector<spdlog::sink_ptr> logSinks; |
||||||
|
logSinks.emplace_back(std::make_shared<spdlog::sinks::stdout_color_sink_mt>()); |
||||||
|
logSinks.emplace_back(std::make_shared<spdlog::sinks::basic_file_sink_mt>("bakara.log", true)); |
||||||
|
|
||||||
|
logSinks[0]->set_pattern("%^[%T] %n: %v%$"); |
||||||
|
logSinks[1]->set_pattern("[%T] [%l] %n: %v"); |
||||||
|
|
||||||
|
CoreLogger = std::make_shared<spdlog::logger>("BAKARA", begin(logSinks), end(logSinks)); |
||||||
|
spdlog::register_logger(CoreLogger); |
||||||
|
CoreLogger->set_level(spdlog::level::trace); |
||||||
|
CoreLogger->flush_on(spdlog::level::trace); |
||||||
|
|
||||||
|
AppLogger = std::make_shared<spdlog::logger>("APP", begin(logSinks), end(logSinks)); |
||||||
|
spdlog::register_logger(AppLogger); |
||||||
|
AppLogger->set_level(spdlog::level::trace); |
||||||
|
AppLogger->flush_on(spdlog::level::trace); |
||||||
|
} |
||||||
|
|
||||||
|
} |
@ -0,0 +1,36 @@ |
|||||||
|
#pragma once |
||||||
|
|
||||||
|
#include <bkpch.h> |
||||||
|
#include <spdlog/spdlog.h> |
||||||
|
#include <spdlog/fmt/ostr.h> |
||||||
|
#include <spdlog/sinks/stdout_color_sinks.h> |
||||||
|
#include <spdlog/sinks/basic_file_sink.h> |
||||||
|
|
||||||
|
namespace Bk { |
||||||
|
|
||||||
|
class Log |
||||||
|
{ |
||||||
|
public: |
||||||
|
static void Init(); |
||||||
|
|
||||||
|
static std::shared_ptr<spdlog::logger>& GetCoreLogger() { return CoreLogger; } |
||||||
|
static std::shared_ptr<spdlog::logger>& GetAppLogger() { return AppLogger; } |
||||||
|
private: |
||||||
|
static std::shared_ptr<spdlog::logger> CoreLogger; |
||||||
|
static std::shared_ptr<spdlog::logger> AppLogger; |
||||||
|
}; |
||||||
|
|
||||||
|
#define BK_CORE_TRACE(...) ::Bk::Log::GetCoreLogger()->trace(__VA_ARGS__) |
||||||
|
#define BK_CORE_INFO(...) ::Bk::Log::GetCoreLogger()->info(__VA_ARGS__) |
||||||
|
#define BK_CORE_WARN(...) ::Bk::Log::GetCoreLogger()->warn(__VA_ARGS__) |
||||||
|
#define BK_CORE_ERROR(...) ::Bk::Log::GetCoreLogger()->error(__VA_ARGS__) |
||||||
|
#define BK_CORE_CRITICAL(...) ::Bk::Log::GetCoreLogger()->critical(__VA_ARGS__) |
||||||
|
|
||||||
|
// Client log macros
|
||||||
|
#define BK_TRACE(...) ::Bk::Log::GetAppLogger()->trace(__VA_ARGS__) |
||||||
|
#define BK_INFO(...) ::Bk::Log::GetAppLogger()->info(__VA_ARGS__) |
||||||
|
#define BK_WARN(...) ::Bk::Log::GetAppLogger()->warn(__VA_ARGS__) |
||||||
|
#define BK_ERROR(...) ::Bk::Log::GetAppLogger()->error(__VA_ARGS__) |
||||||
|
#define BK_CRITICAL(...) ::Bk::Log::GetAppLogger()->critical(__VA_ARGS__) |
||||||
|
|
||||||
|
} |
@ -1,7 +1,9 @@ |
|||||||
#include <iostream> |
#include <iostream> |
||||||
#include <bakara/math/math.h> |
#include <bakara.h> |
||||||
|
|
||||||
int main() { |
int main() { |
||||||
|
Bk::Log::Init(); |
||||||
|
BK_INFO("Bienvenue dans la sandbox {0}", "bakara"); |
||||||
Bk::Math::Vec2 vec(2.0f,2.0f); |
Bk::Math::Vec2 vec(2.0f,2.0f); |
||||||
std::cout << vec.x << " " << vec.y <<"\n"; |
std::cout << vec.x << " " << vec.y <<"\n"; |
||||||
} |
} |
Loading…
Reference in New Issue