![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include "common/colorspaces.h"
#include "common/dtpthread.h"
#include "develop/format.h"
#include <glib.h>
#include <inttypes.h>
Go to the source code of this file.
Data Structures | |
struct | dt_image_raw_parameters_t |
struct | dt_image_geoloc_t |
struct | dt_image_t |
Typedefs | |
typedef enum dt_imageio_retval_t | dt_imageio_retval_t |
typedef enum dt_image_colorspace_t | dt_image_colorspace_t |
typedef struct dt_image_raw_parameters_t | dt_image_raw_parameters_t |
typedef enum dt_exif_image_orientation_t | dt_exif_image_orientation_t |
typedef enum dt_image_orientation_t | dt_image_orientation_t |
typedef enum dt_image_loader_t | dt_image_loader_t |
typedef struct dt_image_geoloc_t | dt_image_geoloc_t |
typedef struct dt_image_t | dt_image_t |
Functions | |
void | dt_image_init (dt_image_t *img) |
void | dt_image_refresh_makermodel (dt_image_t *img) |
int | dt_image_is_ldr (const dt_image_t *img) |
int | dt_image_is_raw (const dt_image_t *img) |
int | dt_image_is_hdr (const dt_image_t *img) |
void | dt_image_set_monochrome_flag (const int32_t imgid, gboolean monochrome) |
gboolean | dt_image_is_monochrome (const dt_image_t *img) |
gboolean | dt_image_is_matrix_correction_supported (const dt_image_t *img) |
gboolean | dt_image_is_rawprepare_supported (const dt_image_t *img) |
int | dt_image_monochrome_flags (const dt_image_t *img) |
gboolean | dt_image_use_monochrome_workflow (const dt_image_t *img) |
void | dt_image_full_path (const int32_t imgid, char *pathname, size_t pathname_len, gboolean *from_cache, const char *calling_func) |
Get the full path of an image out of the database. TODO: This gets called too many times and the output should be cached. TODO: Document where the pathname_len is being set. | |
void | dt_image_film_roll_directory (const dt_image_t *img, char *pathname, size_t pathname_len) |
const char * | dt_image_film_roll_name (const char *path) |
void | dt_image_film_roll (const dt_image_t *img, char *pathname, size_t pathname_len) |
void | dt_image_path_append_version_no_db (int version, char *pathname, size_t pathname_len) |
void | dt_image_path_append_version (const int32_t imgid, char *pathname, size_t pathname_len) |
void | dt_image_print_exif (const dt_image_t *img, char *line, size_t line_len) |
void | dt_image_set_xmp_rating (dt_image_t *img, const int rating) |
int | dt_image_get_xmp_rating (const dt_image_t *img) |
int | dt_image_get_xmp_rating_from_flags (const int flags) |
GList * | dt_image_find_xmps (const char *filename) |
int32_t | dt_image_get_id_full_path (const gchar *filename) |
int32_t | dt_image_get_id (int32_t film_id, const gchar *filename) |
int32_t | dt_image_import (int32_t film_id, const char *filename, gboolean raise_signals) |
int32_t | dt_image_import_lua (int32_t film_id, const char *filename) |
void | dt_image_remove (const int32_t imgid) |
int32_t | dt_image_duplicate_with_version (const int32_t imgid, const int32_t newversion) |
int32_t | dt_image_duplicate (const int32_t imgid) |
void | dt_image_flip (const int32_t imgid, const int32_t cw) |
void | dt_image_set_flip (const int32_t imgid, const dt_image_orientation_t user_flip) |
dt_image_orientation_t | dt_image_get_orientation (const int32_t imgid) |
void | dt_image_set_location (const int32_t imgid, const dt_image_geoloc_t *geoloc, const gboolean undo_on, const gboolean group_on) |
void | dt_image_set_locations (const GList *img, const dt_image_geoloc_t *geoloc, const gboolean undo_on) |
void | dt_image_set_images_locations (const GList *imgs, const GArray *gloc, const gboolean undo_on) |
void | dt_image_get_location (const int32_t imgid, dt_image_geoloc_t *geoloc) |
uint32_t | dt_image_altered (const int32_t imgid) |
static dt_image_orientation_t | dt_image_orientation (const dt_image_t *img) |
static dt_image_orientation_t | dt_image_orientation_to_flip_bits (const int orient) |
int32_t | dt_image_move (const int32_t imgid, const int32_t filmid) |
int32_t | dt_image_rename (const int32_t imgid, const int32_t filmid, const gchar *newname) |
int32_t | dt_image_copy (const int32_t imgid, const int32_t filmid) |
int32_t | dt_image_copy_rename (const int32_t imgid, const int32_t filmid, const gchar *newname) |
int | dt_image_local_copy_set (const int32_t imgid) |
int | dt_image_local_copy_reset (const int32_t imgid) |
gboolean | dt_image_safe_remove (const int32_t imgid) |
void | dt_image_local_copy_synch () |
int | dt_image_write_sidecar_file (const int32_t imgid) |
void | dt_image_synch_xmp (const int selected) |
void | dt_image_synch_xmps (const GList *img) |
void | dt_image_synch_all_xmp (const gchar *pathname) |
gboolean | dt_image_get_xmp_mode () |
void | dt_image_set_datetime (const GList *imgs, const char *datetime, const gboolean undo_on) |
void | dt_image_set_datetimes (const GList *imgs, const GArray *dtime, const gboolean undo_on) |
void | dt_image_get_datetime (const int32_t imgid, char *datetime) |
char * | dt_image_get_audio_path (const int32_t imgid) |
char * | dt_image_get_audio_path_from_path (const char *image_path) |
char * | dt_image_get_text_path (const int32_t imgid) |
char * | dt_image_get_text_path_from_path (const char *image_path) |
float | dt_image_get_exposure_bias (const struct dt_image_t *image_storage) |
char * | dt_image_camera_missing_sample_message (const struct dt_image_t *img, gboolean logmsg) |
void | dt_image_check_camera_missing_sample (const struct dt_image_t *img) |
void | dt_get_dirname_from_imgid (gchar *dir, const int32_t imgid) |
int | dt_image_read_duplicates (const uint32_t id, const char *filename, const gboolean clear_selection) |
Variables | ||
struct { | ||
const char * tooltip | ||
const char flag | ||
} | loaders_info [LOADER_COUNT] | |
typedef enum dt_exif_image_orientation_t dt_exif_image_orientation_t |
typedef enum dt_image_colorspace_t dt_image_colorspace_t |
typedef struct dt_image_geoloc_t dt_image_geoloc_t |
typedef enum dt_image_loader_t dt_image_loader_t |
typedef enum dt_image_orientation_t dt_image_orientation_t |
typedef struct dt_image_raw_parameters_t dt_image_raw_parameters_t |
typedef struct dt_image_t dt_image_t |
typedef enum dt_imageio_retval_t dt_imageio_retval_t |
return value of image io functions.
enum dt_image_flags_t |
enum dt_image_loader_t |
enum dt_imageio_retval_t |
void dt_get_dirname_from_imgid | ( | gchar * | dir, |
const int32_t | imgid | ||
) |
get dirname from imgid
References dt_image_full_path(), FALSE, and PATH_MAX.
Referenced by dt_collection_load_filmroll().
uint32_t dt_image_altered | ( | const int32_t | imgid | ) |
returns the number of history entries in library for this image
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, and DT_DEBUG_SQLITE3_PREPARE_V2.
Referenced by _dt_image_info_changed_callback(), _write_mipmap_to_disk(), and is_altered_member().
char * dt_image_camera_missing_sample_message | ( | const struct dt_image_t * | img, |
gboolean | logmsg | ||
) |
handle message for missing camera samples reported by rawspeed
References dt_image_t::camera_maker, dt_image_t::camera_model, and dt_util_str_replace().
Referenced by dt_image_check_camera_missing_sample().
void dt_image_check_camera_missing_sample | ( | const struct dt_image_t * | img | ) |
References dt_image_t::camera_missing_sample, dt_control_log(), dt_image_camera_missing_sample_message(), and TRUE.
Referenced by enter().
int32_t dt_image_copy | ( | const int32_t | imgid, |
const int32_t | filmid | ||
) |
physically copy image to the folder of the film roll with filmid and duplicate update database entries.
References dt_image_copy_rename().
Referenced by dt_control_copy_images_job_run(), and dt_lua_copy_image().
int32_t dt_image_copy_rename | ( | const int32_t | imgid, |
const int32_t | filmid, | ||
const gchar * | newname | ||
) |
physically copy image to the folder of the film roll with filmid and the name given by newname, and duplicate update database entries.
References darktable_t::collection, darktable, darktable_t::db, DT_COLLECTION_CHANGE_RELOAD, DT_COLLECTION_PROP_UNDEF, dt_collection_update_query(), dt_control_save_xmp(), dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_BIND_TEXT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_history_copy_and_paste_on_image(), dt_image_full_path(), dt_mipmap_cache_copy_thumbnails(), FALSE, darktable_t::mipmap_cache, PATH_MAX, and TRUE.
Referenced by dt_image_copy(), and dt_lua_copy_image().
int32_t dt_image_duplicate | ( | const int32_t | imgid | ) |
duplicates the given image in the database.
References dt_image_duplicate_with_version().
Referenced by dt_control_duplicate_images_job_run(), dt_lua_duplicate_image(), and dt_styles_apply_to_image().
int32_t dt_image_duplicate_with_version | ( | const int32_t | imgid, |
const int32_t | newversion | ||
) |
duplicates the given image in the database with the duplicate getting the supplied version number. if that version already exists just return the imgid without producing new duplicate. called with newversion -1 a new duplicate is produced with the next free version number.
References _image_duplicate_with_version(), and TRUE.
Referenced by dt_image_duplicate().
void dt_image_film_roll | ( | const dt_image_t * | img, |
char * | pathname, | ||
size_t | pathname_len | ||
) |
returns the film roll name, i.e. without the path.
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_image_film_roll_name(), f(), and dt_image_t::film_id.
Referenced by _metadata_view_update_values().
void dt_image_film_roll_directory | ( | const dt_image_t * | img, |
char * | pathname, | ||
size_t | pathname_len | ||
) |
returns the full directory of the associated film roll.
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, f(), and dt_image_t::film_id.
Referenced by _image_get_infos(), _jump_to(), load_xmp_callback(), path_member(), and update_preview_cb().
const char * dt_image_film_roll_name | ( | const char * | path | ) |
returns the portion of the path used for the film roll name.
References CLAMPS, and dt_conf_get_int().
Referenced by dt_image_film_roll(), list_view(), and pretty_print_collection().
GList * dt_image_find_xmps | ( | const char * | filename | ) |
finds all xmp duplicates for the given image in the database.
References _valid_glob_match(), dt_util_test_image_file(), PATH_MAX, and win_image_find_duplicates().
Referenced by _import_copy_xmp(), dt_control_delete_images_job_run(), and dt_image_read_duplicates().
void dt_image_flip | ( | const int32_t | imgid, |
const int32_t | cw | ||
) |
flips the image, clock wise, if given flag.
References dt_undo_lt_history_t::after, dt_undo_lt_history_t::after_history_end, dt_undo_lt_history_t::before, dt_undo_lt_history_t::before_history_end, darktable, darktable_t::develop, dt_history_snapshot_item_init(), dt_history_snapshot_undo_create(), dt_history_snapshot_undo_lt_history_data_free(), dt_history_snapshot_undo_pop(), dt_image_get_orientation(), dt_image_set_flip(), dt_mipmap_cache_remove(), dt_thumbtable_refresh_thumbnail, DT_UNDO_LT_HISTORY, dt_undo_record(), DT_VIEW_DARKROOM, dt_view_manager_get_current_view(), darktable_t::gui, dt_image_t::id, dt_develop_t::image_storage, dt_undo_lt_history_t::imgid, darktable_t::mipmap_cache, ORIENTATION_FLIP_X, ORIENTATION_FLIP_Y, ORIENTATION_NULL, ORIENTATION_SWAP_XY, dt_ui_t::thumbtable_lighttable, TRUE, dt_gui_gtk_t::ui, darktable_t::undo, and darktable_t::view_manager.
Referenced by dt_control_flip_images_job_run().
void dt_image_full_path | ( | const int32_t | imgid, |
char * | pathname, | ||
size_t | pathname_len, | ||
gboolean * | from_cache, | ||
const char * | calling_func | ||
) |
Get the full path of an image out of the database. TODO: This gets called too many times and the output should be cached. TODO: Document where the pathname_len is being set.
returns the full path name where the image was imported from. from_cache=TRUE check and return local cached filename if any.
imgid | The image ID. |
pathname | A pointer storing the returned value from the sql request. |
pathname_len | Number of characters of the path set outside the function. |
from_cache | Boolean, false returns the orgina file (file system), true tries to ge a local copy. |
calling_func | Pass FUNCTION for identifcation of callers of this function. |
References _image_local_copy_full_path(), darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQL, DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_print(), FALSE, and PATH_MAX.
Referenced by _event_dnd_get(), _generate_blocking(), _get_image_buffer(), _init_f(), _metadata_view_update_values(), _view_map_dnd_get_callback(), _watermark_get_svgdoc(), _write_mipmap_to_disk(), dt_control_delete_images_job_run(), dt_control_export_job_run(), dt_control_merge_hdr_job_run(), dt_control_refresh_exif_run(), dt_control_write_sidecar_files_job_run(), dt_exif_xmp_attach_export(), dt_exif_xmp_read_string(), dt_exif_xmp_write(), dt_get_dirname_from_imgid(), dt_get_lightroom_xmp(), dt_image_copy_rename(), dt_image_find_best_color_profile(), dt_image_get_audio_path(), dt_image_get_text_path(), dt_image_local_copy_reset(), dt_image_local_copy_set(), dt_image_local_copy_synch(), dt_image_rename(), dt_image_safe_remove(), dt_image_write_sidecar_file(), dt_imageio_export_with_flags(), dt_view_image_info_update(), image_tostring(), sidecar_member(), store(), store(), store_wrapper(), try_enter(), and write_image().
char * dt_image_get_audio_path | ( | const int32_t | imgid | ) |
helper function to get the audio file filename that is accompanying the image. g_free() after use
References dt_image_full_path(), dt_image_get_audio_path_from_path(), FALSE, and PATH_MAX.
Referenced by dt_view_audio_start().
char * dt_image_get_audio_path_from_path | ( | const char * | image_path | ) |
Referenced by _image_import_internal(), and dt_image_get_audio_path().
void dt_image_get_datetime | ( | const int32_t | imgid, |
char * | datetime | ||
) |
float dt_image_get_exposure_bias | ( | const struct dt_image_t * | image_storage | ) |
References dt_image_t::exif_exposure_bias.
Referenced by reload_defaults().
int32_t dt_image_get_id | ( | int32_t | film_id, |
const gchar * | filename | ||
) |
get image id by film_id and filename
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_BIND_TEXT, and DT_DEBUG_SQLITE3_PREPARE_V2.
Referenced by _image_import_internal(), and _is_in_library_by_path().
int32_t dt_image_get_id_full_path | ( | const gchar * | filename | ) |
get image id by filename
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_TEXT, and DT_DEBUG_SQLITE3_PREPARE_V2.
Referenced by dt_image_synch_all_xmp().
void dt_image_get_location | ( | const int32_t | imgid, |
dt_image_geoloc_t * | geoloc | ||
) |
get image location lon/lat/ele
References darktable, dt_image_cache_get(), dt_image_cache_read_release(), dt_image_geoloc_t::elevation, dt_image_t::geoloc, darktable_t::image_cache, dt_image_geoloc_t::latitude, and dt_image_geoloc_t::longitude.
Referenced by _image_set_images_locations(), _image_set_location(), and _view_map_center_on_image().
dt_image_orientation_t dt_image_get_orientation | ( | const int32_t | imgid | ) |
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_image_cache_get(), dt_image_cache_read_release(), dt_image_orientation(), flip(), darktable_t::image_cache, darktable_t::iop, and ORIENTATION_NULL.
Referenced by _init_8(), and dt_image_flip().
char * dt_image_get_text_path | ( | const int32_t | imgid | ) |
helper function to get the text file filename that is accompanying the image. g_free() after use
References dt_image_full_path(), dt_image_get_text_path_from_path(), FALSE, and PATH_MAX.
Referenced by _get_base_value().
char * dt_image_get_text_path_from_path | ( | const char * | image_path | ) |
Referenced by _image_import_internal(), and dt_image_get_text_path().
gboolean dt_image_get_xmp_mode | ( | ) |
get the mode xmp sidecars are written
References dt_conf_get_string_const(), dt_conf_set_string(), FALSE, and TRUE.
Referenced by _exif_decode_xmp_data(), _image_import_internal(), dt_control_crawler_run(), dt_image_local_copy_synch(), dt_image_safe_remove(), dt_image_synch_all_xmp(), dt_image_synch_xmps(), dt_image_write_sidecar_file(), and dt_metadata_set_import().
int dt_image_get_xmp_rating | ( | const dt_image_t * | img | ) |
References dt_image_get_xmp_rating_from_flags(), and dt_image_t::flags.
int dt_image_get_xmp_rating_from_flags | ( | const int | flags | ) |
References DT_IMAGE_REJECTED, DT_VIEW_RATINGS_MASK, and flags.
Referenced by _exif_xmp_read_data(), _exif_xmp_read_data_export(), and dt_image_get_xmp_rating().
int32_t dt_image_import | ( | int32_t | film_id, |
const char * | filename, | ||
gboolean | raise_signals | ||
) |
imports a new image from raw/etc file and adds it to the data base and image cache. Use from threads other than lua.
References _image_import_internal(), and TRUE.
Referenced by _film_import1(), _import_job(), dt_control_merge_hdr_job_run(), dt_image_import_job_run(), dt_load_from_string(), and main().
int32_t dt_image_import_lua | ( | int32_t | film_id, |
const char * | filename | ||
) |
imports a new image from raw/etc file and adds it to the data base and image cache. Use from lua thread.
References _image_import_internal(), FALSE, and TRUE.
Referenced by import_images().
void dt_image_init | ( | dt_image_t * | img | ) |
inits basic values to sensible defaults.
References dt_image_t::adobe_XYZ_to_CAM, dt_image_t::buf_dsc, dt_image_t::cache_entry, dt_image_t::camera_alias, dt_image_t::camera_legacy_makermodel, dt_image_t::camera_maker, dt_image_t::camera_makermodel, dt_image_t::camera_missing_sample, dt_image_t::camera_model, dt_image_t::change_timestamp, dt_iop_buffer_dsc_t::channels, dt_image_t::color_labels, dt_image_t::colorspace, dt_image_t::crop_height, dt_image_t::crop_width, dt_image_t::crop_x, dt_image_t::crop_y, dt_image_t::d65_color_matrix, dt_image_t::dng_gain_maps, dt_datetime_exif_to_img(), DT_IMAGE_COLORSPACE_NONE, dt_image_geoloc_t::elevation, dt_image_t::exif_aperture, dt_image_t::exif_crop, dt_image_t::exif_exposure, dt_image_t::exif_exposure_bias, dt_image_t::exif_focal_length, dt_image_t::exif_focus_distance, dt_image_t::exif_inited, dt_image_t::exif_iso, dt_image_t::exif_lens, dt_image_t::exif_maker, dt_image_t::exif_model, dt_image_t::export_timestamp, FALSE, dt_image_t::filename, dt_image_t::film_id, dt_iop_buffer_dsc_t::filters, dt_image_t::flags, dt_image_t::fuji_rotation_pos, dt_image_t::geoloc, dt_image_t::group_id, dt_image_t::height, dt_image_t::id, dt_image_t::import_timestamp, dt_image_geoloc_t::latitude, dt_image_raw_parameters_t::legacy, dt_image_t::legacy_flip, dt_image_t::loader, LOADER_UNKNOWN, dt_image_geoloc_t::longitude, dt_image_t::orientation, ORIENTATION_NULL, dt_image_t::p_height, dt_image_t::p_width, dt_image_t::pixel_aspect_ratio, dt_image_t::print_timestamp, dt_image_t::profile, dt_image_t::profile_size, dt_image_t::raw_black_level, dt_image_t::raw_black_level_separate, dt_image_t::raw_white_point, TYPE_UNKNOWN, UNKNOWN_IMAGE, dt_image_raw_parameters_t::user_flip, dt_image_t::usercrop, dt_image_t::version, dt_image_t::wb_coeffs, and dt_image_t::width.
Referenced by _import_copy_file(), _set_test_path(), dt_dev_init(), dt_image_cache_allocate(), and update_preview_cb().
int dt_image_is_hdr | ( | const dt_image_t * | img | ) |
returns non-zero if the image contains float data.
References DT_IMAGE_HDR, dt_image_t::filename, and dt_image_t::flags.
Referenced by _dev_auto_apply_presets(), _exif_decode_exif_data(), _gui_presets_popup_menu_show_internal(), _image_get_infos(), dt_gui_presets_autoapply_for_module(), and is_hdr_member().
int dt_image_is_ldr | ( | const dt_image_t * | img | ) |
returns non-zero if the image contains low-dynamic range data.
References DT_IMAGE_LDR, dt_image_t::filename, and dt_image_t::flags.
Referenced by _exif_decode_exif_data(), generate_preset_combo(), and is_ldr_member().
gboolean dt_image_is_matrix_correction_supported | ( | const dt_image_t * | img | ) |
returns non-zero if the image supports a color correction matrix
References DT_IMAGE_MONOCHROME, DT_IMAGE_RAW, DT_IMAGE_S_RAW, FALSE, dt_image_t::flags, and TRUE.
Referenced by _dev_auto_apply_presets(), _insert_default_modules(), calculate_bogus_daylight_wb(), commit_params(), dt_gui_presets_autoapply_for_module(), dt_image_find_best_color_profile(), find_temperature_from_raw_coeffs(), get_white_balance_coeff(), gui_update(), process_cmatrix(), process_lcms2(), and reload_defaults().
gboolean dt_image_is_monochrome | ( | const dt_image_t * | img | ) |
returns non-zero if this image was taken using a monochrome camera
References DT_IMAGE_MONOCHROME, DT_IMAGE_MONOCHROME_BAYER, FALSE, dt_image_t::flags, and TRUE.
Referenced by colorpicker_callback(), commit_params(), commit_params(), distort_backtransform(), distort_transform(), dt_image_find_best_color_profile(), gui_changed(), gui_update(), gui_update(), process(), reload_defaults(), and reload_defaults().
int dt_image_is_raw | ( | const dt_image_t * | img | ) |
returns non-zero if the image contains mosaic data.
References DT_IMAGE_RAW, and dt_image_t::flags.
Referenced by _get_structure(), _insert_default_modules(), _set_params(), commit_params(), commit_params(), default_input_format(), default_output_format(), dt_dev_pixelpipe_change(), dt_lightroom_import(), force_enable(), get_output_format(), gui_changed(), gui_update(), gui_update(), is_raw_member(), prepare_matrices(), and reload_defaults().
gboolean dt_image_is_rawprepare_supported | ( | const dt_image_t * | img | ) |
returns non-zero if the image supports the rawprepare module
References DT_IMAGE_RAW, DT_IMAGE_S_RAW, FALSE, dt_image_t::flags, and TRUE.
Referenced by _dev_auto_apply_presets(), _gui_presets_popup_menu_show_internal(), commit_params(), dt_dev_pixelpipe_change(), dt_gui_presets_autoapply_for_module(), dt_iop_gui_update_blending(), gui_update(), and reload_defaults().
int dt_image_local_copy_reset | ( | const int32_t | imgid | ) |
References _image_local_copy_full_path(), _nb_other_local_copy_for(), darktable, dt_control_log(), dt_control_queue_redraw_center(), dt_control_save_xmp(), dt_image_cache_get(), dt_image_cache_read_release(), DT_IMAGE_CACHE_RELAXED, dt_image_cache_write_release(), dt_image_full_path(), DT_IMAGE_LOCAL_COPY, dt_image_path_append_version(), dt_loc_get_user_cache_dir(), FALSE, dt_image_t::flags, darktable_t::image_cache, PATH_MAX, and TRUE.
Referenced by dt_control_delete_images_job_run(), dt_control_local_copy_images_job_run(), dt_film_remove(), dt_image_remove(), and local_copy_member().
int dt_image_local_copy_set | ( | const int32_t | imgid | ) |
References _image_local_copy_full_path(), darktable, dt_control_log(), dt_control_queue_redraw_center(), dt_image_cache_get(), DT_IMAGE_CACHE_RELAXED, dt_image_cache_write_release(), dt_image_full_path(), DT_IMAGE_LOCAL_COPY, FALSE, dt_image_t::flags, darktable_t::image_cache, and PATH_MAX.
Referenced by dt_control_local_copy_images_job_run(), and local_copy_member().
void dt_image_local_copy_synch | ( | ) |
int dt_image_monochrome_flags | ( | const dt_image_t * | img | ) |
returns the bitmask containing info about monochrome images
References DT_IMAGE_MONOCHROME, DT_IMAGE_MONOCHROME_BAYER, DT_IMAGE_MONOCHROME_PREVIEW, and dt_image_t::flags.
Referenced by _dev_auto_apply_presets(), _gui_presets_popup_menu_show_internal(), _image_get_infos(), _image_set_monochrome_flag(), _metadata_get_flags(), dt_gui_presets_autoapply_for_module(), and dt_imageio_open().
int32_t dt_image_move | ( | const int32_t | imgid, |
const int32_t | filmid | ||
) |
physically move image with imgid and its duplicates to the film roll given by filmid. returns -1 on error, 0 on success.
References dt_image_rename().
Referenced by dt_control_move_images_job_run(), and dt_lua_move_image().
|
inlinestatic |
returns the orientation bits of the image from exif.
References dt_image_t::orientation, ORIENTATION_NONE, and ORIENTATION_NULL.
Referenced by _flip_h(), _flip_v(), commit_params(), do_rotate(), dt_image_get_orientation(), dt_masks_legacy_params_v1_to_v2(), legacy_params(), and reload_defaults().
|
inlinestatic |
return the raw orientation, from jpg orientation.
References EXIF_ORIENTATION_FLIP_HORIZONTALLY, EXIF_ORIENTATION_FLIP_VERTICALLY, EXIF_ORIENTATION_NONE, EXIF_ORIENTATION_ROTATE_180_DEG, EXIF_ORIENTATION_ROTATE_CCW_90_DEG, EXIF_ORIENTATION_ROTATE_CW_90_DEG, EXIF_ORIENTATION_TRANSPOSE, EXIF_ORIENTATION_TRANSVERSE, ORIENTATION_FLIP_HORIZONTALLY, ORIENTATION_FLIP_VERTICALLY, ORIENTATION_NONE, ORIENTATION_ROTATE_180_DEG, ORIENTATION_ROTATE_CCW_90_DEG, ORIENTATION_ROTATE_CW_90_DEG, ORIENTATION_TRANSPOSE, and ORIENTATION_TRANSVERSE.
Referenced by _exif_decode_exif_data(), and dt_lightroom_import().
void dt_image_path_append_version | ( | const int32_t | imgid, |
char * | pathname, | ||
size_t | pathname_len | ||
) |
appends version numbering for duplicated images.
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, and dt_image_path_append_version_no_db().
Referenced by dt_control_delete_images_job_run(), dt_control_write_sidecar_files_job_run(), dt_exif_xmp_attach_export(), dt_exif_xmp_read_string(), dt_image_local_copy_reset(), dt_image_rename(), dt_image_write_sidecar_file(), image_tostring(), sidecar_member(), store(), and store_wrapper().
void dt_image_path_append_version_no_db | ( | int | version, |
char * | pathname, | ||
size_t | pathname_len | ||
) |
appends version numbering for duplicated images without querying the db.
References c2.
Referenced by dt_control_crawler_run(), and dt_image_path_append_version().
void dt_image_print_exif | ( | const dt_image_t * | img, |
char * | line, | ||
size_t | line_len | ||
) |
prints a one-line exif information string.
References dt_util_format_exposure(), dt_image_t::exif_aperture, dt_image_t::exif_exposure, dt_image_t::exif_focal_length, and dt_image_t::exif_iso.
Referenced by _get_base_value(), and finalize_store().
int dt_image_read_duplicates | ( | const uint32_t | id, |
const char * | filename, | ||
const gboolean | clear_selection | ||
) |
References _image_duplicate_with_version_ext(), darktable_t::collection, darktable, darktable_t::db, DT_COLLECTION_CHANGE_RELOAD, DT_COLLECTION_PROP_UNDEF, dt_collection_update_query(), dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_exif_xmp_read(), dt_grouping_add_to_group(), dt_image_cache_get(), dt_image_cache_read_release(), DT_IMAGE_CACHE_RELAXED, dt_image_cache_write_release(), dt_image_find_xmps(), dt_selection_clear(), dt_image_t::group_id, darktable_t::image_cache, PATH_MAX, darktable_t::selection, dt_image_t::version, and void().
Referenced by _image_import_internal(), and _import_image().
void dt_image_refresh_makermodel | ( | dt_image_t * | img | ) |
Refresh makermodel from the raw and exif values
References dt_image_t::camera_alias, dt_image_t::camera_maker, dt_image_t::camera_makermodel, dt_image_t::camera_model, dt_imageio_lookup_makermodel(), dt_image_t::exif_maker, and dt_image_t::exif_model.
Referenced by _exif_decode_exif_data(), dt_image_cache_allocate(), and dt_imageio_open_rawspeed().
void dt_image_remove | ( | const int32_t | imgid | ) |
removes the given image from the database.
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_grouping_remove_from_group(), dt_image_cache_get(), dt_image_cache_read_release(), dt_image_cache_remove(), dt_image_local_copy_reset(), dt_mipmap_cache_remove(), darktable_t::image_cache, darktable_t::mipmap_cache, and TRUE.
Referenced by _pop_undo(), dt_control_delete_images_job_run(), dt_control_remove_images_job_run(), and dt_lua_delete_image().
int32_t dt_image_rename | ( | const int32_t | imgid, |
const int32_t | filmid, | ||
const gchar * | newname | ||
) |
physically move image with imgid and its duplicates to the film roll given by filmid and the name given by newname. returns -1 on error, 0 on success.
References _image_local_copy_full_path(), darktable, darktable_t::db, dt_control_log(), dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_image_cache_get(), DT_IMAGE_CACHE_RELAXED, dt_image_cache_write_release(), dt_image_full_path(), dt_image_path_append_version(), dt_image_write_sidecar_file(), DT_MAX_FILENAME_LEN, FALSE, dt_image_t::filename, dt_image_t::film_id, darktable_t::image_cache, and PATH_MAX.
Referenced by dt_image_move(), and dt_lua_move_image().
gboolean dt_image_safe_remove | ( | const int32_t | imgid | ) |
References dt_image_full_path(), dt_image_get_xmp_mode(), PATH_MAX, and TRUE.
Referenced by dt_control_remove_images_job_run(), and dt_film_remove().
void dt_image_set_datetime | ( | const GList * | imgs, |
const char * | datetime, | ||
const gboolean | undo_on | ||
) |
References _datetime_undo_data_free(), _image_set_datetime(), _pop_undo(), darktable, DT_UNDO_DATETIME, dt_undo_end_group(), dt_undo_record(), dt_undo_start_group(), and darktable_t::undo.
Referenced by dt_control_datetime_job_run().
void dt_image_set_datetimes | ( | const GList * | imgs, |
const GArray * | dtime, | ||
const gboolean | undo_on | ||
) |
References _datetime_undo_data_free(), _image_set_datetimes(), _pop_undo(), darktable, DT_UNDO_DATETIME, dt_undo_end_group(), dt_undo_record(), dt_undo_start_group(), and darktable_t::undo.
Referenced by dt_control_datetime_job_run().
void dt_image_set_flip | ( | const int32_t | imgid, |
const dt_image_orientation_t | user_flip | ||
) |
References darktable, darktable_t::db, dt_control_save_xmp(), dt_database_get(), DT_DEBUG_SQLITE3_BIND_BLOB, DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, DT_HISTORY_HASH_CURRENT, dt_history_hash_write_from_history(), dt_mipmap_cache_remove(), darktable_t::mipmap_cache, and TRUE.
Referenced by dt_image_flip().
void dt_image_set_images_locations | ( | const GList * | imgs, |
const GArray * | gloc, | ||
const gboolean | undo_on | ||
) |
set images locations lon/lat/ele
References _geotag_undo_data_free(), _image_set_images_locations(), _pop_undo(), darktable, dt_undo_end_group(), DT_UNDO_GEOTAG, dt_undo_record(), dt_undo_start_group(), and darktable_t::undo.
Referenced by dt_control_gpx_apply_job_run().
void dt_image_set_location | ( | const int32_t | imgid, |
const dt_image_geoloc_t * | geoloc, | ||
const gboolean | undo_on, | ||
const gboolean | group_on | ||
) |
set image location lon/lat/ele
References dt_act_on_get_images(), dt_grouping_add_grouped_images(), dt_image_set_locations(), and UNKNOWN_IMAGE.
Referenced by dt_lightroom_import().
void dt_image_set_locations | ( | const GList * | img, |
const dt_image_geoloc_t * | geoloc, | ||
const gboolean | undo_on | ||
) |
set images location lon/lat/ele
References _geotag_undo_data_free(), _image_set_location(), _pop_undo(), darktable, dt_undo_end_group(), DT_UNDO_GEOTAG, dt_undo_record(), dt_undo_start_group(), and darktable_t::undo.
Referenced by _drag_and_drop_received(), and dt_image_set_location().
void dt_image_set_monochrome_flag | ( | const int32_t | imgid, |
gboolean | monochrome | ||
) |
set the monochrome flags if monochrome is TRUE and clear it otherwise
References _image_set_monochrome_flag(), and TRUE.
Referenced by dt_control_monochrome_images_job_run().
void dt_image_set_xmp_rating | ( | dt_image_t * | img, |
const int | rating | ||
) |
References DT_IMAGE_REJECTED, DT_VIEW_RATINGS_MASK, and dt_image_t::flags.
Referenced by _exif_decode_exif_data(), and _exif_decode_xmp_data().
void dt_image_synch_all_xmp | ( | const gchar * | pathname | ) |
References dt_image_get_id_full_path(), dt_image_get_xmp_mode(), dt_image_write_sidecar_file(), and UNKNOWN_IMAGE.
Referenced by _image_import_internal(), dt_control_delete_images_job_run(), and dt_control_remove_images_job_run().
void dt_image_synch_xmp | ( | const int | selected | ) |
References dt_act_on_get_images(), dt_image_synch_xmps(), and dt_image_write_sidecar_file().
Referenced by _attach_selected_tag(), _event_dnd_received(), _pop_menu_attached_attach_to_all(), dt_lightroom_import(), dt_lua_tag_attach(), dt_lua_tag_detach(), exif_datetime_taken_member(), metadata_member(), set_params(), and tag_delete().
void dt_image_synch_xmps | ( | const GList * | img | ) |
References dt_image_get_xmp_mode(), and dt_image_write_sidecar_file().
Referenced by _apply_rename_path(), _detach_selected_tag(), _new_button_clicked(), _pop_menu_dictionary_delete_node(), _pop_menu_dictionary_delete_tag(), _pop_menu_dictionary_edit_tag(), _undo_do_undo_redo(), _write_metadata(), dt_image_synch_xmp(), and set_params().
gboolean dt_image_use_monochrome_workflow | ( | const dt_image_t * | img | ) |
returns true if the image has been tested to be monochrome and the image wants monochrome workflow
References DT_IMAGE_MONOCHROME, DT_IMAGE_MONOCHROME_BAYER, DT_IMAGE_MONOCHROME_PREVIEW, DT_IMAGE_MONOCHROME_WORKFLOW, and dt_image_t::flags.
Referenced by _image_get_infos().
int dt_image_write_sidecar_file | ( | const int32_t | imgid | ) |
References darktable, darktable_t::db, dt_database_get(), DT_DEBUG_SQLITE3_BIND_INT, DT_DEBUG_SQLITE3_PREPARE_V2, dt_exif_xmp_write(), dt_image_full_path(), dt_image_get_xmp_mode(), dt_image_path_append_version(), FALSE, PATH_MAX, and TRUE.
Referenced by dt_dev_save_xmp_job_run(), dt_image_cache_write_release(), dt_image_local_copy_synch(), dt_image_rename(), dt_image_synch_all_xmp(), dt_image_synch_xmp(), dt_image_synch_xmps(), sync_db_to_xmp(), sync_newest_to_oldest(), and sync_oldest_to_newest().
const char flag |
const struct { ... } loaders_info[LOADER_COUNT] |
Referenced by _metadata_get_flags().
const char* tooltip |
Referenced by _altered_enter(), _changes_tooltip_callback(), _combobox_new_from_list(), _darkroom_ui_apply_style_popupmenu(), _gui_off_callback(), _gui_styles_update_view(), _iop_tooltip_callback(), _lib_metadata_refill_grid(), _mask_indicator_tooltip(), _metadata_get_flags(), _metadata_update_tooltip(), _metadata_update_value(), _row_tooltip_setup(), _sample_tooltip_callback(), _tree_query_tooltip(), checker_motion_notify(), dt_action_button_new(), dt_iop_togglebutton_new(), dt_ui_notebook_page(), gui_init(), gui_init(), and gui_init().