Blender V4.3
CLG_log.h File Reference

Go to the source code of this file.

Classes

struct  CLG_LogType
 
struct  CLG_LogRef
 

Macros

#define _CLOG_ATTR_NONNULL(...)
 
#define _CLOG_ATTR_PRINTF_FORMAT(format_param, dots_param)
 
#define STRINGIFY_ARG(x)   "" #x
 
#define STRINGIFY_APPEND(a, b)   "" a #b
 
#define STRINGIFY(x)   STRINGIFY_APPEND("", x)
 
#define CLG_SEVERITY_LEN   (CLG_SEVERITY_FATAL + 1)
 
#define CLG_LOGREF_DECLARE_GLOBAL(var, id)
 
#define CLOG_ENSURE(clg_ref)    ((clg_ref)->type ? (clg_ref)->type : (CLG_logref_init(clg_ref), (clg_ref)->type))
 
#define CLOG_CHECK(clg_ref, verbose_level, ...)
 
#define CLOG_AT_SEVERITY(clg_ref, severity, verbose_level, ...)
 
#define CLOG_STR_AT_SEVERITY(clg_ref, severity, verbose_level, str)
 
#define CLOG_INFO(clg_ref, level, ...)    CLOG_AT_SEVERITY(clg_ref, CLG_SEVERITY_INFO, level, __VA_ARGS__)
 
#define CLOG_WARN(clg_ref, ...)   CLOG_AT_SEVERITY(clg_ref, CLG_SEVERITY_WARN, 0, __VA_ARGS__)
 
#define CLOG_ERROR(clg_ref, ...)   CLOG_AT_SEVERITY(clg_ref, CLG_SEVERITY_ERROR, 0, __VA_ARGS__)
 
#define CLOG_FATAL(clg_ref, ...)   CLOG_AT_SEVERITY(clg_ref, CLG_SEVERITY_FATAL, 0, __VA_ARGS__)
 
#define CLOG_STR_INFO(clg_ref, level, str)    CLOG_STR_AT_SEVERITY(clg_ref, CLG_SEVERITY_INFO, level, str)
 
#define CLOG_STR_WARN(clg_ref, str)   CLOG_STR_AT_SEVERITY(clg_ref, CLG_SEVERITY_WARN, 0, str)
 
#define CLOG_STR_ERROR(clg_ref, str)   CLOG_STR_AT_SEVERITY(clg_ref, CLG_SEVERITY_ERROR, 0, str)
 
#define CLOG_STR_FATAL(clg_ref, str)   CLOG_STR_AT_SEVERITY(clg_ref, CLG_SEVERITY_FATAL, 0, str)
 

Typedefs

typedef struct CLG_LogType CLG_LogType
 
typedef struct CLG_LogRef CLG_LogRef
 

Enumerations

enum  CLG_LogFlag { CLG_FLAG_USE = (1 << 0) }
 
enum  CLG_Severity { CLG_SEVERITY_INFO = 0 , CLG_SEVERITY_WARN , CLG_SEVERITY_ERROR , CLG_SEVERITY_FATAL }
 

Functions

