359#define dt_dev_refresh_ui_images(dev) DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_refresh_ui_images_real, (dev))
375#define dt_dev_invalidate(dev) DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_invalidate_real, (dev))
379#define dt_dev_invalidate_preview(dev) DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_invalidate_preview_real, (dev))
383#define dt_dev_invalidate_all(dev) DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_invalidate_all_real, (dev))
388#define dt_dev_invalidate_zoom(dev) DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_invalidate_zoom_real, (dev))
423#define dt_dev_configure(dev, wd, ht) DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_configure_real, (dev), (wd), (ht))
494 float *points,
size_t points_count);
497 const int transf_direction,
float *points,
size_t points_count);
500 float *points,
size_t points_count);
503 const int transf_direction,
float *points,
size_t points_count);
int width
Definition bilateral.h:1
int height
Definition bilateral.h:1
typedef void((*dt_cache_allocate_t)(void *userdata, dt_cache_entry_t *entry))
void dt_dev_get_final_size(dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, const int32_t imgid, const int input_width, const int input_height, int *processed_width, int *processed_height)
Compute the theoritical final size of a pipeline taking the full-resolution image at input.
Definition develop.c:1387
int dt_dev_wait_hash(dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, const double iop_order, const int transf_direction, dt_pthread_mutex_t *lock, const volatile uint64_t *const hash)
Definition develop.c:1201
void dt_dev_masks_list_change(dt_develop_t *dev)
Definition develop.c:844
int dt_dev_distort_backtransform_locked(dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, const double iop_order, const int transf_direction, float *points, size_t points_count)
Definition develop.c:1148
void dt_dev_get_processed_size(const dt_develop_t *dev, int *procw, int *proch)
Definition develop.c:743
void dt_masks_set_lock_mode(dt_develop_t *dev, gboolean mode)
Definition develop.c:1331
dt_dev_overexposed_colorscheme_t
Definition develop.h:41
@ DT_DEV_OVEREXPOSED_PURPLEGREEN
Definition develop.h:44
@ DT_DEV_OVEREXPOSED_REDBLUE
Definition develop.h:43
@ DT_DEV_OVEREXPOSED_BLACKWHITE
Definition develop.h:42
uint32_t dt_dev_modulegroups_get(dt_develop_t *dev)
Definition develop.c:824
void dt_dev_invalidate_preview_real(dt_develop_t *dev)
Definition develop.c:362
void dt_dev_reprocess_all(dt_develop_t *dev)
Definition develop.c:733
void dt_dev_cleanup(dt_develop_t *dev)
Definition develop.c:176
void dt_dev_module_remove(dt_develop_t *dev, struct dt_iop_module_t *module)
Definition develop.c:956
dt_dev_overlay_colors_t
Definition develop.h:48
@ DT_DEV_OVERLAY_CYAN
Definition develop.h:53
@ DT_DEV_OVERLAY_YELLOW
Definition develop.h:52
@ DT_DEV_OVERLAY_RED
Definition develop.h:50
@ DT_DEV_OVERLAY_GREEN
Definition develop.h:51
@ DT_DEV_OVERLAY_GRAY
Definition develop.h:49
@ DT_DEV_OVERLAY_MAGENTA
Definition develop.h:54
void dt_dev_process_image_job(dt_develop_t *dev)
Definition develop.c:615
int dt_dev_distort_transform_plus(dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, const double iop_order, const int transf_direction, float *points, size_t points_count)
Definition develop.c:1138
int dt_dev_distort_backtransform(dt_develop_t *dev, float *points, size_t points_count)
Definition develop.c:1103
dt_dev_pixelpipe_display_mask_t
Definition develop.h:80
@ DT_DEV_PIXELPIPE_DISPLAY_a
Definition develop.h:86
@ DT_DEV_PIXELPIPE_DISPLAY_OUTPUT
Definition develop.h:84
@ DT_DEV_PIXELPIPE_DISPLAY_G
Definition develop.h:89
@ DT_DEV_PIXELPIPE_DISPLAY_L
Definition develop.h:85
@ DT_DEV_PIXELPIPE_DISPLAY_CHANNEL
Definition develop.h:83
@ DT_DEV_PIXELPIPE_DISPLAY_ANY
Definition develop.h:102
@ DT_DEV_PIXELPIPE_DISPLAY_LCH_h
Definition develop.h:93
@ DT_DEV_PIXELPIPE_DISPLAY_JzCzhz_hz
Definition develop.h:99
@ DT_DEV_PIXELPIPE_DISPLAY_HSL_H
Definition develop.h:94
@ DT_DEV_PIXELPIPE_DISPLAY_PASSTHRU_MONO
Definition develop.h:101
@ DT_DEV_PIXELPIPE_DISPLAY_HSL_S
Definition develop.h:95
@ DT_DEV_PIXELPIPE_DISPLAY_JzCzhz_Cz
Definition develop.h:98
@ DT_DEV_PIXELPIPE_DISPLAY_LCH_C
Definition develop.h:92
@ DT_DEV_PIXELPIPE_DISPLAY_b
Definition develop.h:87
@ DT_DEV_PIXELPIPE_DISPLAY_STICKY
Definition develop.h:103
@ DT_DEV_PIXELPIPE_DISPLAY_MASK
Definition develop.h:82
@ DT_DEV_PIXELPIPE_DISPLAY_JzCzhz_Jz
Definition develop.h:97
@ DT_DEV_PIXELPIPE_DISPLAY_PASSTHRU
Definition develop.h:100
@ DT_DEV_PIXELPIPE_DISPLAY_NONE
Definition develop.h:81
@ DT_DEV_PIXELPIPE_DISPLAY_HSL_l
Definition develop.h:96
@ DT_DEV_PIXELPIPE_DISPLAY_GRAY
Definition develop.h:91
@ DT_DEV_PIXELPIPE_DISPLAY_B
Definition develop.h:90
@ DT_DEV_PIXELPIPE_DISPLAY_R
Definition develop.h:88
dt_dev_transform_direction_t
Definition develop.h:71
@ DT_DEV_TRANSFORM_DIR_BACK_EXCL
Definition develop.h:76
@ DT_DEV_TRANSFORM_DIR_BACK_INCL
Definition develop.h:75
@ DT_DEV_TRANSFORM_DIR_FORW_INCL
Definition develop.h:73
@ DT_DEV_TRANSFORM_DIR_ALL
Definition develop.h:72
@ DT_DEV_TRANSFORM_DIR_FORW_EXCL
Definition develop.h:74
void dt_dev_invalidate_zoom_real(dt_develop_t *dev)
Definition develop.c:334
int dt_dev_distort_backtransform_plus(dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, const double iop_order, const int transf_direction, float *points, size_t points_count)
Definition develop.c:1177
void dt_dev_append_changed_tag(const int32_t imgid)
Definition develop.c:1353
void dt_dev_invalidate_all_real(dt_develop_t *dev)
Definition develop.c:376
void dt_dev_masks_selection_change(dt_develop_t *dev, struct dt_iop_module_t *module, const int selectid, const int throw_event)
Definition develop.c:859
void dt_dev_init(dt_develop_t *dev, int32_t gui_attached)
Definition develop.c:77
int dt_dev_is_current_image(dt_develop_t *dev, int32_t imgid)
Definition develop.c:785
void dt_dev_undo_start_record(dt_develop_t *dev)
Definition develop.c:1295
void dt_dev_get_pointer_full_pos(dt_develop_t *dev, const float px, const float py, float *mouse_x, float *mouse_y)
Get the pointer position in relation of processed image [0..1]. This takes into account the borders a...
Definition develop.c:769
dt_dev_rawoverexposed_mode_t
Definition develop.h:57
@ DT_DEV_RAWOVEREXPOSED_MODE_FALSECOLOR
Definition develop.h:60
@ DT_DEV_RAWOVEREXPOSED_MODE_MARK_CFA
Definition develop.h:58
@ DT_DEV_RAWOVEREXPOSED_MODE_MARK_SOLID
Definition develop.h:59
void dt_dev_snapshot_request(dt_develop_t *dev, const char *filename)
Definition develop.c:866
void dt_dev_modulegroups_update_visibility(dt_develop_t *dev)
Definition develop.c:838
gboolean dt_masks_get_lock_mode(dt_develop_t *dev)
Definition develop.c:1319
float dt_dev_exposure_get_black(dt_develop_t *dev)
Definition develop.c:809
gchar * dt_history_item_get_label(const struct dt_iop_module_t *module)
Definition develop.c:1058
void dt_dev_modulegroups_set(dt_develop_t *dev, uint32_t group)
Definition develop.c:818
gchar * dt_history_item_get_name_html(const struct dt_iop_module_t *module)
Definition develop.c:1086
void dt_dev_modulegroups_switch(dt_develop_t *dev, struct dt_iop_module_t *module)
Definition develop.c:832
void dt_dev_check_zoom_pos_bounds(dt_develop_t *dev, float *dev_x, float *dev_y, float *box_w, float *box_h)
Definition develop.c:702
gboolean dt_dev_check_zoom_scale_bounds(dt_develop_t *dev)
Ensure that the current zoom level is within allowed bounds.
Definition develop.c:1490
int dt_dev_distort_transform_locked(dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, const double iop_order, const int transf_direction, float *points, size_t points_count)
Definition develop.c:1109
dt_clipping_preview_mode_t
Definition develop.h:115
@ DT_CLIPPING_PREVIEW_ANYRGB
Definition develop.h:117
@ DT_CLIPPING_PREVIEW_GAMUT
Definition develop.h:116
@ DT_CLIPPING_PREVIEW_SATURATION
Definition develop.h:119
@ DT_CLIPPING_PREVIEW_LUMINANCE
Definition develop.h:118
struct dt_dev_pixelpipe_iop_t * dt_dev_distort_get_iop_pipe(dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, struct dt_iop_module_t *module)
Definition develop.c:1186
void dt_dev_invalidate_zoom_preview(dt_develop_t *dev)
Definition develop.c:348
void dt_dev_reset_roi(dt_develop_t *dev)
Definition develop.c:1442
struct dt_iop_module_t * dt_dev_module_duplicate(dt_develop_t *dev, struct dt_iop_module_t *base)
Definition develop.c:884
float dt_dev_get_natural_scale(dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe)
Definition develop.c:1431
dt_dev_pipe_type_t
Definition develop.h:123
@ DT_DEV_PREVIEW_PIPE
Definition develop.h:125
@ DT_DEV_PIPE
Definition develop.h:124
void dt_dev_process_preview(dt_develop_t *dev)
Definition develop.c:251
void dt_dev_invalidate_real(dt_develop_t *dev)
Definition develop.c:320
void dt_dev_average_delay_update(const dt_times_t *start, uint32_t *average_delay)
Definition develop.c:873
int dt_dev_sync_pixelpipe_hash(dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, const double iop_order, const int transf_direction, dt_pthread_mutex_t *lock, const volatile uint64_t *const hash)
Definition develop.c:1243
void dt_dev_configure_real(dt_develop_t *dev, int wd, int ht)
Definition develop.c:678
void dt_dev_process_preview_job(dt_develop_t *dev)
Definition develop.c:609
void dt_dev_pixelpipe_resync_all(dt_develop_t *dev)
Definition develop.c:312
void dt_dev_masks_update_hash(dt_develop_t *dev)
Definition develop.c:1366
gboolean dt_dev_clip_roi(dt_develop_t *dev, cairo_t *cr, int32_t width, int32_t height)
Clip the view to the ROI. WARNING: this must be done before any translation.
Definition develop.c:1450
dt_dev_rawoverexposed_colorscheme_t
Definition develop.h:63
@ DT_DEV_RAWOVEREXPOSED_RED
Definition develop.h:64
@ DT_DEV_RAWOVEREXPOSED_BLUE
Definition develop.h:66
@ DT_DEV_RAWOVEREXPOSED_BLACK
Definition develop.h:67
@ DT_DEV_RAWOVEREXPOSED_GREEN
Definition develop.h:65
void dt_dev_undo_end_record(dt_develop_t *dev)
Definition develop.c:1308
gboolean dt_dev_rescale_roi(dt_develop_t *dev, cairo_t *cr, int32_t width, int32_t height)
Scale the ROI to fit within given width/height, centered.
Definition develop.c:1472
float dt_dev_get_zoom_scale(dt_develop_t *dev, gboolean preview)
Definition develop.c:644
void dt_dev_modules_update_multishow(dt_develop_t *dev)
Definition develop.c:1041
dt_develop_detail_mmask_t
Definition develop.h:107
@ DT_DEV_DETAIL_MASK_DEMOSAIC
Definition develop.h:110
@ DT_DEV_DETAIL_MASK_REQUIRED
Definition develop.h:109
@ DT_DEV_DETAIL_MASK_RAWPREPARE
Definition develop.h:111
@ DT_DEV_DETAIL_MASK_NONE
Definition develop.h:108
guint dt_dev_mask_history_overload(GList *dev_history, guint threshold)
Definition dev_history.c:905
int dt_dev_distort_transform(dt_develop_t *dev, float *points, size_t points_count)
Definition develop.c:1099
void dt_dev_masks_list_update(dt_develop_t *dev)
Definition develop.c:849
int dt_dev_load_image(dt_develop_t *dev, const int32_t imgid)
Definition develop.c:651
void dt_dev_reorder_gui_module_list(dt_develop_t *dev)
Definition develop.c:1279
void dt_dev_pixelpipe_rebuild(struct dt_develop_t *dev)
Definition develop.c:275
uint64_t dt_dev_hash(dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe)
Definition develop.c:1263
float dt_dev_exposure_get_exposure(dt_develop_t *dev)
Definition develop.c:799
void dt_dev_masks_list_remove(dt_develop_t *dev, int formid, int parentid)
Definition develop.c:854
void dt_dev_process_image(dt_develop_t *dev)
Definition develop.c:243
void dt_dev_pixelpipe_resync_preview(dt_develop_t *dev)
Definition develop.c:303
gchar * dt_history_item_get_name(const struct dt_iop_module_t *module)
Definition develop.c:1071
void dt_dev_refresh_ui_images_real(dt_develop_t *dev)
Definition develop.c:259
enum dt_develop_detail_mmask_t dt_develop_detail_mask_t
void dt_dev_pixelpipe_resync_main(dt_develop_t *dev)
Definition develop.c:294
unsigned __int64 uint64_t
Definition strptime.c:71
size_t height
Definition develop.h:140
uint64_t hash
Definition develop.h:141
size_t width
Definition develop.h:139
void * buffer
Definition develop.h:138
size_t bpp
Definition develop.h:143
const char * op
Definition develop.h:142
Definition pixelpipe_hb.h:46
struct dt_iop_module_t *struct dt_dev_pixelpipe_t * pipe
Definition pixelpipe_hb.h:48
uint64_t hash
Definition pixelpipe_hb.h:73
Definition pixelpipe_hb.h:126
struct dt_iop_module_t *float(* get_exposure)(struct dt_iop_module_t *exp)
Definition develop.h:130
float(* get_black)(struct dt_iop_module_t *exp)
Definition develop.h:131
void(* list_update)(struct dt_lib_module_t *self)
Definition develop.h:281
int32_t height
Definition develop.h:170
struct dt_develop_t::@22 iso_12646
int32_t gui_attached
Definition develop.h:151
GList * iop_order_list
Definition develop.h:208
dt_image_t image_storage
Definition develop.h:193
uint64_t history_hash
Definition develop.h:236
uint32_t(* get)(struct dt_lib_module_t *self)
Definition develop.h:252
uint32_t average_delay
Definition develop.h:154
struct dt_develop_t::@18::@24 modulegroups
int32_t orig_height
Definition develop.h:164
struct dt_lib_module_t *void(* set)(struct dt_lib_module_t *self, uint32_t group)
Definition develop.h:250
struct dt_develop_t::@23 profile
int iop_order_version
Definition develop.h:207
float x
Definition develop.h:182
dt_dev_rawoverexposed_colorscheme_t colorscheme
Definition develop.h:316
int32_t border_size
Definition develop.h:159
dt_backbuf_t display_histogram
Definition develop.h:230
uint32_t * histogram_pre_levels
Definition develop.h:214
GList * iop
Definition develop.h:202
gboolean request
Definition develop.h:270
struct dt_develop_t::@20 rawoverexposed
dt_backbuf_t output_histogram
Definition develop.h:229
int32_t history_end
Definition develop.h:197
gboolean wb_is_D65
Definition develop.h:292
struct dt_develop_t::@21 display
gboolean(* test_visible)(struct dt_lib_module_t *self, gchar *module)
Definition develop.h:262
struct dt_develop_t::@18::@25 snapshot
void(* list_remove)(struct dt_lib_module_t *self, int formid, int parentid)
Definition develop.h:280
void(* update_visibility)(struct dt_lib_module_t *self)
Definition develop.h:260
struct dt_iop_module_t * gui_module
Definition develop.h:156
void(* switch_group)(struct dt_lib_module_t *self, struct dt_iop_module_t *module)
Definition develop.h:258
dt_dev_proxy_exposure_t exposure
Definition develop.h:243
dt_clipping_preview_mode_t mode
Definition develop.h:306
uint32_t preview_average_delay
Definition develop.h:155
uint32_t(* get_activated)(struct dt_lib_module_t *self)
Definition develop.h:254
struct dt_develop_t::@19 overexposed
float brightness
Definition develop.h:324
int32_t orig_width
Definition develop.h:164
struct dt_lib_module_t *void(* list_change)(struct dt_lib_module_t *self)
Definition develop.h:279
gboolean forms_changed
Definition develop.h:222
GtkWidget * floating_window
Definition develop.h:300
gboolean(* test)(struct dt_lib_module_t *self, uint32_t group, uint32_t iop_group)
Definition develop.h:256
float lower
Definition develop.h:304
float y
Definition develop.h:182
struct dt_dev_pixelpipe_t * preview_pipe
Definition develop.h:185
struct dt_develop_t::@18 proxy
struct dt_masks_form_t * form_visible
Definition develop.h:223
GList * history
Definition develop.h:198
int mask_form_selected_id
Definition develop.h:341
GList * allprofile_info
Definition develop.h:211
gboolean darkroom_skip_mouse_events
Definition develop.h:342
GList * alliop
Definition develop.h:204
dt_pthread_mutex_t history_mutex
Definition develop.h:196
dt_aligned_pixel_t wb_coeffs
Definition develop.h:293
dt_dev_overexposed_colorscheme_t colorscheme
Definition develop.h:303
GList * allforms
Definition develop.h:226
dt_backbuf_t raw_histogram
Definition develop.h:228
float scaling
Definition develop.h:178
struct dt_masks_form_gui_t * form_gui
Definition develop.h:224
GtkWidget * button
Definition develop.h:300
void(* selection_change)(struct dt_lib_module_t *self, struct dt_iop_module_t *module, const int selectid, const int throw_event)
Definition develop.h:283
int border
Definition develop.h:325
gint drawing_timeout
Definition develop.h:344
uint32_t * histogram_pre_tonecurve
Definition develop.h:214
uint32_t histogram_pre_levels_max
Definition develop.h:215
GtkWidget * gamut_button
Definition develop.h:338
struct dt_develop_t::@18::@26 masks
struct dt_iop_module_t * chroma_adaptation
Definition develop.h:289
gboolean mask_lock
Definition develop.h:343
gboolean enabled
Definition develop.h:302
int exit
Definition develop.h:153
int32_t iop_instance
Definition develop.h:201
uint64_t forms_hash
Definition develop.h:220
dt_dev_rawoverexposed_mode_t mode
Definition develop.h:315
const gchar * filename
Definition develop.h:271
uint32_t histogram_pre_tonecurve_max
Definition develop.h:215
float threshold
Definition develop.h:317
guint auto_save_timeout
Definition develop.h:233
struct dt_dev_pixelpipe_t * pipe
Definition develop.h:185
float upper
Definition develop.h:305
GtkWidget * softproof_button
Definition develop.h:338
int32_t width
Definition develop.h:170
GList * forms
Definition develop.h:218
float natural_scale
Definition develop.h:174
Definition common/image.h:195
struct dt_develop_t * dev
Definition imageop.h:227
int iop_order
Definition imageop.h:196
Definition darktable.h:605