#pragma once #include #include #include #include namespace util { /* * @brief callback function for logging with log level * * @param loglevel PDBG log level * @param format format of output function, same as in printf() * @param args variable list * * @return none */ inline void pdbg_log_callback(const int loglevel, const char* format, va_list args) { constexpr size_t MSG_MAX_LEN = 256; char msg[MSG_MAX_LEN]; vsnprintf(msg, MSG_MAX_LEN, format, args); switch (loglevel) { case PDBG_ERROR: phosphor::logging::log(msg); break; case PDBG_WARNING: phosphor::logging::log(msg); break; case PDBG_NOTICE: phosphor::logging::log(msg); break; case PDBG_INFO: phosphor::logging::log(msg); break; case PDBG_DEBUG: phosphor::logging::log(msg); break; default: phosphor::logging::log(msg); break; } } } // namespace util