#pragma once

#include "spdlog/spdlog.h"
#include <spdlog/sinks/stdout_color_sinks.h> // 彩色控制台日志
#include <spdlog/sinks/basic_file_sink.h> // 文件日志
#include "spdlog/sinks/qt_sinks.h"
#include <memory>

class Spdlogger
{
public:
	static void init(spdlog::level::level_enum log_level, std::string filename);
	static void drop();

	template<typename... Args>
	static void debug(spdlog::format_string_t<Args...> fmt, Args &&...args) {
		//if (logger) logger->debug(fmt, args...);
	}

	template<typename... Args>
	static void info(spdlog::format_string_t<Args...> fmt, Args &&...args) {
		//if (logger) logger->info(fmt, args...);
	}

	template<typename... Args>
	static void warn(spdlog::format_string_t<Args...> fmt, Args &&...args) {
		//if (logger) logger->warn(fmt, args...);
	}

	template<typename... Args>
	static void error(spdlog::format_string_t<Args...> fmt, Args &&...args) {
		//if (logger) logger->error(fmt, args...);
	}

private:
	//static std::shared_ptr<spdlog::logger> logger;
};