Ansel 0.0
A darktable fork - bloat + design vision
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
metadata.c File Reference
#include "common/metadata.h"
#include "common/debug.h"
#include "common/collection.h"
#include "common/undo.h"
#include "common/grouping.h"
#include "control/conf.h"
#include "views/view.h"
#include "control/signal.h"
#include <stdlib.h>
+ Include dependency graph for common/metadata.c:

Data Structures

struct  dt_undo_metadata_t
 

Typedefs

typedef struct dt_undo_metadata_t dt_undo_metadata_t
 
typedef enum dt_tag_actions_t dt_tag_actions_t
 

Enumerations

enum  dt_tag_actions_t {
  DT_MA_SET = 0 ,
  DT_MA_ADD ,
  DT_MA_REMOVE
}
 

Functions

unsigned int dt_metadata_get_nb_user_metadata ()
 
const char * dt_metadata_get_name_by_display_order (const uint32_t order)
 
dt_metadata_t dt_metadata_get_keyid_by_display_order (const uint32_t order)
 
dt_metadata_t dt_metadata_get_keyid_by_name (const char *name)
 
int dt_metadata_get_type_by_display_order (const uint32_t order)
 
const char * dt_metadata_get_name (const uint32_t keyid)
 
dt_metadata_t dt_metadata_get_keyid (const char *key)
 
const char * dt_metadata_get_key (const uint32_t keyid)
 
const char * dt_metadata_get_subkey (const uint32_t keyid)
 
const char * dt_metadata_get_key_by_subkey (const char *subkey)
 
int dt_metadata_get_type (const uint32_t keyid)
 
void dt_metadata_init ()
 
static GList * _list_find_custom (GList *list, gpointer data)
 
static gchar * _get_tb_removed_metadata_string_values (GList *before, GList *after)
 
static gchar * _get_tb_added_metadata_string_values (const int img, GList *before, GList *after)
 
static void _bulk_remove_metadata (const int img, const gchar *metadata_list)
 
static void _bulk_add_metadata (gchar *metadata_list)
 
static void _pop_undo_execute (const int32_t imgid, GList *before, GList *after)
 
static void _pop_undo (gpointer user_data, const dt_undo_type_t type, dt_undo_data_t data, const dt_undo_action_t action, GList **imgs)
 
GList * dt_metadata_get_list_id (const int id)
 
static void _undo_metadata_free (gpointer data)
 
static void _metadata_undo_data_free (gpointer data)
 
gchar * _cleanup_metadata_value (const gchar *value)
 
GList * dt_metadata_get (const int id, const char *key, uint32_t *count)
 
static void _metadata_add_metadata_to_list (GList **list, const GList *metadata)
 
static void _metadata_remove_metadata_from_list (GList **list, const GList *metadata)
 
static void _metadata_execute (const GList *imgs, const GList *metadata, GList **undo, const gboolean undo_on, const gint action)
 
void dt_metadata_set (const int32_t imgid, const char *key, const char *value, const gboolean undo_on)
 
void dt_metadata_set_import (const int32_t imgid, const char *key, const char *value)
 
void dt_metadata_set_list (const GList *imgs, GList *key_value, const gboolean undo_on)
 
void dt_metadata_clear (const GList *imgs, const gboolean undo_on)
 
void dt_metadata_set_list_id (const GList *img, const GList *metadata, const gboolean clear_on, const gboolean undo_on)
 
int dt_metadata_already_imported (const char *filename, const char *datetime)
 

Variables

struct { 
 
   char *   key 
 
   char *   name 
 
   int   type 
 
