Logger System 0.1.3
High-performance C++20 thread-safe logging system with asynchronous capabilities
Loading...
Searching...
No Matches
kcenon::logger::security::signal_manager_interface Interface Referenceabstract

Interface for signal handler management. More...

#include <signal_manager_interface.h>

Inheritance diagram for kcenon::logger::security::signal_manager_interface:
Inheritance graph
Collaboration diagram for kcenon::logger::security::signal_manager_interface:
Collaboration graph

Public Member Functions

virtual ~signal_manager_interface ()=default
 
virtual void register_logger (critical_logger_interface *log)=0
 Register a logger to receive signal notifications.
 
virtual void unregister_logger (critical_logger_interface *log)=0
 Unregister a logger.
 
virtual bool are_handlers_installed () const =0
 Check if signal handlers are installed.
 
virtual size_t logger_count () const =0
 Get number of registered loggers.
 

Detailed Description

Interface for signal handler management.

This interface defines the contract for managing signal handlers and logger registration. It enables dependency injection and mocking for tests.

Key Responsibilities:

  • Register/unregister loggers for signal notifications
  • Install/manage signal handlers
  • Provide signal-safe emergency flushing
Since
2.0.0

Definition at line 34 of file signal_manager_interface.h.

Constructor & Destructor Documentation

◆ ~signal_manager_interface()

virtual kcenon::logger::security::signal_manager_interface::~signal_manager_interface ( )
virtualdefault

Member Function Documentation

◆ are_handlers_installed()

virtual bool kcenon::logger::security::signal_manager_interface::are_handlers_installed ( ) const
pure virtual

Check if signal handlers are installed.

Returns
true if handlers are installed, false otherwise

Thread-safe: yes

Implemented in kcenon::logger::security::signal_manager.

◆ logger_count()

virtual size_t kcenon::logger::security::signal_manager_interface::logger_count ( ) const
pure virtual

Get number of registered loggers.

Returns
Count of registered loggers

Thread-safe: yes

Implemented in kcenon::logger::security::signal_manager.

◆ register_logger()

virtual void kcenon::logger::security::signal_manager_interface::register_logger ( critical_logger_interface * log)
pure virtual

Register a logger to receive signal notifications.

Parameters
logLogger interface for emergency flushing

Signal handlers are installed when the first logger is registered. Thread-safe: yes

Implemented in kcenon::logger::security::signal_manager.

◆ unregister_logger()

virtual void kcenon::logger::security::signal_manager_interface::unregister_logger ( critical_logger_interface * log)
pure virtual

Unregister a logger.

Parameters
logLogger to unregister

Signal handlers are removed when the last logger is unregistered. Thread-safe: yes

Implemented in kcenon::logger::security::signal_manager.


The documentation for this interface was generated from the following file: