6 #if defined ( M5UNIFIED_PC_BUILD )
8 static constexpr
const uint8_t log_colors_serial[] = { 98, 91, 93, 92, 96, 97, };
10 static constexpr
const uint8_t log_colors_serial[] = { 38, 31, 33, 32, 36, 37, };
12 static constexpr
const uint8_t log_colors_display[] = { 0xFF, 0xE0, 0xFC, 0x18, 0x1F, 0x92, };
16 constexpr
const char Log_Class::str_crlf[3];
22 char * p = (
char *)path;
26 if(*p ==
'/' || *p ==
'\\')
37 if (_level_maximum < level) {
return; }
39 va_start(args, format);
40 output(level,
true, format, args);
47 va_start(args, format);
48 output(esp_log_level_t::ESP_LOG_NONE,
false, format, args);
52 void Log_Class::update_level(
void)
57 void Log_Class::output(esp_log_level_t level,
bool suffix,
const char* __restrict format, va_list arg)
63 int len = vsnprintf(str,
sizeof(loc_buf), format, copy);
65 if (len < 0) {
return; }
66 if ((
size_t)len >=
sizeof(loc_buf))
68 auto tmp = (
char*) alloca(len + 1);
72 len = vsnprintf(str, len+1, format, arg);
80 #if defined(M5UNIFIED_PC_BUILD)
81 ::printf(
"\033[0;%dm%s\033[0m", log_colors_serial[level], str);
82 #elif defined ( ARDUINO )
83 log_printf(
"\033[0;%dm%s\033[0m", log_colors_serial[level], str);
85 esp_rom_printf(
"\033[0;%dm%s\033[0m", log_colors_serial[level], str);
90 #if defined(M5UNIFIED_PC_BUILD)
92 #elif defined ( ARDUINO )
100 #if defined(M5UNIFIED_PC_BUILD)
102 #elif defined ( ARDUINO )
109 #if defined(M5UNIFIED_PC_BUILD)
118 auto style = _display->getTextStyle();
119 if (style.fore_rgb888 == style.back_rgb888)
121 _display->setTextColor(log_colors_display[level]);
125 _display->setTextColor(log_colors_display[level], m5gfx::color_convert<m5gfx::rgb332_t, m5gfx::rgb888_t>(style.back_rgb888));
127 _display->print(str);
128 _display->setTextStyle(style);
132 _display->print(str);
void setDisplay(M5GFX *target)
void operator()(esp_log_level_t level, const char *format,...)
Output log.
static const char * pathToFileName(const char *path)
not for use.
void printf(const char *format,...)