   uint32_t   display_order 
 
dt_metadata_def [] 
 

Typedef Documentation

◆ dt_tag_actions_t

◆ dt_undo_metadata_t

Enumeration Type Documentation

◆ dt_tag_actions_t

Enumerator
DT_MA_SET 
DT_MA_ADD 
DT_MA_REMOVE 

Function Documentation

◆ _bulk_add_metadata()

static void _bulk_add_metadata ( gchar *  metadata_list)
static

◆ _bulk_remove_metadata()

static void _bulk_remove_metadata ( const int  img,
const gchar *  metadata_list 
)
static

◆ _cleanup_metadata_value()

gchar * _cleanup_metadata_value ( const gchar *  value)

◆ _get_tb_added_metadata_string_values()

static gchar * _get_tb_added_metadata_string_values ( const int  img,
GList *  before,
GList *  after 
)
static

◆ _get_tb_removed_metadata_string_values()

static gchar * _get_tb_removed_metadata_string_values ( GList *  before,
GList *  after 
)
static

◆ _list_find_custom()

static GList * _list_find_custom ( GList *  list,
gpointer  data 
)
static

◆ _metadata_add_metadata_to_list()

static void _metadata_add_metadata_to_list ( GList **  list,
const GList *  metadata 
)
static

References _list_find_custom(), FALSE, and m.

Referenced by _metadata_execute().

◆ _metadata_execute()

◆ _metadata_remove_metadata_from_list()

static void _metadata_remove_metadata_from_list ( GList **  list,
const GList *  metadata 
)
static

References _list_find_custom(), and m.

Referenced by _metadata_execute().

◆ _metadata_undo_data_free()

static void _metadata_undo_data_free ( gpointer  data)
static

◆ _pop_undo()

◆ _pop_undo_execute()

static void _pop_undo_execute ( const int32_t  imgid,
GList *  before,
GList *  after 
)
static

◆ _undo_metadata_free()

static void _undo_metadata_free ( gpointer  data)
static

◆ dt_metadata_already_imported()

int dt_metadata_already_imported ( const char *  filename,
const char *  datetime 
)

Return the first imgid of the filename-datetime "Xmp.darktable.image_id" if it already exists

References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_TEXT, DT_DEBUG_SQLITE3_PREPARE_V2, FALSE, and UNKNOWN_IMAGE.

Referenced by _is_in_library_by_metadata().

◆ dt_metadata_clear()

◆ dt_metadata_get()

GList * dt_metadata_get ( int  id,
const char *  key,
uint32_t *  count 
)

Get metadata (named keys) for a specific image, or all selected for id == -1. For keys which return a string, the caller has to make sure that it is freed after usage.

References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_metadata_get_keyid(), and key.

Referenced by _get_base_value(), _metadata_view_update_values(), _print_button_clicked(), _write_xmp_id(), dt_exif_read_blob(), metadata_member(), and store().

◆ dt_metadata_get_key()

const char * dt_metadata_get_key ( const uint32_t  keyid)

◆ dt_metadata_get_key_by_subkey()

const char * dt_metadata_get_key_by_subkey ( const char *  subkey)

return the key of the metadata subkey

References dt_metadata_def, DT_METADATA_NUMBER, and key.

Referenced by metadata_member().

◆ dt_metadata_get_keyid()

dt_metadata_t dt_metadata_get_keyid ( const char *  key)

return the keyid of the metadata key

References dt_metadata_def, DT_METADATA_NUMBER, and key.

Referenced by dt_metadata_get(), dt_metadata_set(), dt_metadata_set_import(), and dt_metadata_set_list().

◆ dt_metadata_get_keyid_by_display_order()

dt_metadata_t dt_metadata_get_keyid_by_display_order ( const uint32_t  order)

◆ dt_metadata_get_keyid_by_name()

dt_metadata_t dt_metadata_get_keyid_by_name ( const char *  name)

return the metadata keyid by name

References dt_metadata_def, DT_METADATA_NUMBER, and name.

◆ dt_metadata_get_list_id()

GList * dt_metadata_get_list_id ( int  id)

Get metadata (id keys) for a specific image. The caller has to free the list after usage.

References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, and DT_DEBUG_SQLITE3_PREPARE_V2.

Referenced by _metadata_execute().

◆ dt_metadata_get_name()

const char * dt_metadata_get_name ( const uint32_t  keyid)

◆ dt_metadata_get_name_by_display_order()

const char * dt_metadata_get_name_by_display_order ( const uint32_t  order)

return the metadata key by display order

References display_order, dt_metadata_def, and DT_METADATA_NUMBER.

Referenced by _menuitem_preferences(), _update_layout(), dt_collection_name(), gui_init(), and gui_reset().

◆ dt_metadata_get_nb_user_metadata()

unsigned int dt_metadata_get_nb_user_metadata ( )

return the number of user metadata (!= DT_METADATA_TYPE_INTERNAL)

References dt_metadata_def, DT_METADATA_NUMBER, DT_METADATA_TYPE_INTERNAL, and type.

Referenced by add_rights_preset().

◆ dt_metadata_get_subkey()

const char * dt_metadata_get_subkey ( const uint32_t  keyid)

return the metadata subeky of the metadata keyid

References dt_metadata_def, DT_METADATA_NUMBER, and key.

Referenced by dt_lua_init_image().

◆ dt_metadata_get_type()

◆ dt_metadata_get_type_by_display_order()

int dt_metadata_get_type_by_display_order ( const uint32_t  order)

◆ dt_metadata_init()

◆ dt_metadata_set()

◆ dt_metadata_set_import()

void dt_metadata_set_import ( const int32_t  imgid,
const char *  key,
const char *  value 
)

◆ dt_metadata_set_list()

void dt_metadata_set_list ( const GList *  imgs,
GList *  key_value,
const gboolean  undo_on 
)

Set metadata (named keys) for a specific image, or all selected for id == -1. list is a set of key, value

References _cleanup_metadata_value(), _metadata_execute(), _metadata_undo_data_free(), _pop_undo(), darktable, DT_MA_ADD, dt_metadata_get_keyid(), dt_undo_end_group(), DT_UNDO_METADATA, dt_undo_record(), dt_undo_start_group(), key, and darktable_t::undo.

Referenced by _write_metadata(), and set_params().

◆ dt_metadata_set_list_id()

void dt_metadata_set_list_id ( const GList *  img,
const GList *  metadata,
const gboolean  clear_on,
const gboolean  undo_on 
)

Set metadata (id keys) for a list of images. list is a set of keyid, value if clear_on TRUE the image metadata are cleared before attaching the new ones

References _metadata_execute(), _metadata_undo_data_free(), _pop_undo(), darktable, DT_MA_ADD, DT_MA_SET, dt_undo_end_group(), DT_UNDO_METADATA, dt_undo_record(), dt_undo_start_group(), and darktable_t::undo.

Variable Documentation

◆ display_order

◆ [struct]

const struct { ... } dt_metadata_def[]
Initial value:
= {
{"Xmp.dc.creator", N_("creator"), DT_METADATA_TYPE_USER, 2},
{"Xmp.dc.publisher", N_("publisher"), DT_METADATA_TYPE_USER, 3},
{"Xmp.dc.title", N_("title"), DT_METADATA_TYPE_USER, 0},
{"Xmp.dc.description", N_("description"), DT_METADATA_TYPE_USER, 1},
{"Xmp.dc.rights", N_("rights"), DT_METADATA_TYPE_USER, 4},
{"Xmp.acdsee.notes", N_("notes"), DT_METADATA_TYPE_USER, 5},
{"Xmp.darktable.version_name", N_("version name"), DT_METADATA_TYPE_OPTIONAL, 6},
{"Xmp.darktable.image_id", N_("image id"), DT_METADATA_TYPE_INTERNAL, 7}
}
@ DT_METADATA_TYPE_OPTIONAL
Definition metadata.h:48
@ DT_METADATA_TYPE_INTERNAL
Definition metadata.h:49
@ DT_METADATA_TYPE_USER
Definition metadata.h:47

Referenced by dt_metadata_get_key(), dt_metadata_get_key_by_subkey(), dt_metadata_get_keyid(), dt_metadata_get_keyid_by_display_order(), dt_metadata_get_keyid_by_name(), dt_metadata_get_name(), dt_metadata_get_name_by_display_order(), dt_metadata_get_nb_user_metadata(), dt_metadata_get_subkey(), dt_metadata_get_type(), and dt_metadata_get_type_by_display_order().

◆ key

char* key

Referenced by _append_kv(), _callback_bool(), _completion_match_func(), _conf_add(), _conf_get_guide(), _connect_accel(), _draw_boxes(), _exif_decode_iptc_data(), _exif_decode_xmp_data(), _exif_read_exif_tag(), _find_path_for_keys(), _for_each_accel(), _for_each_accel_create_treeview_row(), _for_each_path_create_treeview_row(), _grid_horizontal_changed(), _grid_subdiv_changed(), _grid_vertical_changed(), _guides_add_guide(), _guides_gui_grid(), _is_scroll_captured_by_widget(), _metadata_view_update_values(), _non_thread_safe_cache_get_hash_data(), _panel_handle_motion_callback(), _panel_is_visible(), _piwigo_load_account(), _raster_combo_populate(), _read_float(), _remove_xmp_keys(), _search_func(), _settings_flip_changed(), _settings_flip_update(), _settings_guides_changed(), _skip_key_value_pair(), _ui_init_panel_size(), _update(), _update_shortcut_state(), add_patches_to_array(), alloc_dummy(), append_pair_to_json(), autotype_next(), PermutohedralLattice< D, VD >::blur(), collect_source_patches_foreach(), combobox_numindex(), draw_color_boxes_inside(), dt_accels_new_widget_shortcut(), dt_cache_contains(), dt_cache_for_all(), dt_cache_get_with_caller(), dt_cache_remove(), dt_cache_testget(), dt_collection_get_makermodels(), dt_conf_init(), dt_conf_key_exists(), dt_conf_print(), dt_conf_save(), dt_exif_read_iptc_tag(), dt_exif_read_xmp_tag(), dt_exif_write_blob(), dt_exif_xmp_attach_export(), dt_gui_preferences_bool(), dt_gui_preferences_bool_reset(), dt_gui_preferences_bool_update(), dt_gui_preferences_enum(), dt_gui_preferences_enum_reset(), dt_gui_preferences_enum_update(), dt_gui_preferences_int(), dt_gui_preferences_int_reset(), dt_gui_preferences_int_update(), dt_gui_preferences_string(), dt_gui_preferences_string_reset(), dt_gui_preferences_string_update(), dt_guides_button_toggled(), dt_guides_draw(), dt_guides_draw_grid(), dt_guides_update_button_state(), dt_guides_update_popover_values(), dt_iop_is_raster_mask_used(), dt_iop_set_mask_mode(), dt_iop_update_multi_priority(), dt_lib_is_visible(), dt_lib_set_visible(), dt_masks_get_set_conf_value(), dt_metadata_get(), dt_metadata_get_key_by_subkey(), dt_metadata_get_keyid(), dt_metadata_get_subkey(), dt_metadata_set(), dt_metadata_set_import(), dt_metadata_set_list(), dt_mipmap_cache_get_with_caller(), dt_mipmap_cache_remove_at_size(), dt_pwstorage_kwallet_get(), dt_pwstorage_kwallet_set(), dt_remove_exif_key(), dt_remove_iptc_key(), dt_remove_known_keys(), dt_remove_xmp_key(), dt_set_xmp_dt_history(), dt_ui_panel_get_size(), dt_ui_panel_show(), dt_ui_restore_panels(), dt_ui_toggle_panels_visibility(), encrypt_tea(), exif_get_ascii_datafield(), export_raw(), find_patch(), get_imgid(), get_keys(), get_size(), HashTablePermutohedral< KD, VD >::lookupOffset(), metadata_member(), parse_cht(), parse_csv(), parse_it8(), PNGwriteRawProfile(), print_patches(), read_history_v2(), read_masks_v3(), secret_to_attributes(), PermutohedralLattice< D, VD >::splat(), write_image(), and write_image().

◆ name

const char * name

Referenced by _apply_preferences(), _create_profile(), _darkroom_ui_apply_style_activate_callback(), _dnd_clear_root(), _dt_style_update_iop_order(), _edit_preset(), _edit_preset_response(), _event_dnd_received(), _find_metadata_iter_per_text(), _format_changed(), _get_active_preset_name(), _get_node_for_name(), _gui_presets_popup_menu_show_internal(), _gui_styles_dialog_run(), _gui_styles_edit_style_response(), _gui_styles_new_style_response(), _guides_add_guide(), _guides_get_value(), _has_list(), _init_presets(), _lib_geotagging_get_timezones(), _lib_snapshots_add_button_clicked_callback(), _lrop(), _menuitem_delete_preset(), _menuitem_pick_preset(), _menuitem_preferences(), _menuitem_update_preset(), _migrate_schema(), _name_editing_done(), _name_start_editing(), _new_button_clicked(), _new_tree_text_column(), _piwigo_album_id(), _piwigo_query_add_arguments(), _populate_collect_combo(), _rename_module_key_press(), _sanitize_confgen(), _set_location_collection(), _set_up_label(), _storage_changed(), _styles_row_activated_callback(), _timezone_save(), _tree_name_show(), _tree_tagname_show(), _update_display_profile(), _update_layout(), _upgrade_library_schema_step(), _valid_glob_match(), add_rights_preset(), destroy_pref(), dt_collection_name(), dt_color_checker_get_patch_by_name(), dt_colorspaces_create_alternate_profile(), dt_colorspaces_create_darktable_profile(), dt_colorspaces_create_vendor_profile(), dt_colorspaces_get_profile_name(), dt_colorspaces_set_display_profile(), dt_conf_get_and_sanitize_float(), dt_conf_get_and_sanitize_int(), dt_conf_get_and_sanitize_int64(), dt_conf_get_bool(), dt_conf_get_float(), dt_conf_get_float_fast(), dt_conf_get_folder_to_file_chooser(), dt_conf_get_int(), dt_conf_get_int64(), dt_conf_get_int64_fast(), dt_conf_get_int_fast(), dt_conf_get_string(), dt_conf_get_string_const(), dt_conf_get_var(), dt_conf_init(), dt_conf_is_default(), dt_conf_is_equal(), dt_conf_key_not_empty(), dt_conf_set_bool(), dt_conf_set_float(), dt_conf_set_folder_from_file_chooser(), dt_conf_set_if_not_overridden(), dt_conf_set_int(), dt_conf_set_int64(), dt_conf_set_string(), dt_confgen_exists(), dt_confgen_get(), dt_confgen_get_bool(), dt_confgen_get_float(), dt_confgen_get_int(), dt_confgen_get_int64(), dt_confgen_get_label(), dt_confgen_get_tooltip(), dt_confgen_type(), dt_confgen_value_exists(), dt_control_signal_connect(), dt_control_signal_init(), dt_control_signal_raise(), dt_control_work(), dt_control_work_res(), dt_dev_pixelpipe_cache_get(), dt_dev_pixelpipe_process_rec(), dt_get_help_url(), dt_get_medium(), dt_get_paper(), dt_gui_load_theme(), dt_gui_presets_add_generic(), dt_gui_presets_add_with_blendop(), dt_gui_presets_apply_preset(), dt_gui_presets_autoapply_for_module(), dt_gui_presets_confirm_and_delete(), dt_gui_presets_update_autoapply(), dt_gui_presets_update_av(), dt_gui_presets_update_filter(), dt_gui_presets_update_fl(), dt_gui_presets_update_iso(), dt_gui_presets_update_ldr(), dt_gui_presets_update_mml(), dt_gui_presets_update_tv(), dt_gui_store_last_preset(), dt_gui_styles_dialog_edit(), dt_guides_add_guide(), dt_history_get_items(), dt_history_get_items_as_string(), dt_history_item_as_string(), dt_imageio_get_format_by_name(), dt_imageio_get_storage_by_name(), dt_imageio_open_exr(), dt_imageio_png_read_profile(), dt_interpolation_new(), dt_introspection_get_child(), dt_introspection_get_enum_value(), dt_lib_get_module(), dt_lib_init_presets(), dt_lib_presets_add(), dt_lib_presets_popup_menu_show(), dt_lua_init_image(), dt_lua_init_styles(), dt_lua_type_register_const_type(), dt_lua_type_register_type(), dt_lua_widget_get_callback(), dt_lua_widget_set_callback(), dt_lua_widget_trigger_callback(), dt_map_location_delete(), dt_map_location_get_locations_by_path(), dt_map_location_name_exists(), dt_map_location_new(), dt_map_location_rename(), dt_masks_read_masks_history(), dt_metadata_clear(), dt_metadata_get_keyid_by_name(), dt_metadata_init(), dt_metadata_set_import(), dt_pdf_parse_length(), dt_pdf_parse_paper_size(), dt_pixel_cache_new_entry(), dt_presets_import_from_file(), dt_presets_save_to_file(), dt_preview_window_spawn(), dt_print_file(), dt_pthread_setname(), dt_set_xmp_dt_metadata(), dt_styles_apply_to_image(), dt_styles_apply_to_list(), dt_styles_create_from_image(), dt_styles_create_from_style(), dt_styles_create_style_header(), dt_styles_delete_by_name(), dt_styles_delete_by_name_adv(), dt_styles_exists(), dt_styles_get_by_name(), dt_styles_get_description(), dt_styles_get_id_by_name(), dt_styles_get_item_list(), dt_styles_get_item_list_as_string(), dt_styles_get_list(), dt_styles_has_module_order(), dt_styles_module_order_list(), dt_styles_update(), dt_tag_detach_by_string(), dt_tag_exists(), dt_tag_get_name(), dt_tag_get_tag_id_by_name(), dt_tag_new(), dt_tag_new_from_gui(), dt_view_extend_modes_str(), dtgtk_gradient_slider_multivalue_new_with_color_and_name(), dtgtk_gradient_slider_multivalue_new_with_name(), dtgtk_gradient_slider_new_with_color_and_name(), dtgtk_gradient_slider_new_with_name(), edit_clicked(), edit_preset(), edit_preset(), entry_activated(), export_button_clicked_callback(), export_preset(), export_raw(), export_raw_button_clicked_callback(), export_style(), get_active_preset_name(), get_export_filename(), get_language_names(), get_pref_name(), get_preset_element(), get_preset_element_float(), get_preset_element_int(), get_query_string(), gui_init(), gui_reset(), init_presets(), init_tab_general(), init_table(), is_member(), list_match_string(), list_view(), lookup_color(), main_csv(), menuitem_delete_preset(), menuitem_update_preset(), paper_exists(), parse_csv(), print_usage(), read_pref(), register_guide(), register_lib(), register_storage(), set_format_by_name(), set_params(), set_storage_by_name(), style_table_index(), tag_lib_create(), tag_lib_find(), tag_name(), tag_tostring(), test_name(), tree_count_show(), tree_insert_presets(), tree_key_press_presets(), tree_row_activated_presets(), tree_view(), update(), update_table(), and write_pref().

◆ type

int type

Referenced by _add_shape(), _add_tag_button_clicked(), _brush_events_button_pressed(), _build_embedded_profile(), _circle_sanitize_config(), _create_profile(), _draw_basic_line(), _ellipse_sanitize_config(), _get_bounded_inside(), _get_exiv2_type(), _get_near(), _get_profile(), _gradient_events_button_pressed(), _group_create(), _group_events_button_pressed(), _gui_init_datetime(), _is_valid_widget(), _mask_indicator_tooltip(), _menu_add_shape(), _menuitem_preferences(), _path_events_button_pressed(), _pop_undo(), _pop_undo(), _pop_undo(), _pop_undo(), _pop_undo(), _pop_undo(), _tag_get_tags(), _transform_from_to_rgb_lab_lcms2(), _undo_record(), _update_layout(), _update_lines_count(), _view_map_add_marker(), _view_map_remove_marker(), _warning_error_handler(), button_pressed(), button_pressed(), commit_params(), dt_collection_name(), dt_colorspaces_get_embedded_profile(), dt_colorspaces_get_name(), dt_colorspaces_get_profile(), dt_colorspaces_get_work_profile(), dt_colorspaces_set_display_profile(), dt_control_button_pressed(), dt_control_signal_raise(), dt_draw_curve_new(), dt_exif_xmp_attach_export(), dt_history_hash_write_from_history(), dt_history_snapshot_undo_pop(), dt_imageio_dng_make_tag(), dt_imageio_jpeg_write_with_icc_profile(), dt_interpolation_new(), dt_ioppr_generate_profile_info(), dt_ioppr_get_iop_work_profile_info(), dt_ioppr_set_pipe_input_profile_info(), dt_ioppr_set_pipe_output_profile_info(), dt_ioppr_set_pipe_work_profile_info(), dt_masks_create(), dt_masks_create_ext(), dt_masks_events_button_pressed(), dt_masks_read_masks_history(), dt_metadata_get_nb_user_metadata(), dt_metadata_init(), dt_thumbtable_dispatch_over(), dt_undo_record(), dt_undo_start_group(), dt_view_manager_button_pressed(), filmic_spline(), get_points(), gui_reset(), interpolate_set(), interpolate_val(), interpolate_val_V2(), interpolate_val_V2_periodic(), legacy_params(), line_detect(), metadata_changed(), model_fitness(), norm_tone_mapping_v4(), process(), rt_add_shape(), rt_select_algorithm_callback(), and update_colors().