Logger System 0.1.3
High-performance C++20 thread-safe logging system with asynchronous capabilities
Loading...
Searching...
No Matches
log_sink_interface.h
Go to the documentation of this file.
1// BSD 3-Clause License
2// Copyright (c) 2025, 🍀☀🌕🌥 🌊
3// See the LICENSE file in the project root for full license information.
4
11#pragma once
12
13#include <kcenon/common/patterns/result.h>
15
16namespace kcenon::logger {
17
18// Forward declaration
19struct log_entry;
20
29public:
30 virtual ~log_sink_interface() = default;
31
37 virtual common::VoidResult process(const log_entry& entry) = 0;
38
43 virtual bool supports_async() const = 0;
44};
45
46} // namespace kcenon::logger
virtual bool supports_async() const =0
Check if this sink supports async processing.
virtual common::VoidResult process(const log_entry &entry)=0
Process a log entry.
virtual ~log_sink_interface()=default
Error codes specific to the logger system.
Represents a single log entry with all associated metadata.
Definition log_entry.h:155