18 std::unique_lock lock(
mutex_);
33 std::unique_lock lock(
mutex_);
43 -> std::vector<security::critical_logger_interface*>
45 std::shared_lock lock(
mutex_);
51 std::shared_lock lock(
mutex_);
57 std::shared_lock lock(
mutex_);
void register_logger(security::critical_logger_interface *log)
Register a logger for tracking.
bool empty() const
Check if registry is empty.
auto get_registered_loggers() const -> std::vector< security::critical_logger_interface * >
Get all registered loggers.
void unregister_logger(security::critical_logger_interface *log)
Unregister a logger.
std::vector< security::critical_logger_interface * > loggers_
Registered loggers (using vector to preserve registration order)
std::shared_mutex mutex_
Mutex for thread-safe access (shared for read, exclusive for write)
size_t size() const
Get number of registered loggers.
Interface for loggers that support emergency flushing.
Manages logger registration and tracking.