void CLG_log_str (const CLG_LogType *lg, enum CLG_Severity severity, const char *file_line, const char *fn, const char *message) _CLOG_ATTR_NONNULL(1
 
void void CLG_logf (const CLG_LogType *lg, enum CLG_Severity severity, const char *file_line, const char *fn, const char *format,...) _CLOG_ATTR_NONNULL(1
 
void void _CLOG_ATTR_PRINTF_FORMAT (5, 6)
 
void CLG_init (void)
 
void CLG_exit (void)
 
void CLG_output_set (void *file_handle)
 
void CLG_output_use_basename_set (int value)
 
void CLG_output_use_timestamp_set (int value)
 
void CLG_error_fn_set (void(*error_fn)(void *file_handle))
 
void CLG_fatal_fn_set (void(*fatal_fn)(void *file_handle))
 
void CLG_backtrace_fn_set (void(*fatal_fn)(void *file_handle))
 
void CLG_type_filter_include (const char *type_match, int type_match_len)
 
void CLG_type_filter_exclude (const char *type_match, int type_match_len)
 
void CLG_level_set (int level)
 
void CLG_logref_init (CLG_LogRef *clg_ref)
 
int CLG_color_support_get (CLG_LogRef *clg_ref)
 

Detailed Description

C Logging Library (clog)

Usage

  • CLG_LOGREF_DECLARE_GLOBAL macro to declare CLG_LogRef pointers.
  • CLOG_ prefixed macros for logging.

Identifiers

CLG_LogRef holds an identifier which defines the category of the logger.

You can define and use identifiers as needed, logging will lazily initialize them.

By convention lower case dot separated identifiers are used, eg: module.sub_module, this allows filtering by module.*, see CLG_type_filter_include, CLG_type_filter_exclude

There is currently no functionality to remove a category once it's created.

Severity

  • INFO: Simply log events, uses verbosity levels to control how much information to show.
  • WARN: General warnings (which aren't necessary to show to users).
  • ERROR: An error we can recover from, should not happen.
  • FATAL: Similar to assert. This logs the message, then a stack trace and abort.

    Verbosity Level

Usage:

  • 0: Always show (used for warnings, errors). Should never get in the way or become annoying.
  • 1: Top level module actions (eg: load a file, create a new window .. etc).
  • 2: Actions within a module (steps which compose an action, but don't flood output). Running a tool, full data recalculation.
  • 3: Detailed actions which may be of interest when debugging internal logic of a module These may flood the log with details.
  • 4+: May be used for more details than 3, should be avoided but not prevented.

Definition in file CLG_log.h.

Macro Definition Documentation

◆ _CLOG_ATTR_NONNULL

#define _CLOG_ATTR_NONNULL ( ...)

Definition at line 66 of file CLG_log.h.

◆ _CLOG_ATTR_PRINTF_FORMAT

#define _CLOG_ATTR_PRINTF_FORMAT ( format_param,
dots_param )

Definition at line 73 of file CLG_log.h.

◆ CLG_LOGREF_DECLARE_GLOBAL

#define CLG_LOGREF_DECLARE_GLOBAL ( var,
id )
Value:
static CLG_LogRef _static_##var = {id}; \
CLG_LogRef *var = &_static_##var

Declare outside function, declare as extern in header.

Definition at line 145 of file CLG_log.h.

◆ CLG_SEVERITY_LEN

#define CLG_SEVERITY_LEN   (CLG_SEVERITY_FATAL + 1)

Definition at line 93 of file CLG_log.h.

Referenced by clg_severity_as_text(), clg_severity_to_color(), and write_severity().

◆ CLOG_AT_SEVERITY

#define CLOG_AT_SEVERITY ( clg_ref,
severity,
verbose_level,
... )
Value:
{ \
const CLG_LogType *_lg_ty = CLOG_ENSURE(clg_ref); \
if (((_lg_ty->flag & CLG_FLAG_USE) && (_lg_ty->level >= verbose_level)) || \
(severity >= CLG_SEVERITY_WARN)) \
{ \
CLG_logf(_lg_ty, severity, __FILE__ ":" STRINGIFY(__LINE__), __func__, __VA_ARGS__); \
} \
} \
((void)0)
@ CLG_SEVERITY_WARN
Definition CLG_log.h:89
@ CLG_FLAG_USE
Definition CLG_log.h:84
#define STRINGIFY(x)
Definition CLG_log.h:78
#define CLOG_ENSURE(clg_ref)
Definition CLG_log.h:150
enum CLG_LogFlag flag
Definition CLG_log.h:103

Definition at line 157 of file CLG_log.h.

◆ CLOG_CHECK

#define CLOG_CHECK ( clg_ref,
verbose_level,
... )
Value:
((void)CLOG_ENSURE(clg_ref), \
((clg_ref)->type->flag & CLG_FLAG_USE) && ((clg_ref)->type->level >= verbose_level))

Definition at line 153 of file CLG_log.h.

Referenced by ED_undo_push(), and ed_undo_step_post().

◆ CLOG_ENSURE

#define CLOG_ENSURE ( clg_ref)     ((clg_ref)->type ? (clg_ref)->type : (CLG_logref_init(clg_ref), (clg_ref)->type))

Initialize struct once.

Definition at line 150 of file CLG_log.h.

Referenced by blender::gpu::debug::init_gl_callbacks(), and blender::gpu::debug::mtl_debug_init().

◆ CLOG_ERROR

#define CLOG_ERROR ( clg_ref,
... )   CLOG_AT_SEVERITY(clg_ref, CLG_SEVERITY_ERROR, 0, __VA_ARGS__)

Definition at line 182 of file CLG_log.h.

