Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
logging.h File Reference
#include <stdint.h>
+ Include dependency graph for logging.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define DT_DEBUG_SUPERVISOR   ((int32_t)(1u << 31))
 

Typedefs

typedef enum dt_debug_thread_t dt_debug_thread_t
 Debug channels, selected at runtime with -d <channel>.
 

Enumerations

enum  dt_debug_thread_t {
  DT_DEBUG_ALWAYS = 0 ,
  DT_DEBUG_CACHE = 1 << 0 ,
  DT_DEBUG_CONTROL = 1 << 1 ,
  DT_DEBUG_DEV = 1 << 2 ,
  DT_DEBUG_GTK = 1 << 3 ,
  DT_DEBUG_PERF = 1 << 4 ,
  DT_DEBUG_PIPECACHE = 1 << 5 ,
  DT_DEBUG_OPENCL = 1 << 7 ,
  DT_DEBUG_SQL = 1 << 8 ,
  DT_DEBUG_MEMORY = 1 << 9 ,
  DT_DEBUG_LIGHTTABLE = 1 << 10 ,
  DT_DEBUG_NAN = 1 << 11 ,
  DT_DEBUG_MASKS = 1 << 12 ,
  DT_DEBUG_LUA = 1 << 13 ,
  DT_DEBUG_INPUT = 1 << 14 ,
  DT_DEBUG_PRINT = 1 << 15 ,
  DT_DEBUG_CAMERA_SUPPORT = 1 << 16 ,
  DT_DEBUG_IOPORDER = 1 << 17 ,
  DT_DEBUG_IMAGEIO = 1 << 18 ,
  DT_DEBUG_UNDO = 1 << 19 ,
  DT_DEBUG_SIGNAL = 1 << 20 ,
  DT_DEBUG_PARAMS = 1 << 21 ,
  DT_DEBUG_DEMOSAIC = 1 << 22 ,
  DT_DEBUG_SHORTCUTS = 1 << 23 ,
  DT_DEBUG_TILING = 1 << 24 ,
  DT_DEBUG_HISTORY = 1 << 25 ,
  DT_DEBUG_PIPE = 1 << 26 ,
  DT_DEBUG_IMPORT = 1 << 27 ,
  DT_DEBUG_VERBOSE = 1 << 28 ,
  DT_DEBUG_COLORPROFILE = 1 << 29 ,
  DT_DEBUG_NOCACHE_REUSE = 1 << 30
}
 Debug channels, selected at runtime with -d <channel>. More...
 

Functions

int32_t dt_get_debug_flags (void)
 
