#ifndef LOGGING_LOGGER_H_ #define LOGGING_LOGGER_H_ #include "ILogger.hh" #include "ILogHandler.hh" #include "LoggingBase.hh" #include #include #include "../common/ResourceKeeper.hpp" namespace logging { class Logger : public ILogger { public: typedef uint16_t Id; private: Id idx; ResourceKeeper * handler; // Хранитель журнала. base::log_permit_flag log_permission; uint32_t on_counter; void fill_record( const char * message, std::size_t length, LogRecord & record ); public: Logger(Id, base::log_permit_flag, uint32_t on_counter ); void log_critical( const char *, std::size_t ); void log_error( const char *, std::size_t ); void log_information( const char *, std::size_t ); void add_handler( ResourceKeeper * ); }; } #endif /* LOGGING_LOGGER_H_ */