Referenced by _final_goal(), _final_mass(), _softbody_calc_forces_slice_in_a_thread(), action_move_fcurves_by_basepath(), add_2nd_order_roller(), blender::render::hydra::GPURenderTaskDelegate::add_aov(), blender::render::hydra::RenderTaskDelegate::add_aov(), blender::ed::object::add_shapekey_layers(), armature_deform_coords_impl(), armature_undosys_step_decode(), binary_search_anim_path(), BKE_animdata_merge_copy(), BKE_animdata_transfer_by_basepath(), BKE_blendfile_append(), BKE_fcm_envelope_find_index(), BKE_fcurve_bezt_binarysearch_index_ex(), BKE_gpencil_frame_addnew(), BKE_icon_get(), BKE_icon_gplayer_color_ensure(), BKE_icon_id_ensure(), BKE_icon_imbuf_get_buffer(), BKE_icon_preview_ensure(), BKE_icon_set(), BKE_keyingset_add_path(), BKE_lib_override_library_main_hierarchy_root_ensure(), BKE_mask_layer_shape_changed_add(), BKE_mask_layer_shape_changed_remove(), BKE_mask_layer_shape_from_mask(), BKE_mask_layer_shape_to_mask(), BKE_mask_layer_shape_to_mask_interp(), BKE_maskrasterize_handle_sample(), BKE_nla_action_pushdown(), BKE_nla_action_stash(), BKE_object_material_slot_remove(), BKE_object_obdata_add_from_type(), BKE_pose_copy_result(), BKE_undosys_step_load_data_ex(), BLO_main_validate_embedded_flag(), BLO_write_struct_array_by_name(), BLO_write_struct_list_by_name(), bpath_absolute_relative_convert(), blender::io::usd::cache_image_color(), blender::io::hydra::cache_image_file(), blender::io::usd::USDMaterialReader::convert_usd_primvar_reader_float2(), blender::io::usd::USDMaterialReader::convert_usd_uv_texture(), curve_undosys_step_decode(), CustomData_external_read(), CustomData_external_write(), do_versions_ipos_to_animato(), blender::io::usd::USDTransformWriter::do_write(), driver_evaluate_simple_expr(), driver_get_variable_property(), DRW_notify_view_update(), dtar_get_prop_val(), ed_undo_step_by_name(), blender::render::hydra::engine_create_func(), blender::io::alembic::export_startjob(), blender::io::usd::export_texture(), fcm_fn_generator_evaluate(), fcurve_bake_modifiers(), fcurve_samples_to_keyframes(), fcurve_store_samples(), file_read_reports_finalize(), find_object_active_key_uid(), blender::io::usd::USDMaterialReader::follow_connection(), foreach_libblock_link_append_common_processing(), get_builtin_packedfile(), get_fmodifier_typeinfo(), get_obdata_defname(), give_parvert(), blender::bke::blendfile::PartialWriteContext::id_add(), id_buffer_init_for_id_type(), id_us_ensure_real(), id_us_min(), IDP_New(), blender::io::usd::USDMaterialReader::import_usd_preview(), ipo_to_animdata(), blender::gpu::VKBackend::is_supported(), blender::bke::blendfile::PartialWriteContext::is_valid(), lattice_undosys_step_decode(), layerRead_mdisps(), layerWrite_mdisps(), lib_id_library_local_paths_callback(), lib_override_library_main_resync_on_library_indirect_level(), lib_override_library_resync(), lib_override_resync_tagging_finalize_recurse(), lib_override_root_find(), lib_override_sort_libraries_func(), libblock_remap_foreach_idpair(), link_nodes(), main_namemap_validate_and_fix(), blender::io::usd::USDAbstractWriter::mark_as_instance(), mball_undosys_step_decode(), mesh_undosys_step_decode(), move_shapekey_layers_to_keyblocks(), nlastrip_evaluate_actionclip(), blender::bke::node_add_static_node(), blender::bke::node_add_static_socket(), blender::bke::node_modify_socket_type(), blender::bke::node_modify_socket_type_static(), blender::asset_system::AssetCatalogDefinitionFile::parse_catalog_file(), pchan_adrcodes_to_paths(), blender::io::usd::process_usdz_textures(), ptcache_dynamicpaint_read(), pyrna_srna_ExternalType(), pyrna_srna_Subtype(), read_data_into_datamap(), replace_if_different(), RNA_create(), RNA_def_enum(), RNA_def_enum_flag(), RNA_def_function(), rna_def_function(), RNA_def_function_return(), RNA_def_function_runtime(), RNA_def_property(), RNA_def_property_array(), rna_def_property_begin_func(), RNA_def_property_boolean_array_default(), RNA_def_property_boolean_default(), RNA_def_property_boolean_default_func(), RNA_def_property_boolean_funcs(), RNA_def_property_boolean_sdna(), RNA_def_property_collection_funcs(), RNA_def_property_collection_sdna(), RNA_def_property_dynamic_array_funcs(), RNA_def_property_editable_array_func(), RNA_def_property_editable_func(), RNA_def_property_enum_default(), RNA_def_property_enum_funcs(), RNA_def_property_enum_items(), RNA_def_property_enum_native_type(), RNA_def_property_enum_sdna(), RNA_def_property_float_array_default(), RNA_def_property_float_default(), RNA_def_property_float_default_func(), RNA_def_property_float_funcs(), RNA_def_property_float_sdna(), rna_def_property_funcs(), rna_def_property_get_func(), RNA_def_property_int_array_default(), RNA_def_property_int_default(), RNA_def_property_int_default_func(), RNA_def_property_int_funcs(), RNA_def_property_int_sdna(), rna_def_property_length_func(), RNA_def_property_multi_array(), RNA_def_property_override_funcs(), RNA_def_property_pointer_funcs(), RNA_def_property_pointer_sdna(), RNA_def_property_poll_runtime(), RNA_def_property_range(), rna_def_property_sdna(), rna_def_property_set_func(), RNA_def_property_srna(), RNA_def_property_string_default(), RNA_def_property_string_funcs(), RNA_def_property_string_maxlength(), RNA_def_property_string_sdna(), RNA_def_property_string_search_func(), RNA_def_property_struct_runtime(), RNA_def_property_struct_type(), RNA_def_property_ui_range(), RNA_def_property_ui_scale_type(), RNA_def_property_update(), RNA_def_struct(), RNA_def_struct_identifier(), RNA_def_struct_identifier_no_struct_map(), RNA_def_struct_idprops_func(), RNA_def_struct_name_property(), RNA_def_struct_nested(), RNA_def_struct_path_func(), RNA_def_struct_ptr(), RNA_def_struct_refine_func(), RNA_def_struct_register_funcs(), RNA_def_struct_sdna(), RNA_def_struct_sdna_from(), rna_find_container_def(), rna_find_function_def(), rna_find_parameter_def(), rna_find_sdna_member(), rna_find_struct_def(), rna_find_struct_property_def(), rna_generate_property(), rna_generate_struct(), rna_property_override_diff(), rna_property_override_operation_apply(), rna_property_override_operation_store(), sb_detect_aabb_collisionCached(), sb_detect_edge_collisionCached(), sb_detect_face_collisionCached(), sb_detect_face_pointCached(), sb_detect_vertex_collisionCached(), blender::io::usd::USDMaterialReader::set_node_input(), softbody_step(), split_libdata(), uhandle_restore_list(), version_liboverride_rnacollections_insertion_object(), version_liboverride_rnacollections_insertion_object_constraints(), where_am_i(), wm_event_add_ghostevent(), wm_handler_op_context_get_if_valid(), wm_handler_operator_call(), wm_macro_modal(), WM_menu_invoke_ex(), WM_modalkeymap_assign(), wm_operator_invoke(), wm_operatortype_append__end(), WM_operatortype_append_macro(), wm_xr_session_surface_offscreen_ensure(), write_at_address_validate(), blender::ed::asset::index::AssetIndexFile::write_contents(), and write_libraries().

