![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include <assert.h>#include <stdlib.h>#include <string.h>#include "common/darktable.h"#include "common/gaussian.h"#include "common/math.h"#include "common/opencl.h"#include "control/conf.h"#include "control/control.h"#include "develop/develop.h"#include "develop/imageop.h"#include "develop/imageop_math.h"#include "dtgtk/drawingarea.h"#include "dtgtk/gradientslider.h"#include "dtgtk/togglebutton.h"#include "gui/gtk.h"#include "gui/presets.h"#include "iop/iop_api.h"#include <librsvg/rsvg.h>#include <librsvg/rsvg-cairo.h>
Include dependency graph for zonesystem.c:Go to the source code of this file.
Data Structures | |
| struct | dt_iop_zonesystem_params_t |
| struct | dt_iop_zonesystem_data_t |
| struct | dt_iop_zonesystem_gui_data_t |
Macros | |
| #define | MAX_ZONE_SYSTEM_SIZE 24 |
| #define | DT_ZONESYSTEM_INSET DT_PIXEL_APPLY_DPI(5) |
| #define | DT_ZONESYSTEM_BAR_SPLIT_WIDTH 0.0 |
| #define | DT_ZONESYSTEM_REFERENCE_SPLIT 0.30 |
Typedefs | |
| typedef struct dt_iop_zonesystem_params_t | dt_iop_zonesystem_params_t |
| typedef struct dt_iop_zonesystem_data_t | dt_iop_zonesystem_data_t |
| typedef struct dt_iop_zonesystem_gui_data_t | dt_iop_zonesystem_gui_data_t |
| #define DT_ZONESYSTEM_BAR_SPLIT_WIDTH 0.0 |
Definition at line 474 of file zonesystem.c.
| #define DT_ZONESYSTEM_INSET DT_PIXEL_APPLY_DPI(5) |
Definition at line 473 of file zonesystem.c.
| #define DT_ZONESYSTEM_REFERENCE_SPLIT 0.30 |
Definition at line 475 of file zonesystem.c.
| #define MAX_ZONE_SYSTEM_SIZE 24 |
Definition at line 83 of file zonesystem.c.
| typedef struct dt_iop_zonesystem_data_t dt_iop_zonesystem_data_t |
and pixelpipe data is just the same
| typedef struct dt_iop_zonesystem_gui_data_t dt_iop_zonesystem_gui_data_t |
| typedef struct dt_iop_zonesystem_params_t dt_iop_zonesystem_params_t |
gui params.
|
inlinestatic |
Definition at line 199 of file zonesystem.c.
References dt_iop_module_t::dev, dt_dev_pixelpipe_has_preview_output(), dt_free, dt_iop_gui_enter_critical_section(), dt_iop_gui_leave_critical_section(), g, dt_develop_t::gui_attached, dt_iop_module_t::gui_data, height, dt_iop_roi_t::height, IS_NULL_PTR, width, and dt_iop_roi_t::width.
|
inlinestatic |
Definition at line 172 of file zonesystem.c.
Referenced by commit_params(), dt_iop_zonesystem_bar_button_press(), dt_iop_zonesystem_bar_draw(), dt_iop_zonesystem_bar_motion_notify(), and dt_iop_zonesystem_preview_draw().
|
static |
Definition at line 796 of file zonesystem.c.
References dt_control_queue_redraw_widget(), g, and dt_iop_module_t::gui_data.
Referenced by gui_cleanup(), and gui_init().
|
inlinestatic |
Definition at line 164 of file zonesystem.c.
Referenced by dt_iop_zonesystem_bar_button_press().
| void cleanup_pipe | ( | struct dt_iop_module_t * | self, |
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
Definition at line 353 of file zonesystem.c.
References dt_dev_pixelpipe_iop_t::data, and dt_free_align.
| void commit_params | ( | struct dt_iop_module_t * | self, |
| dt_iop_params_t * | p1, | ||
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
Definition at line 325 of file zonesystem.c.
References _iop_zonesystem_calculate_zonemap(), d, dt_dev_pixelpipe_iop_t::data, k, MAX_ZONE_SYSTEM_SIZE, p, and size.
| int default_colorspace | ( | dt_iop_module_t * | self, |
| dt_dev_pixelpipe_t * | pipe, | ||
| const dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
Definition at line 158 of file zonesystem.c.
References IOP_CS_LAB.
| int default_group | ( | ) |
Definition at line 153 of file zonesystem.c.
References IOP_GROUP_TONES.
| const char * deprecated_msg | ( | ) |
Definition at line 148 of file zonesystem.c.
|
static |
Definition at line 568 of file zonesystem.c.
References _iop_zonesystem_calculate_zonemap(), _iop_zonesystem_zone_index_from_lightness(), darktable, darktable_t::develop, dt_dev_add_history_item, DT_ZONESYSTEM_INSET, g, dt_iop_module_t::gui_data, k, MAX_ZONE_SYSTEM_SIZE, p, dt_iop_module_t::params, TRUE, and width.
Referenced by gui_init().
|
static |
Definition at line 608 of file zonesystem.c.
References FALSE, g, dt_iop_module_t::gui_data, and TRUE.
Referenced by gui_init().
|
static |
Definition at line 476 of file zonesystem.c.
References _iop_zonesystem_calculate_zonemap(), dt_cairo_image_surface_create(), DT_PIXEL_APPLY_DPI, DT_ZONESYSTEM_BAR_SPLIT_WIDTH, DT_ZONESYSTEM_INSET, DT_ZONESYSTEM_REFERENCE_SPLIT, g, dt_iop_module_t::gui_data, height, i, k, MAX_ZONE_SYSTEM_SIZE, p, dt_iop_module_t::params, TRUE, and width.
Referenced by gui_init().
|
static |
Definition at line 636 of file zonesystem.c.
References FALSE, g, dt_iop_module_t::gui_data, and TRUE.
Referenced by gui_init().
|
static |
Definition at line 645 of file zonesystem.c.
References _iop_zonesystem_calculate_zonemap(), darktable, darktable_t::develop, dt_dev_add_history_item, DT_ZONESYSTEM_INSET, DT_ZONESYSTEM_REFERENCE_SPLIT, FALSE, g, dt_iop_module_t::gui_data, height, MAX_ZONE_SYSTEM_SIZE, p, dt_iop_module_t::params, TRUE, dt_iop_module_t::widget, and width.
Referenced by gui_init().
|
static |
Definition at line 619 of file zonesystem.c.
References darktable, darktable_t::develop, dt_dev_add_history_item, dt_gui_get_scroll_unit_deltas(), MAX_ZONE_SYSTEM_SIZE, p, dt_iop_module_t::params, and TRUE.
Referenced by gui_init().
|
static |
Definition at line 702 of file zonesystem.c.
References _iop_zonesystem_calculate_zonemap(), CLIP, dt_cairo_image_surface_create(), dt_free, dt_iop_gui_enter_critical_section(), dt_iop_gui_leave_critical_section(), DT_PIXEL_APPLY_DPI, dt_iop_module_t::enabled, dt_iop_module_t::expander, g, dt_iop_module_t::gui_data, height, k, MAX_ZONE_SYSTEM_SIZE, p, dt_iop_module_t::params, TRUE, and width.
Referenced by gui_init().
| int flags | ( | ) |
Definition at line 142 of file zonesystem.c.
References IOP_FLAGS_ALLOW_TILING, IOP_FLAGS_DEPRECATED, IOP_FLAGS_INCLUDE_IN_STYLES, and IOP_FLAGS_SUPPORTS_BLENDING.
| void gui_cleanup | ( | struct dt_iop_module_t * | self | ) |
Definition at line 460 of file zonesystem.c.
References _iop_zonesystem_redraw_preview_callback(), darktable, DT_DEBUG_CONTROL_SIGNAL_DISCONNECT, dt_free, g, dt_iop_module_t::gui_data, IOP_GUI_FREE, and darktable_t::signals.
| void gui_init | ( | struct dt_iop_module_t * | self | ) |
Definition at line 408 of file zonesystem.c.
References _iop_zonesystem_redraw_preview_callback(), darktable, DT_DEBUG_CONTROL_SIGNAL_CONNECT, DT_GUI_BOX_SPACING, dt_iop_zonesystem_bar_button_press(), dt_iop_zonesystem_bar_button_release(), dt_iop_zonesystem_bar_draw(), dt_iop_zonesystem_bar_leave_notify(), dt_iop_zonesystem_bar_motion_notify(), dt_iop_zonesystem_bar_scrolled(), dt_iop_zonesystem_preview_draw(), DT_PIXEL_APPLY_DPI, DT_SIGNAL_DEVELOP_PREVIEW_PIPE_FINISHED, dtgtk_drawing_area_new_with_aspect_ratio(), FALSE, g, darktable_t::gui, IOP_GUI_ALLOC, dt_gui_gtk_t::scroll_mask, darktable_t::signals, size_allocate_callback(), TRUE, and dt_iop_module_t::widget.
| void gui_update | ( | struct dt_iop_module_t * | self | ) |
Refresh GUI controls from current params and configuration.
gui callbacks, these are needed.
gui setup and update, these are needed.
Definition at line 359 of file zonesystem.c.
References g, and dt_iop_module_t::gui_data.
| void init_pipe | ( | struct dt_iop_module_t * | self, |
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
Definition at line 347 of file zonesystem.c.
References dt_dev_pixelpipe_iop_t::data, dt_dev_pixelpipe_iop_t::data_size, and dt_calloc_align().
| const char * name | ( | ) |
Definition at line 137 of file zonesystem.c.
| __DT_CLONE_TARGETS__ int process | ( | struct dt_iop_module_t * | self, |
| const dt_dev_pixelpipe_t * | pipe, | ||
| const dt_dev_pixelpipe_iop_t * | piece, | ||
| const void *const | ivoid, | ||
| void *const | ovoid | ||
| ) |
Definition at line 295 of file zonesystem.c.
References __OMP_PARALLEL_FOR__, CLAMPS, d, dt_dev_pixelpipe_iop_t::data, for_each_channel, dt_iop_roi_t::height, k, out, ovoid, process_common_cleanup(), process_common_setup(), dt_dev_pixelpipe_iop_t::roi_in, dt_dev_pixelpipe_iop_t::roi_out, size, and dt_iop_roi_t::width.
|
static |
Definition at line 226 of file zonesystem.c.
References __OMP_PARALLEL_FOR__, ch, dt_iop_buffer_dsc_t::channels, CLAMPS, d, dt_dev_pixelpipe_iop_t::data, dt_iop_module_t::dev, dt_dev_pixelpipe_iop_t::dsc_in, DT_DEV_PIXELPIPE_DISPLAY_MASK, dt_dev_pixelpipe_has_preview_output(), dt_free, dt_gaussian_blur(), dt_gaussian_free(), dt_gaussian_init(), DT_IOP_GAUSSIAN_ZERO, dt_iop_gui_enter_critical_section(), dt_iop_gui_leave_critical_section(), g, dt_develop_t::gui_attached, dt_iop_module_t::gui_data, height, dt_iop_roi_t::height, IS_NULL_PTR, k, dt_dev_pixelpipe_t::mask_display, ovoid, dt_iop_roi_t::scale, sigma, size, width, and dt_iop_roi_t::width.
Referenced by process().
|
static |
Definition at line 384 of file zonesystem.c.
References dt_free, dt_util_get_logo(), g, dt_iop_module_t::gui_data, and MIN.
Referenced by gui_init().