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>
14
#include <
kcenon/logger/core/error_codes.h
>
15
16
namespace
kcenon::logger
{
17
18
// Forward declaration
19
struct
log_entry;
20
28
class
log_sink_interface
{
29
public
:
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
kcenon::common::VoidResult
Definition
error_codes.h:116
kcenon::logger::log_sink_interface
Interface for log sinks.
Definition
log_sink_interface.h:28
kcenon::logger::log_sink_interface::supports_async
virtual bool supports_async() const =0
Check if this sink supports async processing.
kcenon::logger::log_sink_interface::process
virtual common::VoidResult process(const log_entry &entry)=0
Process a log entry.
kcenon::logger::log_sink_interface::~log_sink_interface
virtual ~log_sink_interface()=default
error_codes.h
Error codes specific to the logger system.
kcenon::logger
Definition
common_logger_adapter.h:29
kcenon::logger::log_entry
Represents a single log entry with all associated metadata.
Definition
log_entry.h:155
include
kcenon
logger
interfaces
log_sink_interface.h
Generated by
1.12.0