◆ CLOG_FATAL

#define CLOG_FATAL ( clg_ref,
... )   CLOG_AT_SEVERITY(clg_ref, CLG_SEVERITY_FATAL, 0, __VA_ARGS__)

◆ CLOG_INFO

#define CLOG_INFO ( clg_ref,
level,
... )    CLOG_AT_SEVERITY(clg_ref, CLG_SEVERITY_INFO, level, __VA_ARGS__)

Definition at line 179 of file CLG_log.h.

Referenced by blender::render::hydra::GPURenderTaskDelegate::add_aov(), blender::render::hydra::RenderTaskDelegate::add_aov(), animviz_calc_motionpaths(), blender::render::hydra::GPURenderTaskDelegate::bind(), BKE_blendfile_library_relocate(), BKE_lib_override_library_main_resync(), BKE_mesh_validate(), BKE_undosys_stack_clear(), BKE_undosys_stack_init_or_active_with_type(), BKE_undosys_stack_limit_steps_and_memory(), BKE_undosys_step_load_data_ex(), BKE_undosys_step_push_init_with_type(), BKE_undosys_step_push_with_type(), BKE_volume_load(), BKE_volume_unload(), blendfile_append_define_actions(), blendfile_library_relocate_remap(), blo_find_main(), blo_read_file_internal(), BPY_context_member_get(), BPY_python_start(), blender::io::usd::cache_image_color(), blender::io::hydra::cache_image_file(), blender::io::hydra::cache_or_get_image_file(), blender::nodes::materialx::GroupNodeParser::compute(), blender::nodes::materialx::GroupInputNodeParser::compute_full(), blender::nodes::materialx::GroupOutputNodeParser::compute_full(), blender::nodes::materialx::NodeParser::compute_full(), blender::io::usd::copy_single_file(), blender::io::usd::copy_tiled_textures(), blender::io::alembic::ABCCameraWriter::create_alembic_objects(), blender::io::alembic::ABCCurveWriter::create_alembic_objects(), blender::io::alembic::ABCGenericMeshWriter::create_alembic_objects(), blender::io::alembic::ABCHairWriter::create_alembic_objects(), blender::io::alembic::ABCInstanceWriter::create_alembic_objects(), blender::io::alembic::ABCNurbsWriter::create_alembic_objects(), blender::io::alembic::ABCPointsWriter::create_alembic_objects(), blender::io::alembic::ABCTransformWriter::create_alembic_objects(), blender::nodes::materialx::NodeItem::create_node(), blender::io::usd::create_skel_roots(), cursor_buffer_handle_release(), cursor_surface_handle_enter(), cursor_surface_handle_leave(), cursor_surface_handle_preferred_buffer_scale(), data_device_handle_data_offer(), data_device_handle_drop(), data_device_handle_enter(), data_device_handle_leave(), data_device_handle_motion(), data_device_handle_selection(), data_offer_handle_action(), data_offer_handle_offer(), data_offer_handle_source_actions(), data_source_handle_action(), data_source_handle_cancelled(), data_source_handle_dnd_drop_performed(), data_source_handle_dnd_finished(), data_source_handle_send(), data_source_handle_target(), do_versions(), do_versions_after_linking(), dynamicPaint_createUVSurface(), ED_id_rename(), ED_undo_is_legacy_compatible_for_property(), ED_undo_operator_repeat(), ED_undo_push(), ed_undo_step_by_index(), ed_undo_step_by_name(), ed_undo_step_direction(), blender::render::hydra::engine_create_func(), blender::render::hydra::engine_free_func(), blender::render::hydra::engine_render_func(), blender::render::hydra::engine_set_render_setting_func(), blender::render::hydra::engine_update_func(), blender::render::hydra::engine_view_draw_func(), blender::io::usd::export_in_memory_texture(), blender::io::usd::export_packed_texture(), blender::io::alembic::export_startjob(), blender::nodes::materialx::export_to_materialx(), file_read_reports_finalize(), blender::ed::asset::index::filelist_finished(), foreach_libblock_append_finalize_action_callback(), blender::io::hydra::HydraSceneDelegate::Get(), blender::render::hydra::LightTasksDelegate::Get(), blender::render::hydra::RenderTaskDelegate::Get(), blender::asset_system::AssetLibraryService::get_asset_library_all(), blender::asset_system::AssetLibraryService::get_asset_library_current_file(), blender::asset_system::AssetLibraryService::get_asset_library_on_disk(), get_path_local_ex(), get_path_system_ex(), get_path_user_ex(), blender::io::hydra::HydraSceneDelegate::GetBasisCurvesTopology(), blender::io::hydra::HydraSceneDelegate::GetCullStyle(), blender::io::hydra::HydraSceneDelegate::GetDoubleSided(), blender::io::hydra::HydraSceneDelegate::GetInstanceIndices(), blender::io::hydra::HydraSceneDelegate::GetInstancerId(), blender::io::hydra::HydraSceneDelegate::GetInstancerPrototypes(), blender::io::hydra::HydraSceneDelegate::GetInstancerTransform(), blender::io::hydra::HydraSceneDelegate::GetLightParamValue(), blender::io::hydra::HydraSceneDelegate::GetMaterialId(), blender::io::hydra::HydraSceneDelegate::GetMaterialResource(), blender::io::hydra::HydraSceneDelegate::GetMeshTopology(), blender::io::hydra::HydraSceneDelegate::GetPrimvarDescriptors(), blender::render::hydra::RenderTaskDelegate::GetRenderBufferDescriptor(), blender::render::hydra::RenderTaskDelegate::GetTaskRenderTags(), blender::io::hydra::HydraSceneDelegate::GetTransform(), blender::io::hydra::HydraSceneDelegate::GetVisible(), blender::io::hydra::HydraSceneDelegate::GetVolumeFieldDescriptors(), ghost_event_proc(), GHOST_NDOFManagerUnix::GHOST_NDOFManagerUnix(), global_handle_add(), global_handle_remove(), blender::gpu::VKBackend::is_supported(), keyboard_depressed_state_push_events_from_change(), keyboard_handle_enter(), keyboard_handle_key(), keyboard_handle_keymap(), keyboard_handle_leave(), keyboard_handle_modifiers(), keyboard_handle_repeat_info(), layer_collection_resync_create_recurse(), layer_collection_resync_unused_layers_free(), layer_collection_sync(), lib_override_cleanup_after_resync(), lib_override_library_main_resync_on_library_indirect_level(), lib_override_library_operations_create(), lib_override_library_proxy_convert_do(), lib_override_library_resync(), lib_override_resync_tagging_finalize(), lib_override_resync_tagging_finalize_recurse(), lib_override_root_hierarchy_set(), blender::render::hydra::LightTasksDelegate::LightTasksDelegate(), blender::asset_system::AssetCatalogService::load_directory_recursive(), main_namemap_validate_and_fix(), openanim(), operator_last_properties_init_impl(), output_handle_description(), output_handle_done(), output_handle_geometry(), output_handle_mode(), output_handle_name(), output_handle_scale(), override_apply_property_check_skip(), blender::bke::pbvh::pbvh_bmesh_collapse_short_edges(), blender::bke::pbvh::pbvh_bmesh_subdivide_long_edges(), blender::gpu::VKBackend::platform_init(), pointer_handle_axis(), pointer_handle_axis_discrete(), pointer_handle_axis_source(), pointer_handle_axis_stop(), pointer_handle_axis_value120(), pointer_handle_button(), pointer_handle_enter(), pointer_handle_frame(), pointer_handle_leave(), pointer_handle_motion(), primary_selection_device_handle_data_offer(), primary_selection_device_handle_selection(), primary_selection_offer_offer(), primary_selection_source_cancelled(), primary_selection_source_send(), blender::io::usd::process_usdz_textures(), pyrna_srna_ExternalType(), blender::gpu::VKPipelinePool::read_from_disk(), blender::ed::asset::index::read_index(), read_libblock_undo_restore(), read_libblock_undo_restore_library(), read_libblock_undo_restore_linked(), read_libraries(), read_library_clear_weak_links(), read_library_linked_id(), relative_pointer_handle_relative_motion(), blender::io::hydra::InstancerData::remove(), blender::ed::asset::index::AssetLibraryIndex::remove_broken_index_files(), blender::bke::blendfile::PartialWriteContext::remove_unused(), blender::ed::asset::index::AssetLibraryIndex::remove_unused_index_files(), blender::render::hydra::GPURenderTaskDelegate::RenderTaskDelegate(), blender::gpu::VKImmediate::reset(), rna_property_override_apply_ex(), rna_property_override_check_resync(), rna_property_override_collection_subitem_lookup(), RNA_struct_override_apply(), RNA_struct_override_matches(), blender::ed::sculpt_paint::dyntopo::sculpt_detail_flood_fill_exec(), seat_handle_capabilities(), seat_handle_name(), GHOST_NDOFManager::sendMotionEvent(), GHOST_NDOFManager::setDeadZone(), GHOST_NDOFManager::setDevice(), shell_handle_ping(), surface_handle_enter(), surface_handle_leave(), tablet_seat_handle_pad_added(), tablet_seat_handle_tablet_added(), tablet_seat_handle_tool_added(), tablet_tool_handle_button(), tablet_tool_handle_capability(), tablet_tool_handle_distance(), tablet_tool_handle_done(), tablet_tool_handle_down(), tablet_tool_handle_frame(), tablet_tool_handle_hardware_id_wacom(), tablet_tool_handle_hardware_serial(), tablet_tool_handle_motion(), tablet_tool_handle_pressure(), tablet_tool_handle_proximity_in(), tablet_tool_handle_proximity_out(), tablet_tool_handle_removed(), tablet_tool_handle_rotation(), tablet_tool_handle_slider(), tablet_tool_handle_tilt(), tablet_tool_handle_type(), tablet_tool_handle_up(), tablet_tool_handle_wheel(), test_env_path(), test_path(), touch_seat_handle_cancel(), touch_seat_handle_down(), touch_seat_handle_frame(), touch_seat_handle_motion(), touch_seat_handle_orientation(), touch_seat_handle_shape(), touch_seat_handle_up(), blender::render::hydra::GPURenderTaskDelegate::unbind(), undosys_stack_push_main(), undosys_step_decode(), undosys_step_encode(), undosys_step_free_and_unlink(), blender::ed::asset::index::update_index(), GHOST_NDOFManager::updateButton(), where_am_i(), wm_event_add_ghostevent(), wm_event_do_handlers(), wm_event_state_update_and_click_set_ex(), wm_handlers_do(), wm_handlers_do_keymap_with_keymap_handler(), wm_homefile_read_ex(), wm_lib_relocate_exec_do(), WM_msg_publish_rna_params(), WM_msg_publish_static_params(), WM_msg_publish_with_key(), WM_msg_subscribe_rna_params(), wm_operator_invoke(), WM_operator_last_properties_store(), WM_operatortype_find(), wp_fractional_scale_handle_preferred_scale(), write_libraries(), blender::gpu::VKPipelinePool::write_to_disk(), xdg_output_handle_description(), xdg_output_handle_done(), xdg_output_handle_logical_position(), xdg_output_handle_logical_size(), xdg_output_handle_name(), xdg_surface_handle_configure(), xdg_toplevel_decoration_handle_configure(), xdg_toplevel_handle_close(), xdg_toplevel_handle_configure(), xdg_toplevel_handle_configure_bounds(), and xdg_toplevel_handle_wm_capabilities().