void dt_print (dt_debug_thread_t thread, const char *msg,...) __attribute__((format(printf
 Print to stdout when thread is enabled, prefixed with seconds since startup.
 
void void dt_print_nts (dt_debug_thread_t thread, const char *msg,...) __attribute__((format(printf
 dt_print() without the timestamp prefix (nts = no time stamp).
 
void void void dt_vprint (dt_debug_thread_t thread, const char *msg,...) __attribute__((format(printf
 dt_print() that additionally requires DT_DEBUG_VERBOSE to be enabled, i.e. both -d <channel> and -d verbose.
 

Macro Definition Documentation

◆ DT_DEBUG_SUPERVISOR

#define DT_DEBUG_SUPERVISOR   ((int32_t)(1u << 31))

Definition at line 87 of file logging.h.

Typedef Documentation

◆ dt_debug_thread_t

Debug channels, selected at runtime with -d <channel>.

These are MASK BITS, combined into the runtime mask dt_get_debug_flags() returns, with two exceptions worth knowing before adding one:

  • DT_DEBUG_ALWAYS is 0, so it matches nothing under a bitwise AND. The dt_print() family special-cases it by equality. A new channel must never be 0.
  • bit 6 (1 << 6) is FREE – the list jumps from 1 << 5 to 1 << 7. The values are not contiguous and nothing may assume they are.

Bit 31 cannot be spelled as an enumerator (1 << 31 does not fit an int), so DT_DEBUG_SUPERVISOR is a macro below. The mask is an int32_t and is now FULL: a new channel needs bit 6, or a wider mask.

Enumeration Type Documentation

◆ dt_debug_thread_t

Debug channels, selected at runtime with -d <channel>.

These are MASK BITS, combined into the runtime mask dt_get_debug_flags() returns, with two exceptions worth knowing before adding one:

  • DT_DEBUG_ALWAYS is 0, so it matches nothing under a bitwise AND. The dt_print() family special-cases it by equality. A new channel must never be 0.
  • bit 6 (1 << 6) is FREE – the list jumps from 1 << 5 to 1 << 7. The values are not contiguous and nothing may assume they are.

Bit 31 cannot be spelled as an enumerator (1 << 31 does not fit an int), so DT_DEBUG_SUPERVISOR is a macro below. The mask is an int32_t and is now FULL: a new channel needs bit 6, or a wider mask.

Enumerator
DT_DEBUG_ALWAYS 
DT_DEBUG_CACHE 
DT_DEBUG_CONTROL 
DT_DEBUG_DEV 
DT_DEBUG_GTK 
DT_DEBUG_PERF 
DT_DEBUG_PIPECACHE 
DT_DEBUG_OPENCL 
DT_DEBUG_SQL 
DT_DEBUG_MEMORY 
DT_DEBUG_LIGHTTABLE 
DT_DEBUG_NAN 
DT_DEBUG_MASKS 
DT_DEBUG_LUA 
DT_DEBUG_INPUT 
DT_DEBUG_PRINT 
DT_DEBUG_CAMERA_SUPPORT 
DT_DEBUG_IOPORDER 
DT_DEBUG_IMAGEIO 
DT_DEBUG_UNDO 
DT_DEBUG_SIGNAL 
DT_DEBUG_PARAMS 
DT_DEBUG_DEMOSAIC 
DT_DEBUG_SHORTCUTS 
DT_DEBUG_TILING 
DT_DEBUG_HISTORY 
DT_DEBUG_PIPE 
DT_DEBUG_IMPORT 
DT_DEBUG_VERBOSE 
DT_DEBUG_COLORPROFILE 
DT_DEBUG_NOCACHE_REUSE 

Definition at line 47 of file logging.h.

Function Documentation

◆ dt_get_debug_flags()

int32_t dt_get_debug_flags ( void  )

Definition at line 2094 of file darktable.c.

References darktable, and darktable_t::unmuted.

Referenced by _blend_layer_over_input_cl(), _brush_get_mask(), _brush_get_mask_roi(), _brush_get_pts_border(), _build_clut(), _build_clut(), _circle_get_mask(), _circle_get_mask_roi(), _draw_samples(), _ellipse_get_mask(), _ellipse_get_mask_roi(), _emit_line(), _exif_decode_exif_data(), _fill_input_layer_coords(), _gradient_get_mask(), _gradient_get_mask_roi(), _group_events_post_expose_draw(), _group_get_mask(), _group_get_mask_roi(), _log_worker_batch_timing(), _masks_draw_creation_session_forms(), _polygon_get_mask(), _polygon_get_mask_roi(), _polygon_get_pts_border(), _print_export_debug(), _print_nan_debug(), _print_roi(), _refine_with_detail_mask(), _refine_with_detail_mask_cl(), _rekey_shared_base_patch(), _render_surface(), _trace_buffer_content(), _trace_cache_owner(), _update_curve_cache(), _update_gui_lut_cache(), _view_image_get_surface_internal(), _warning_handler(), dt_color_picker_helper(), dt_colorspaces_apply_profile(), dt_colorspaces_apply_profile_cl(), dt_control_change_cursor_by_name(), dt_control_change_cursor_EXT(), dt_control_queue_cursor_EXT(), dt_control_set_cursor_visible_EXT(), dt_dev_pixelpipe_debug_dump_module_io(), dt_dev_pixelpipe_get_roi_in(), dt_dev_pixelpipe_get_roi_out(), dt_dev_pixelpipe_process(), dt_dev_pixelpipe_process_rec(), dt_dev_pixelpipe_propagate_formats(), dt_drawlayer_paint_rasterize_segment_to_buffer(), dt_geometry_self_check(), dt_gui_gtk_init(), dt_init(), dt_iop_commit_params(), dt_ioppr_transform_image_colorspace_rgb(), dt_ioppr_transform_image_colorspace_rgb_cl(), dt_masks_center_of_gravity_from_points(), dt_masks_draw_source(), dt_masks_events_mouse_moved(), dt_masks_events_post_expose_with(), dt_masks_group_render_roi(), dt_masks_gui_form_create(), dt_masks_gui_form_test_create(), dt_masks_sample_grid_backtransform(), dt_opencl_cleanup_device(), dt_opencl_device_init(), dt_opencl_enqueue_kernel_2d_with_local(), dt_opencl_events_flush(), dt_opencl_memory_statistics(), dt_pixelpipe_get_global_hash(), dt_supervisor_active(), dual_demosaic(), expose(), pixelpipe_process_on_CPU(), process(), process(), and process_cl().

◆ dt_print()

void dt_print ( dt_debug_thread_t  thread,
const char *  msg,
  ... 
)

Print to stdout when thread is enabled, prefixed with seconds since startup.

Parameters
threadthe channel to gate on, or DT_DEBUG_ALWAYS to print unconditionally.
msgprintf format string; the call is format-checked at compile time.
Note
Flushes stdout on every call, so output survives a crash immediately after – the reason to use this rather than a bare fprintf(stderr) when tracing a crash.
Format strings are checked against the GNU conversions on every platform, Windows included: src/CMakeLists.txt builds with __USE_MINGW_ANSI_STDIO=1, which is what makes z and friends work under MinGW rather than falling back to the MS runtime's narrower set. Dropping that definition would silently change what these format strings mean on Windows only.

Referenced by _apply_runtime_event(), _auto_set_exposure(), _auto_set_illuminant(), _biharmonic_dome(), _blend_layer_over_input_cl(), _brush_get_mask(), _brush_get_mask_roi(), _brush_get_pts_border(), _build_clut(), _build_clut(), _cf_reconstruct(), _channelmixerrgb_mixer_mode_callback(), _channelmixerrgb_primaries_slider_callback(), _channelmixerrgb_simple_slider_callback(), _channelmixerrgb_white_preserving_slider_callback(), _check_usercrop(), _circle_get_mask(), _circle_get_mask_roi(), _color_picker_callback_button_press(), _colorspaces_build(), _control_import_job_run(), _conversion_valid(), _copy_file(), _crawl_image(), _default_process_tiling_cl_ptp(), _default_process_tiling_cl_roi(), _default_process_tiling_ptp(), _default_process_tiling_roi(), _dest_cb(), _develop_ui_pipe_finished_callback(), _dnd_recurse_folder(), _downsample_guided_laplacian_postfilter_cl(), _draw_samples(), _dt_CGATS_get_name(), _dt_CGATS_is_supported(), _dt_collection_changed_callback(), _dt_colorchecker_get_standard_type(), _dt_dev_pixelpipe_cache_wait_ready_callback(), _dt_dev_raster_mask_check(), _dt_dev_write_history_job_run(), _dt_masks_dynbuf_growto(), _dt_opencl_alloc_image2d(), _dt_opencl_get_conf_int(), _dt_pthread_rwlock_diag_log_rdlock(), _dt_pthread_rwlock_diag_log_wrlock(), _dt_thumbtable_empty_list(), _dump_one_pending(), _ellipse_get_mask(), _ellipse_get_mask_roi(), _evaluate(), _export_and_setup_pos(), _extract_patches(), _extract_pointer_input(), _fill_input_layer_coords(), _filmstrip_update_content_size(), _folder_survey_offer_pending_import(), _format_for(), _get_custom_model(), _get_image_buffer(), _get_model(), _get_user_mod_list(), _gpu_early_cpu_fallback_if_unsupported(), _gpu_init_input(), _gradient_get_mask(), _gradient_get_mask_roi(), _grid_configure(), _grid_update_content_size(), _group_get_mask(), _group_get_mask_roi(), _history_compress_apply(), _hm_backup_dest(), _hm_build_id_set_from_mod_list(), _hm_build_last_history_by_id(), _hm_build_last_history_by_id_from_history(), _hm_id_info_upsert(), _hm_renumber_history(), _hm_report_build_desired_visible_order(), _hm_report_build_ordered_modules(), _hm_restore_dest_from_backup(), _hm_topo_apply_solution(), _hm_topo_build_constraint_ids(), _hm_topo_flatten_constraints(), _hm_topo_resolve_incompatible_constraints(), _hm_topo_sort_constraints(), _hm_truncate_dest_redo_tail(), _hm_try_merge_iop_order_topologically(), _import_copy_file(), _import_copy_txt(), _import_copy_xmp(), _import_image(), _insert_default_modules(), _iop_color_picker_data_ready_callback(), _iop_piece_is_committable(), _is_valid_widget(), _lens_build_data(), _lens_report_db_failure(), _log_worker_batch_timing(), _ls_db(), _main_do_event_help(), _masks_draw_creation_session_forms(), _memory_pressure_shedder(), _noiseprofile_load(), _peek_gui(), _polygon_get_mask(), _polygon_get_mask_roi(), _polygon_get_pts_border(), _print_opencl_errors(), _print_trace(), _process_history_db_entry(), _refresh_active_picker(), _region_alloc(), _rekey_shared_base_patch(), _remove_history_leaks(), _render_surface(), _report_scan_error(), _resolve_work_profile(), _resync_pipe_with_history(), _sample_picker_from_cache(), _set_hinter_message(), _shape_manager_handler_callback(), _sidecar_is_up_to_date(), _sp_chol_factor_cl(), _sync_pipe_nodes_from_history(), _sync_pipe_nodes_from_history_from_node(), _synch_all_snapshot(), _synch_top_snapshot(), _system_memory_pressure_valve(), _thumb_draw_image(), _thumb_draw_image(), _trace_buffer_content(), _trace_cache_owner(), _undo_clear_list(), _undo_do_undo_redo(), _undo_record(), _update_backbuf_cache_reference(), _update_curve_cache(), _update_gui_lut_cache(), _update_output_cfa_descriptor(), _updates_worker(), _view_image_get_surface_internal(), _write_history_from_state(), _write_sidecar_file_from_image_locked(), box_max_cl(), box_min_cl(), button_pressed(), button_released(), calculate_clut_3dl(), calculate_clut_cube(), calculate_clut_haldclut(), cms_error_handler(), color_picker_apply(), color_smoothing_cl(), commit_params(), commit_params(), commit_profile_callback(), dehaze_cl(), dt_bilateral_init(), dt_bilateral_init_cl(), dt_build_filename_from_pattern(), dt_check_opendir(), dt_colorchecker_find(), dt_colorchecker_find_CGATS_reference_files(), dt_colorchecker_find_color(), dt_colorchecker_user_ref_create(), dt_colorspaces_cicp_to_type(), dt_colorspaces_set_display_profile(), dt_configure_ppd_dpi(), dt_control_add_job(), dt_control_add_job_res(), dt_control_change_cursor_by_name(), dt_control_change_cursor_EXT(), dt_control_flush_jobs_queue(), dt_control_job_execute(), dt_control_job_print(), dt_control_queue_cursor_EXT(), dt_control_run_job_res(), dt_control_set_cursor_visible_EXT(), dt_control_signal_connect(), dt_control_signal_disconnect(), dt_control_signal_disconnect_all(), dt_control_signal_raise(), dt_dev_add_history_item_ext(), dt_dev_configure_real(), dt_dev_darkroom_pipeline(), dt_dev_get_raster_mask(), dt_dev_get_thumbnail_size(), dt_dev_history_commit_item_now(), dt_dev_history_compute_hash(), dt_dev_history_item_from_source_history_item(), dt_dev_init_default_history(), dt_dev_module_remove(), dt_dev_pixelpipe_cache_wait_cleanup(), dt_dev_pixelpipe_cache_wait_dump_pending(), dt_dev_pixelpipe_change(), dt_dev_pixelpipe_debug_dump_module_io(), dt_dev_pixelpipe_get_roi_in(), dt_dev_pixelpipe_get_roi_out(), dt_dev_pixelpipe_gpu_flush_host_pinned_images(), dt_dev_pixelpipe_process(), dt_dev_pixelpipe_process_rec(), dt_dev_pixelpipe_propagate_formats(), dt_dev_pixelpipe_set_reentry(), dt_dev_pixelpipe_unset_reentry(), dt_dev_pop_history_items_ext(), dt_dev_read_history_ext(), dt_dev_snapshot_capture(), dt_dev_update_mouse_effect_radius(), dt_dev_write_history_item(), dt_develop_blend_process(), dt_develop_blend_process_cl(), dt_dlopencl_init(), dt_dng_opcode_process_opcode_list_2(), dt_drawlayer_build_worker_input_dab(), dt_drawlayer_commit_dabs(), dt_drawlayer_paint_rasterize_segment_to_buffer(), dt_exif_get_thumbnail(), dt_exif_log_handler(), dt_film_new(), dt_geometry_self_check(), dt_get_media_type(), dt_get_papers(), dt_gui_gtk_init(), dt_history_merge(), dt_history_merge_module_into_history(), dt_http_server_create(), dt_image_find_best_color_profile(), dt_image_print_debug_info(), dt_image_write_sidecar_file(), dt_image_write_sidecar_file_forced(), dt_imageio_avif_read_profile(), dt_imageio_export_with_flags(), dt_imageio_has_mono_preview(), dt_imageio_heif_read_profile(), dt_imageio_is_handled_by_libraw(), dt_imageio_open_avif(), dt_imageio_open_heif(), dt_imageio_open_rawspeed(), dt_imageio_open_tiff(), dt_imageio_open_webp(), dt_imageio_tiff_decode_blob(), dt_import_duplicate_get_dest_name(), dt_iop_cleanup_pipe(), dt_iop_color_picker_get_ready_data(), dt_iop_color_picker_request_update(), dt_iop_colorreconstruct_bilateral_freeze_cl(), dt_iop_colorreconstruct_bilateral_init_cl(), dt_iop_commit_blend_params(), dt_iop_commit_params(), dt_iop_init_pipe(), dt_iop_reload_defaults(), dt_ioppr_check_iop_order(), dt_ioppr_transform_lcms2(), dt_loc_init(), dt_masks_center_of_gravity_from_points(), dt_masks_debug_rasterise(), dt_masks_debug_write_outline_csv(), dt_masks_debug_write_png(), dt_masks_dynbuf_free(), dt_masks_dynbuf_init(), dt_masks_events_mouse_scrolled(), dt_masks_events_post_expose_with(), dt_masks_form_update_gravity_center(), dt_masks_group_render_roi(), dt_masks_gui_form_create(), dt_masks_gui_form_test_create(), dt_masks_point_in_form_exact(), dt_masks_sample_grid_backtransform(), dt_masks_write_masks_history_item(), dt_module_read_manifest(), dt_noiseprofile_verify(), dt_opencl_alloc_device_buffer_with_flags(), dt_opencl_build_program(), dt_opencl_check_tuning(), dt_opencl_copy_host_to_device_constant(), dt_opencl_copy_host_to_device_rowpitch(), dt_opencl_create_kernel(), dt_opencl_device_init(), dt_opencl_enqueue_copy_buffer_to_buffer(), dt_opencl_enqueue_copy_buffer_to_image(), dt_opencl_enqueue_copy_image(), dt_opencl_enqueue_copy_image_to_buffer(), dt_opencl_enqueue_kernel_2d_with_local(), dt_opencl_events_flush(), dt_opencl_events_get_slot(), dt_opencl_events_profiling(), dt_opencl_get_device_info(), dt_opencl_image_fits_device_reason(), dt_opencl_load_program(), dt_opencl_local_buffer_opt(), dt_opencl_map_buffer(), dt_opencl_map_image(), dt_opencl_md5sum(), dt_opencl_memory_statistics(), dt_opencl_read_device_config(), dt_opencl_reserve_device_for_pipe(), dt_opencl_unmap_mem_object(), dt_opencl_update_settings(), dt_pixelpipe_get_global_hash(), dt_points_init(), dt_print_file(), dt_printing_setup_display(), dt_rawspeed_lookup_makermodel(), dt_thumbtable_schedule_focus_real(), dt_thumbtable_scroll_to_selection(), dt_thumbtable_update(), dt_undo_disable_next(), dt_undo_end_group(), dt_undo_init(), dt_undo_start_group(), dt_updates_init(), enter(), expose(), fopen_stat(), green_equilibration_cl(), gui_changed(), gui_update(), guided_filter_cl(), illum_xy_callback(), import_clicked(), init(), leave(), load_themes_dir(), mouse_moved(), pixelpipe_process_on_GPU(), process(), process(), process(), process_cl(), process_cl(), process_cl(), process_cl(), process_default_cl(), process_harmonic_cl(), process_laplacian_bayer_cl(), process_laplacian_passthrough_cl(), process_laplacian_xtrans_cl(), process_markesteijn_cl(), process_nlmeans_cl(), process_rcd_cl(), process_vng_cl(), process_wavelets_cl(), profile_changed(), pseudo_solve(), scrolled(), solve_hermitian(), transition_map_cl(), workicc_changed(), and write_image().

◆ dt_print_nts()

void void dt_print_nts ( dt_debug_thread_t  thread,
const char *  msg,
  ... 
)

◆ dt_vprint()

void void void dt_vprint ( dt_debug_thread_t  thread,
const char *  msg,
  ... 
)