Files
workinf_Blender_Wasm/blender-5.2.0/intern/cycles/blender/logging.cpp
2026-08-12 04:47:48 -04:00

72 lines
2.1 KiB
C++

/* SPDX-FileCopyrightText: 2011-2022 Blender Foundation
*
* SPDX-License-Identifier: Apache-2.0 */
#include "blender/CCL_api.h"
#include "util/log.h"
#include "CLG_log.h"
namespace blender {
static CLG_LogRef LOG = {"cycles"};
void CCL_log_init()
{
/* Set callback to pass log messages to CLOG. */
ccl::log_init(
[](const ccl::LogLevel level, const char *file_line, const char *func, const char *msg) {
const CLG_LogType *log_type = CLOG_ENSURE(&LOG);
switch (level) {
case ccl::LOG_LEVEL_FATAL:
case ccl::LOG_LEVEL_DFATAL:
CLG_log_str(log_type, CLG_LEVEL_FATAL, file_line, func, msg);
return;
case ccl::LOG_LEVEL_ERROR:
case ccl::LOG_LEVEL_DERROR:
CLG_log_str(log_type, CLG_LEVEL_ERROR, file_line, func, msg);
return;
case ccl::LOG_LEVEL_WARNING:
case ccl::LOG_LEVEL_DWARNING:
CLG_log_str(log_type, CLG_LEVEL_WARN, file_line, func, msg);
return;
case ccl::LOG_LEVEL_INFO:
case ccl::LOG_LEVEL_INFO_IMPORTANT:
CLG_log_str(log_type, CLG_LEVEL_INFO, file_line, func, msg);
return;
case ccl::LOG_LEVEL_DEBUG:
CLG_log_str(log_type, CLG_LEVEL_DEBUG, file_line, func, msg);
return;
case ccl::LOG_LEVEL_TRACE:
case ccl::LOG_LEVEL_UNKNOWN:
CLG_log_str(log_type, CLG_LEVEL_TRACE, file_line, func, msg);
return;
}
});
/* Map log level from CLOG. */
const CLG_LogType *log_type = CLOG_ENSURE(&LOG);
switch (log_type->level) {
case CLG_LEVEL_FATAL:
ccl::log_level_set(ccl::LOG_LEVEL_FATAL);
break;
case CLG_LEVEL_ERROR:
ccl::log_level_set(ccl::LOG_LEVEL_ERROR);
break;
case CLG_LEVEL_WARN:
ccl::log_level_set(ccl::LOG_LEVEL_WARNING);
break;
case CLG_LEVEL_INFO:
ccl::log_level_set(ccl::LOG_LEVEL_INFO);
break;
case CLG_LEVEL_DEBUG:
ccl::log_level_set(ccl::LOG_LEVEL_DEBUG);
break;
case CLG_LEVEL_TRACE:
ccl::log_level_set(ccl::LOG_LEVEL_TRACE);
break;
}
}
} // namespace blender