◆ CLOG_STR_AT_SEVERITY

#define CLOG_STR_AT_SEVERITY ( clg_ref,
severity,
verbose_level,
str )
Value:
{ \
const CLG_LogType *_lg_ty = CLOG_ENSURE(clg_ref); \
if (((_lg_ty->flag & CLG_FLAG_USE) && (_lg_ty->level >= verbose_level)) || \
(severity >= CLG_SEVERITY_WARN)) \
{ \
CLG_log_str(_lg_ty, severity, __FILE__ ":" STRINGIFY(__LINE__), __func__, str); \
} \
} \
((void)0)
#define str(s)

Definition at line 168 of file CLG_log.h.

◆ CLOG_STR_ERROR

#define CLOG_STR_ERROR ( clg_ref,
str )   CLOG_STR_AT_SEVERITY(clg_ref, CLG_SEVERITY_ERROR, 0, str)

◆ CLOG_STR_FATAL

#define CLOG_STR_FATAL ( clg_ref,
str )   CLOG_STR_AT_SEVERITY(clg_ref, CLG_SEVERITY_FATAL, 0, str)

Definition at line 189 of file CLG_log.h.

◆ CLOG_STR_INFO

#define CLOG_STR_INFO ( clg_ref,
level,
str )    CLOG_STR_AT_SEVERITY(clg_ref, CLG_SEVERITY_INFO, level, str)

