HF Interface Wrapper 0.1.0-dev
Embedded C++ hardware abstraction layer
Loading...
Searching...
No Matches
Logger Module

All logging-related types, enums, and functions for system logging. More...

Files

file  BaseLogger.h
 Unified logging base class for all logging implementations.
 
file  EspLogger.h
 ESP32-specific logger implementation for the HardFOC system.
 

Classes

struct  hf_logger_config_t
 Logger configuration structure. More...
 
struct  hf_logger_statistics_t
 Logger statistics structure. More...
 
struct  hf_logger_diagnostics_t
 Logger diagnostics structure. More...
 
struct  hf_log_message_t
 Log message structure. More...
 
class  BaseLogger
 Base logger abstract class. More...
 

Macros

#define HF_LOGGER_ERR_LIST(X)
 HardFOC Logger error codes macro list.
 
#define HF_LOGGER_ERR_ENUM(name, value, description)   name = value,
 Generate logger error enum from macro list.
 

Enumerations

enum class  hf_log_level_t : hf_u8_t {
  hf_log_level_t::LOG_LEVEL_NONE = 0 , hf_log_level_t::LOG_LEVEL_ERROR = 1 , hf_log_level_t::LOG_LEVEL_WARN = 2 , hf_log_level_t::LOG_LEVEL_INFO = 3 ,
  hf_log_level_t::LOG_LEVEL_DEBUG = 4 , hf_log_level_t::LOG_LEVEL_VERBOSE = 5
}
 Log levels enumeration. More...
 
enum class  hf_log_output_t : hf_u8_t {
  hf_log_output_t::LOG_OUTPUT_NONE = 0 , hf_log_output_t::LOG_OUTPUT_UART = 1 , hf_log_output_t::LOG_OUTPUT_USB = 2 , hf_log_output_t::LOG_OUTPUT_FILE = 3 ,
  hf_log_output_t::LOG_OUTPUT_NETWORK = 4 , hf_log_output_t::LOG_OUTPUT_CUSTOM = 5
}
 Log output destination enumeration. More...
 
enum class  hf_log_format_t : hf_u32_t {
  hf_log_format_t::LOG_FORMAT_NONE = 0 , hf_log_format_t::LOG_FORMAT_TIMESTAMP = (1U << 0) , hf_log_format_t::LOG_FORMAT_LEVEL = (1U << 1) , hf_log_format_t::LOG_FORMAT_TAG = (1U << 2) ,
  hf_log_format_t::LOG_FORMAT_FILE_LINE = (1U << 3) , hf_log_format_t::LOG_FORMAT_FUNCTION = (1U << 4) , hf_log_format_t::LOG_FORMAT_THREAD_ID = (1U << 5) , hf_log_format_t::LOG_FORMAT_COLORS = (1U << 6) ,
  hf_log_format_t::LOG_FORMAT_DEFAULT = LOG_FORMAT_TIMESTAMP | LOG_FORMAT_LEVEL | LOG_FORMAT_TAG
}
 Log format options. More...
 

Detailed Description

All logging-related types, enums, and functions for system logging.

This module provides comprehensive logging functionality including:

Macro Definition Documentation

◆ HF_LOGGER_ERR_ENUM

#define HF_LOGGER_ERR_ENUM ( name,
value,
description )   name = value,

Generate logger error enum from macro list.

◆ HF_LOGGER_ERR_LIST

#define HF_LOGGER_ERR_LIST ( X)

HardFOC Logger error codes macro list.

X-macro pattern for comprehensive error enumeration. Each entry contains: X(NAME, VALUE, DESCRIPTION)

Enumeration Type Documentation

◆ hf_log_format_t

enum class hf_log_format_t : hf_u32_t
strong

Log format options.

Enumerator
LOG_FORMAT_NONE 

No formatting.

LOG_FORMAT_TIMESTAMP 

Include timestamp.

LOG_FORMAT_LEVEL 

Include log level.

LOG_FORMAT_TAG 

Include tag.

LOG_FORMAT_FILE_LINE 

Include file and line.

LOG_FORMAT_FUNCTION 

Include function name.

LOG_FORMAT_THREAD_ID 

Include thread ID.

LOG_FORMAT_COLORS 

Include ANSI colors.

LOG_FORMAT_DEFAULT 

◆ hf_log_level_t

enum class hf_log_level_t : hf_u8_t
strong

Log levels enumeration.

Enumerator
LOG_LEVEL_NONE 

No logging.

LOG_LEVEL_ERROR 

Error messages only.

LOG_LEVEL_WARN 

Warning and error messages.

LOG_LEVEL_INFO 

Info, warning, and error messages.

LOG_LEVEL_DEBUG 

Debug, info, warning, and error messages.

LOG_LEVEL_VERBOSE 

All messages including verbose.

◆ hf_log_output_t

enum class hf_log_output_t : hf_u8_t
strong

Log output destination enumeration.

Enumerator
LOG_OUTPUT_NONE 

No output.

LOG_OUTPUT_UART 

UART serial output.

LOG_OUTPUT_USB 

USB CDC output.

LOG_OUTPUT_FILE 

File system output.

LOG_OUTPUT_NETWORK 

Network output.

LOG_OUTPUT_CUSTOM 

Custom output callback.