The multi-backend Logger, its LOG_*() macros and every logging backend (console, UDP, USB Gecko/serial, file). More...
Classes | |
| struct | LogConfig |
| Full runtime configuration for the Logger. More... | |
| class | LoggingDriver |
| Abstract backend a Logger fans a formatted line out to. More... | |
| class | Logger |
| Central fan-out dispatcher. More... | |
| class | LoggerFile |
| Log backend that appends to a file through the platform's devoptab path. More... | |
| class | OgcLoggerSysReport |
| Log backend writing to the console debug output via SYS_Report. More... | |
| class | OgcLoggerUdp |
| Non-blocking UDP log backend. More... | |
| class | OgcLoggerUsbGecko |
| Log backend for a USB Gecko adapter over EXI, via usbgecko.c. More... | |
| class | WutLoggerOSReport |
| Log backend writing to the console debug output via OSReport. More... | |
| class | WutLoggerUdp |
| Non-blocking UDP log backend over nsysnet sockets. More... | |
| class | WutLoggerUsbSerial |
| Log backend writing to a USB serial adapter (requires the optional usbserial module). More... | |
Enumerations | |
| enum class | LogLevel : uint8_t { Debug , Info , Warning , Error , None } |
| Severity of a single log call. More... | |
| enum class | LogMode : uint8_t { LogMode::OSReport , UDP , SerialGecko , File , LogMode::Multi } |
| Which single backend is active when LogConfig::mode isn't Multi. More... | |
| enum | LogBackendId : uint32_t { LOGGER_NONE = 0 , LOGGER_OSREPORT = 1u << 0 , LOGGER_UDP = 1u << 1 , LOGGER_SERIAL = 1u << 2 , LOGGER_FILE = 1u << 3 } |
| Bitmask identifying an individual backend. More... | |
| enum class | LogFlushPolicy : uint8_t { LogFlushPolicy::Immediate , LogFlushPolicy::EveryNWrites , LogFlushPolicy::Never } |
| How LoggerFile flushes writes to storage. More... | |
The multi-backend Logger, its LOG_*() macros and every logging backend (console, UDP, USB Gecko/serial, file).
| enum LogBackendId : uint32_t |
|
strong |
How LoggerFile flushes writes to storage.
| Enumerator | |
|---|---|
| Immediate | fflush() after every write - safest against a crash/power loss, slowest |
| EveryNWrites | fflush() every LogConfig::flushEveryNWrites writes |
| Never | rely on the C library / fclose() at shutdown - fastest, least crash-safe |
|
strong |
Severity of a single log call.
None is only meaningful as a LogConfig::level value ("log nothing"), never passed to a LOG_*() call.
|
strong |
Which single backend is active when LogConfig::mode isn't Multi.
Kept separate from LogBackendId below so the common case - "just point me at one backend" - doesn't require touching a bitmask.
| Enumerator | |
|---|---|
| OSReport | OSReport (Wii U) / SYS_Report (GC+Wii) - always safe, no hardware required. |
| Multi | fan out to every backend set in LogConfig::multiBackendMask |