Definition at line 185 of file CLG_log.h.

Referenced by wm_operator_reports().

◆ CLOG_STR_WARN

#define CLOG_STR_WARN ( clg_ref,
str )   CLOG_STR_AT_SEVERITY(clg_ref, CLG_SEVERITY_WARN, 0, str)

Definition at line 187 of file CLG_log.h.

Referenced by blender::gpu::debug::init_gl_callbacks().

◆ CLOG_WARN

#define CLOG_WARN ( clg_ref,
... )   CLOG_AT_SEVERITY(clg_ref, CLG_SEVERITY_WARN, 0, __VA_ARGS__)

Definition at line 181 of file CLG_log.h.

Referenced by blender::render::hydra::RenderTaskDelegate::add_aov(), blender::io::usd::USDMeshWriter::add_shape_key_weights_sample(), after_liblink_id_embedded_id_process(), utils::assign_materials(), BKE_addon_pref_type_find(), BKE_anim_path_calc_data(), BKE_animdata_transfer_by_basepath(), BKE_animsys_eval_driver(), BKE_animsys_fix_rna_path_rename(), BKE_animsys_rna_path_resolve(), BKE_collection_blend_read_data(), BKE_constraint_typeinfo_from_type(), BKE_fcm_envelope_find_index(), BKE_fcurve_bezt_binarysearch_index_ex(), BKE_lib_override_library_main_hierarchy_root_ensure(), BKE_lib_override_library_main_proxy_convert(), BKE_lib_override_library_main_resync(), BKE_mesh_nomain_to_mesh(), BKE_mesh_remap_calc_edges_from_mesh(), BKE_mesh_remap_calc_faces_from_mesh(), BKE_mesh_remap_calc_verts_from_mesh(), BKE_modifier_set_error(), BKE_packedfile_blend_read(), BKE_where_on_path(), blend_file_thumb_from_camera(), blend_read_layer_data(), bm_to_mesh_shape(), bpy_class_call(), BPY_rna_types_finalize_external_types(), BPyInit_bgl(), build_pict_list_from_anim(), build_pict_list_from_image_sequence(), blender::nodes::materialx::NodeItem::convert(), blender::io::usd::copy_tiled_textures(), blender::io::alembic::ABCInstanceWriter::create_alembic_objects(), blender::io::usd::create_blend_shapes(), blender::io::usd::USDStageReader::create_proto_collections(), blender::io::usd::create_skel_roots(), blender::io::usd::create_vector_attrib(), CTX_data_pointer_get_type(), ctx_wm_python_context_get(), CustomData_copy_data_layer(), CustomData_layer_ensure_data_exists(), CustomData_verify_versions(), data_source_handle_send(), do_versions_ipos_to_animato(), blender::io::alembic::ABCCurveWriter::do_write(), blender::io::usd::USDArmatureWriter::do_write(), blender::io::usd::dome_light_to_world_material(), dvar_eval_locDiff(), dvar_eval_rotDiff(), dynamicPaint_paintParticles(), ED_undo_object_set_active_or_warn(), ED_undo_operator_repeat(), blender::ed::object::editmode_enter_ex(), blender::ed::object::editmode_load_free_ex(), blender::io::usd::ensure_blend_shape_skeleton(), file_handler_import_operator_create_ptr(), get_rna_access(), blender::io::usd::get_shape_key_basis_mesh(), GHOST_SystemWayland::getModifierKeys(), gizmo_window_project_2d(), gizmo_window_project_3d(), gwl_registry_wl_output_remove(), blender::bke::blendfile::PartialWriteContext::id_add(), blender::ed::outliner::id_override_library_delete_hierarchy(), blender::ed::outliner::id_override_library_reset(), blender::ed::outliner::id_override_library_resync(), blender::io::usd::import_blendshapes(), blender::io::usd::import_mesh_skel_bindings(), blender::io::usd::import_skeleton(), blender::io::hydra::VolumeModifierData::init(), blender::io::usd::USDMeshWriter::init_blend_shapes(), blender::io::usd::USDMeshWriter::init_skinned_mesh(), is_minversion_older_than_blender(), blender::gpu::VKBackend::is_supported(), keyboard_depressed_state_key_event(), lib_link_scenes_check_set(), lib_override_library_main_resync_on_library_indirect_level(), lib_override_library_resync(), lib_override_root_hierarchy_set(), lib_override_sort_libraries_func(), link_named_part(), blender::asset_system::AssetCatalogService::load_from_disk(), blender::io::usd::USDMaterialReader::load_tex_image(), main_merge_add_id_to_move(), main_namemap_validate_and_fix(), blender::io::usd::USDAbstractWriter::mark_as_instance(), blender::bke::pbvh::merge_face_edge_data(), blender::bke::pbvh::merge_flap_edge_data(), missing_files_find__recursive(), nlaevalchan_validate_index_ex(), nlaevalchan_verify(), blender::bke::node_tree_blend_read_data(), ob_parbone(), primary_selection_source_send(), blender::io::usd::process_usdz_textures(), pyrna_enum_to_py(), pyrna_py_from_array_index(), pyrna_struct_CreatePyObject_from_type(), read_buffer_from_data_offer(), read_buffer_from_primary_selection_offer(), blender::io::usd::read_face_display_color(), blender::io::usd::read_generic_mesh_primvar(), read_libblock(), blender::io::usd::remap_blend_shape_anim(), blender::render::hydra::FinalEngine::render(), RNA_def_float_percentage(), RNA_struct_find_collection_property_check(), RNA_struct_find_property_check(), sb_spring_force(), blender::nodes::materialx::NodeItem::set_input(), blender::io::usd::set_instance_collection(), blender::io::usd::USDMaterialReader::set_node_input(), set_vec_attrib(), blender::io::usd::USDTransformWriter::set_xform_ops(), blender::io::usd::shape_key_export_chaser(), blender::io::usd::skinned_mesh_export_chaser(), blender::ed::sculpt_paint::smooth_brush_toggle_on(), blender::ed::sculpt_paint::vwpaint::smooth_brush_toggle_on(), tempdir_session_create(), toolsystem_ref_link(), blender::io::alembic::ABCAbstractWriter::update_bounding_box(), vfont_get_data(), wm_event_add_ghostevent(), WM_event_add_keymap_handler(), WM_event_add_keymap_handler_dynamic(), wm_event_type_from_ghost_key(), WM_keymap_poll(), wm_link_append_item_poll(), wm_macro_exec(), wm_main_playanim_intern(), and blender::io::usd::world_material_to_dome_light().

