Helios Engine
A modular ECS based data-oriented C++23 game engine framework
Loading...
Searching...
No Matches
logger.hpp File Reference
#include <helios/log/config.hpp>
#include <format>
#include <memory>
#include <mutex>
#include <shared_mutex>
#include <source_location>
#include <string>
#include <string_view>
#include <unordered_map>

Go to the source code of this file.

Classes

struct  helios::log::DefaultLogger
 Default logger type. More...
class  helios::log::Logger
 Centralized logging system with configurable output and formatting. More...

Namespaces

namespace  spdlog
namespace  helios
namespace  helios::log
namespace  helios::log::details

Functions

void helios::log::Trace (std::string_view) noexcept
template<typename... Args>
void helios::log::Trace (Args &&...) noexcept
template<LoggerTrait T>
void helios::log::Trace (T, std::string_view) noexcept
template<LoggerTrait T, typename... Args>
void helios::log::Trace (T, Args &&...) noexcept
void helios::log::Debug (std::string_view) noexcept
template<typename... Args>
void helios::log::Debug (Args &&...) noexcept
template<LoggerTrait T>
void helios::log::Debug (T, std::string_view) noexcept
template<LoggerTrait T, typename... Args>
void helios::log::Debug (T, Args &&...) noexcept
void helios::log::Info (std::string_view message) noexcept
 Logs an info message with the default logger.
template<typename... Args>
requires (sizeof...(Args) > 0)
void helios::log::Info (std::format_string< Args... > fmt, Args &&... args) noexcept
 Logs a formatted info message with the default logger.
template<LoggerTrait T>
void helios::log::Info (T logger, std::string_view message) noexcept
 Logs an info message with the specified logger.
template<LoggerTrait T, typename... Args>
requires (sizeof...(Args) > 0)
void helios::log::Info (T logger, std::format_string< Args... > fmt, Args &&... args) noexcept
 Logs a formatted info message with the specified logger.
void helios::log::Warn (std::string_view message) noexcept
 Logs a warning message with the default logger.
template<typename... Args>
requires (sizeof...(Args) > 0)
void helios::log::Warn (std::format_string< Args... > fmt, Args &&... args) noexcept
 Logs a formatted warning message with the default logger.
template<LoggerTrait T>
void helios::log::Warn (T logger, std::string_view message) noexcept
 Logs a warning message with the specified logger.
template<LoggerTrait T, typename... Args>
requires (sizeof...(Args) > 0)
void helios::log::Warn (T logger, std::format_string< Args... > fmt, Args &&... args) noexcept
 Logs a formatted warning message with the specified logger.
void helios::log::Error (std::string_view message) noexcept
 Logs an error message with the default logger.
template<typename... Args>
requires (sizeof...(Args) > 0)
void helios::log::Error (std::format_string< Args... > fmt, Args &&... args) noexcept
 Logs a formatted error message with the default logger.
template<LoggerTrait T>
void helios::log::Error (T logger, std::string_view message) noexcept
 Logs an error message with the specified logger.
template<LoggerTrait T, typename... Args>
requires (sizeof...(Args) > 0)
void helios::log::Error (T logger, std::format_string< Args... > fmt, Args &&... args) noexcept
 Logs a formatted error message with the specified logger.
void helios::log::Critical (std::string_view message) noexcept
 Logs a critical message with the default logger.
template<typename... Args>
requires (sizeof...(Args) > 0)
void helios::log::Critical (std::format_string< Args... > fmt, Args &&... args) noexcept
 Logs a formatted critical message with the default logger.
template<LoggerTrait T>
void helios::log::Critical (T logger, std::string_view message) noexcept
 Logs a critical message with the specified logger.
template<LoggerTrait T, typename... Args>
requires (sizeof...(Args) > 0)
void helios::log::Critical (T logger, std::format_string< Args... > fmt, Args &&... args) noexcept
 Logs a formatted critical message with the specified logger.
void helios::log::details::LogAssertionViaLogger (std::string_view condition, const std::source_location &loc, std::string_view message) noexcept
 Log plugin assertion handler implementation.

Variables

constexpr DefaultLogger helios::log::kDefaultLogger {}
 Constexpr instance of the default logger for easier user interface.