![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include "bauhaus/bauhaus.h"#include "common/colorspaces.h"#include "common/debug.h"#include "common/math.h"#include "common/opencl.h"#include "control/control.h"#include "develop/develop.h"#include "develop/imageop.h"#include "develop/imageop_math.h"#include "develop/openmp_maths.h"#include "gui/gtk.h"#include "gui/presets.h"#include "iop/iop_api.h"#include <assert.h>#include <gtk/gtk.h>#include <inttypes.h>#include <stdlib.h>#include <string.h>
Include dependency graph for channelmixer.c:Data Structures | |
| struct | dt_iop_channelmixer_params_t |
| struct | dt_iop_channelmixer_gui_data_t |
| struct | dt_iop_channelmixer_data_t |
Typedefs | |
| typedef enum _channelmixer_output_t | _channelmixer_output_t |
| typedef enum _channelmixer_algorithm_t | _channelmixer_algorithm_t |
| typedef struct dt_iop_channelmixer_params_t | dt_iop_channelmixer_params_t |
| typedef struct dt_iop_channelmixer_gui_data_t | dt_iop_channelmixer_gui_data_t |
| typedef enum _channelmixer_operation_mode_t | _channelmixer_operation_mode_t |
| typedef struct dt_iop_channelmixer_data_t | dt_iop_channelmixer_data_t |
Enumerations | |
| enum | _channelmixer_output_t { CHANNEL_HUE = 0 , CHANNEL_SATURATION , CHANNEL_LIGHTNESS , CHANNEL_RED , CHANNEL_GREEN , CHANNEL_BLUE , CHANNEL_GRAY , CHANNEL_SIZE } |
| enum | _channelmixer_algorithm_t { CHANNEL_MIXER_VERSION_1 = 0 , CHANNEL_MIXER_VERSION_2 = 1 } |
| enum | _channelmixer_operation_mode_t { OPERATION_MODE_RGB = 0 , OPERATION_MODE_GRAY = 1 , OPERATION_MODE_HSL_V1 = 2 , OPERATION_MODE_HSL_V2 = 3 } |
Functions | |
| const char * | name () |
| const char * | deprecated_msg () |
| const char ** | description (struct dt_iop_module_t *self) |
| int | flags () |
| int | default_group () |
| int | default_colorspace (dt_iop_module_t *self, dt_dev_pixelpipe_t *pipe, const dt_dev_pixelpipe_iop_t *piece) |
| int | legacy_params (dt_iop_module_t *self, const void *const old_params, const int old_version, void *new_params, const int new_version) |
| static void | process_hsl_v1 (const dt_dev_pixelpipe_iop_t *piece, const float *const restrict in, float *const restrict out, const dt_iop_roi_t *const roi_out) |
| static void | process_hsl_v2 (const dt_dev_pixelpipe_iop_t *piece, const float *const restrict in, float *const restrict out, const dt_iop_roi_t *const roi_out) |
| static void | process_rgb (const dt_dev_pixelpipe_iop_t *piece, const float *const restrict in, float *const restrict out, const dt_iop_roi_t *const roi_out) |
| static void | process_gray (const dt_dev_pixelpipe_iop_t *piece, const float *const restrict in, float *const restrict out, const dt_iop_roi_t *const roi_out) |
| 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) |
| static void | red_callback (GtkWidget *slider, gpointer user_data) |
| static void | green_callback (GtkWidget *slider, gpointer user_data) |
| static void | blue_callback (GtkWidget *slider, gpointer user_data) |
| static void | output_callback (GtkComboBox *combo, gpointer user_data) |
| 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) |
| void | init_pipe (struct dt_iop_module_t *self, dt_dev_pixelpipe_t *pipe, dt_dev_pixelpipe_iop_t *piece) |
| void | cleanup_pipe (struct dt_iop_module_t *self, dt_dev_pixelpipe_t *pipe, dt_dev_pixelpipe_iop_t *piece) |
| void | gui_update (struct dt_iop_module_t *self) |
| void | init (dt_iop_module_t *module) |
| void | gui_init (struct dt_iop_module_t *self) |
| void | init_presets (dt_iop_module_so_t *self) |
| typedef enum _channelmixer_algorithm_t _channelmixer_algorithm_t |
| typedef enum _channelmixer_output_t _channelmixer_output_t |
Crazy presets b&w ... Film Type R G B R G B AGFA 200X 18 41 41 Ilford Pan F 33 36 31 Agfapan 25 25 39 36 Ilford SFX 36 31 33 Agfapan 100 21 40 39 Ilford XP2 Super 21 42 37 Agfapan 400 20 41 39 Kodak T-Max 100 24 37 39 Ilford Delta 100 21 42 37 Kodak T-Max 400 27 36 37 Ilford Delta 400 22 42 36 Kodak Tri-X 400 25 35 40 Ilford Delta 3200 31 36 33 Normal Contrast 43 33 30 Ilford FP4 28 41 31 High Contrast 40 34 60 Ilford HP5 23 37 40 Generic B/W 24 68 8
| typedef struct dt_iop_channelmixer_data_t dt_iop_channelmixer_data_t |
| typedef struct dt_iop_channelmixer_gui_data_t dt_iop_channelmixer_gui_data_t |
| typedef struct dt_iop_channelmixer_params_t dt_iop_channelmixer_params_t |
Crazy presets b&w ... Film Type R G B R G B AGFA 200X 18 41 41 Ilford Pan F 33 36 31 Agfapan 25 25 39 36 Ilford SFX 36 31 33 Agfapan 100 21 40 39 Ilford XP2 Super 21 42 37 Agfapan 400 20 41 39 Kodak T-Max 100 24 37 39 Ilford Delta 100 21 42 37 Kodak T-Max 400 27 36 37 Ilford Delta 400 22 42 36 Kodak Tri-X 400 25 35 40 Ilford Delta 3200 31 36 33 Normal Contrast 43 33 30 Ilford FP4 28 41 31 High Contrast 40 34 60 Ilford HP5 23 37 40 Generic B/W 24 68 8
References darktable, darktable_t::develop, dt_bauhaus_combobox_get(), dt_bauhaus_slider_get(), dt_dev_add_history_item, g, darktable_t::gui, dt_iop_module_t::gui_data, p, dt_iop_module_t::params, dt_gui_gtk_t::reset, TRUE, and value.
Referenced by gui_init().
| void cleanup_pipe | ( | struct dt_iop_module_t * | self, |
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
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 | ||
| ) |
| int default_colorspace | ( | dt_iop_module_t * | self, |
| dt_dev_pixelpipe_t * | pipe, | ||
| const dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
References IOP_CS_RGB.
| int default_group | ( | ) |
References IOP_GROUP_COLOR.
| const char * deprecated_msg | ( | ) |
| const char ** description | ( | struct dt_iop_module_t * | self | ) |
References dt_iop_set_description().
| int flags | ( | ) |
References darktable, darktable_t::develop, dt_bauhaus_combobox_get(), dt_bauhaus_slider_get(), dt_dev_add_history_item, g, darktable_t::gui, dt_iop_module_t::gui_data, p, dt_iop_module_t::params, dt_gui_gtk_t::reset, TRUE, and value.
Referenced by gui_init().
| void gui_init | ( | struct dt_iop_module_t * | self | ) |
References darktable_t::bauhaus, blue_callback(), CHANNEL_RED, darktable, dt_iop_module_t::default_params, dt_bauhaus_combobox_add(), dt_bauhaus_combobox_new(), dt_bauhaus_combobox_set(), dt_bauhaus_slider_new_with_range(), DT_BAUHAUS_SPACE, dt_bauhaus_widget_set_label(), DT_GUI_MODULE, g, green_callback(), IOP_GUI_ALLOC, output_callback(), p, red_callback(), TRUE, and dt_iop_module_t::widget.
| void gui_update | ( | struct dt_iop_module_t * | self | ) |
References dt_bauhaus_combobox_get(), dt_bauhaus_slider_set(), g, dt_iop_module_t::gui_data, p, and dt_iop_module_t::params.
| void init | ( | dt_iop_module_t * | module | ) |
| void init_pipe | ( | struct dt_iop_module_t * | self, |
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) |
References dt_dev_pixelpipe_iop_t::data, dt_dev_pixelpipe_iop_t::data_size, and dt_calloc_align().
| void init_presets | ( | dt_iop_module_so_t * | self | ) |
| int legacy_params | ( | dt_iop_module_t * | self, |
| const void *const | old_params, | ||
| const int | old_version, | ||
| void * | new_params, | ||
| const int | new_version | ||
| ) |
| const char * name | ( | ) |
|
static |
References CHANNEL_BLUE, CHANNEL_GREEN, CHANNEL_RED, darktable, dt_bauhaus_combobox_get(), dt_bauhaus_slider_set(), dt_bauhaus_slider_set_default(), g, darktable_t::gui, dt_iop_module_t::gui_data, p, dt_iop_module_t::params, and dt_gui_gtk_t::reset.
Referenced by gui_init().
| 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 | ||
| ) |
References dt_dev_pixelpipe_iop_t::data, DT_DEV_PIXELPIPE_DISPLAY_MASK, dt_iop_alpha_copy(), dt_iop_roi_t::height, dt_dev_pixelpipe_t::mask_display, dt_iop_channelmixer_data_t::operation_mode, OPERATION_MODE_GRAY, OPERATION_MODE_HSL_V1, OPERATION_MODE_HSL_V2, OPERATION_MODE_RGB, process_gray(), process_hsl_v1(), process_hsl_v2(), process_rgb(), dt_dev_pixelpipe_iop_t::roi_out, and dt_iop_roi_t::width.
|
static |
References dt_iop_buffer_dsc_t::channels, dt_dev_pixelpipe_iop_t::data, dt_dev_pixelpipe_iop_t::dsc_in, dt_iop_roi_t::height, out, dt_iop_channelmixer_data_t::rgb_matrix, and dt_iop_roi_t::width.
Referenced by process().
|
static |
References c, dt_iop_buffer_dsc_t::channels, clamp_simd(), dt_dev_pixelpipe_iop_t::data, dt_dev_pixelpipe_iop_t::dsc_in, for_each_channel, h, dt_iop_roi_t::height, hsl2rgb(), dt_iop_channelmixer_data_t::hsl_matrix, i, out, rgb, rgb2hsl(), dt_iop_channelmixer_data_t::rgb_matrix, and dt_iop_roi_t::width.
Referenced by process().
|
static |
References c, dt_iop_buffer_dsc_t::channels, clamp_simd(), dt_dev_pixelpipe_iop_t::data, dt_dev_pixelpipe_iop_t::dsc_in, for_each_channel, dt_iop_roi_t::height, hsl2rgb(), dt_iop_channelmixer_data_t::hsl_matrix, i, out, rgb, rgb2hsl(), dt_iop_channelmixer_data_t::rgb_matrix, and dt_iop_roi_t::width.
Referenced by process().
|
static |
References dt_iop_buffer_dsc_t::channels, dt_dev_pixelpipe_iop_t::data, dt_dev_pixelpipe_iop_t::dsc_in, dt_iop_roi_t::height, i, out, dt_iop_channelmixer_data_t::rgb_matrix, and dt_iop_roi_t::width.
Referenced by process().
References darktable, darktable_t::develop, dt_bauhaus_combobox_get(), dt_bauhaus_slider_get(), dt_dev_add_history_item, g, darktable_t::gui, dt_iop_module_t::gui_data, p, dt_iop_module_t::params, dt_gui_gtk_t::reset, TRUE, and value.
Referenced by gui_init().