◆ STRINGIFY

#define STRINGIFY ( x)    STRINGIFY_APPEND("", x)

Definition at line 78 of file CLG_log.h.

◆ STRINGIFY_APPEND

#define STRINGIFY_APPEND ( a,
b )   "" a #b

Definition at line 77 of file CLG_log.h.

◆ STRINGIFY_ARG

#define STRINGIFY_ARG ( x)    "" #x

Definition at line 76 of file CLG_log.h.

Typedef Documentation

◆ CLG_LogRef

typedef struct CLG_LogRef CLG_LogRef

◆ CLG_LogType

typedef struct CLG_LogType CLG_LogType

Enumeration Type Documentation

◆ CLG_LogFlag

Enumerator
CLG_FLAG_USE 

Definition at line 83 of file CLG_log.h.

◆ CLG_Severity

Enumerator
CLG_SEVERITY_INFO 
CLG_SEVERITY_WARN 
CLG_SEVERITY_ERROR 
CLG_SEVERITY_FATAL 

Definition at line 87 of file CLG_log.h.

Function Documentation

◆ _CLOG_ATTR_PRINTF_FORMAT()

void void _CLOG_ATTR_PRINTF_FORMAT ( 5 ,
6  )

◆ CLG_backtrace_fn_set()

void CLG_backtrace_fn_set ( void(* fatal_fn )(void *file_handle))

