Icarus
Vehicle Simulation as a Transformable Computational Graph, built on Vulcan and Janus
Loading...
Searching...
No Matches
LogService.hpp File Reference

Unified logging service for Icarus. More...

#include <icarus/core/CoreTypes.hpp>
#include <icarus/io/log/Console.hpp>
#include <algorithm>
#include <chrono>
#include <functional>
#include <iomanip>
#include <mutex>
#include <sstream>
#include <string>
#include <string_view>
#include <vector>
Include dependency graph for LogService.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  icarus::LogConfig
 Logging configuration. More...
struct  icarus::LogContext
 Immutable log context - set by component/entity during execution. More...
struct  icarus::LogEntry
 A single log entry with full context. More...
class  icarus::LogContextManager
 Thread-local log context manager. More...
class  icarus::LogContextManager::ScopedContext
 RAII guard for automatic context management. More...
class  icarus::LogService
 Unified logging service for Icarus. More...
class  icarus::LogService::BufferedScope
 RAII guard for buffered mode. More...

Namespaces

namespace  icarus

Macros

#define ICARUS_LOG_TRACE(sim_time, msg)
#define ICARUS_LOG_DEBUG(sim_time, msg)
#define ICARUS_LOG_INFO(sim_time, msg)
#define ICARUS_LOG_EVENT(sim_time, msg)
#define ICARUS_LOG_WARN(sim_time, msg)
#define ICARUS_LOG_ERROR(sim_time, msg)
#define ICARUS_LOG_FATAL(sim_time, msg)

Functions

LogServiceicarus::GetLogService ()
 Global log service singleton.

Detailed Description

Unified logging service for Icarus.

Part of Phase 2.5: ASCII-Rich Logging. Provides both immediate and buffered logging modes.

Consolidates: LogConfig, LogEntry, LogContextManager, LogService

Macro Definition Documentation

◆ ICARUS_LOG_DEBUG

#define ICARUS_LOG_DEBUG ( sim_time,
msg )
Value:
void Debug(double t, std::string_view msg)
Definition LogService.hpp:382
LogService & GetLogService()
Global log service singleton.
Definition LogService.hpp:536

◆ ICARUS_LOG_ERROR

#define ICARUS_LOG_ERROR ( sim_time,
msg )
Value:
void Error(double t, std::string_view msg)
Definition LogService.hpp:386

◆ ICARUS_LOG_EVENT

#define ICARUS_LOG_EVENT ( sim_time,
msg )
Value:
void Event(double t, std::string_view msg)
Definition LogService.hpp:384

◆ ICARUS_LOG_FATAL

#define ICARUS_LOG_FATAL ( sim_time,
msg )
Value:
void Fatal(double t, std::string_view msg)
Definition LogService.hpp:387

◆ ICARUS_LOG_INFO

#define ICARUS_LOG_INFO ( sim_time,
msg )
Value:
::icarus::GetLogService().Info(sim_time, msg)
void Info(double t, std::string_view msg)
Definition LogService.hpp:383

◆ ICARUS_LOG_TRACE

#define ICARUS_LOG_TRACE ( sim_time,
msg )
Value:
void Trace(double t, std::string_view msg)
Definition LogService.hpp:381

◆ ICARUS_LOG_WARN

#define ICARUS_LOG_WARN ( sim_time,
msg )
Value:
void Warning(double t, std::string_view msg)
Definition LogService.hpp:385