Definition at line 736 of file clog.c.

References CLG_ctx_backtrace_fn_set(), CLogContext::fatal_fn, and g_ctx.

Referenced by arg_handle_log_show_backtrace_set().

◆ CLG_color_support_get()

int CLG_color_support_get ( CLG_LogRef * clg_ref)

◆ CLG_error_fn_set()

void CLG_error_fn_set ( void(* error_fn )(void *file_handle))

Definition at line 726 of file clog.c.

References CLT_ctx_error_fn_set(), CLogContext::error_fn, and g_ctx.

Referenced by arg_handle_debug_exit_on_error().

◆ CLG_exit()

void CLG_exit ( void )

◆ CLG_fatal_fn_set()

void CLG_fatal_fn_set ( void(* fatal_fn )(void *file_handle))

Definition at line 731 of file clog.c.

References CLG_ctx_fatal_fn_set(), CLogContext::fatal_fn, and g_ctx.

Referenced by main().

◆ CLG_init()

◆ CLG_level_set()

void CLG_level_set ( int level)

Definition at line 751 of file clog.c.

References CLG_ctx_level_set(), and g_ctx.

Referenced by arg_handle_log_level_set(), and main().

◆ CLG_log_str()

void CLG_log_str ( const CLG_LogType * lg,
enum CLG_Severity severity,
const char * file_line,
const char * fn,
const char * message )

◆ CLG_logf()

void void CLG_logf ( const CLG_LogType * lg,
enum CLG_Severity severity,
const char * file_line,
const char * fn,
const char * format,
... )

◆ CLG_logref_init()

◆ CLG_output_set()

void CLG_output_set ( void * file_handle)

Definition at line 711 of file clog.c.

References CLG_ctx_output_set(), and g_ctx.

Referenced by arg_handle_log_file_set().

◆ CLG_output_use_basename_set()

void CLG_output_use_basename_set ( int value)

Definition at line 716 of file clog.c.

References CLG_ctx_output_use_basename_set(), and g_ctx.

Referenced by arg_handle_log_show_basename_set(), and main().

◆ CLG_output_use_timestamp_set()

void CLG_output_use_timestamp_set ( int value)

Definition at line 721 of file clog.c.

References CLG_ctx_output_use_timestamp_set(), and g_ctx.

Referenced by arg_handle_log_show_timestamp_set().

◆ CLG_type_filter_exclude()

void CLG_type_filter_exclude ( const char * type_match,
int type_match_len )

Definition at line 741 of file clog.c.

References CLG_ctx_type_filter_exclude(), and g_ctx.

Referenced by arg_handle_log_set().

◆ CLG_type_filter_include()

void CLG_type_filter_include ( const char * type_match,
int type_match_len )

Definition at line 746 of file clog.c.

References CLG_ctx_type_filter_include(), and g_ctx.

Referenced by arg_handle_debug_gpu_set(), and arg_handle_log_set().