Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
highlights.c File Reference
#include "widgets/bauhaus.h"
#include "common/opencl.h"
#include "control/user_message.h"
#include "develop/develop.h"
#include "develop/imageop.h"
#include "develop/imageop_gui.h"
#include "develop/imageop_math.h"
#include "develop/tiling.h"
#include <assert.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include "iop/iop_api.h"
#include "iop/highlights/clip.h"
#include "iop/highlights/common.h"
#include "iop/highlights/inpaint.h"
#include "iop/highlights/laplacian.h"
#include "iop/highlights/lch.h"
#include "iop/highlights/process.h"
#include <gtk/gtk.h>
#include <inttypes.h>
#include "widgets/label.h"
+ Include dependency graph for highlights.c:

Go to the source code of this file.

Data Structures

struct  dt_iop_highlights_gui_data_t
 

Typedefs

typedef struct dt_iop_highlights_gui_data_t dt_iop_highlights_gui_data_t
 

Functions

const char * name ()
 
const char ** description (struct dt_iop_module_t *self)
 
int default_group ()
 
int flags ()
 
int default_colorspace (dt_iop_module_t *self, dt_dev_pixelpipe_t *pipe, const dt_dev_pixelpipe_iop_t *piece)
 
void output_format (dt_iop_module_t *self, dt_dev_pixelpipe_t *pipe, dt_dev_pixelpipe_iop_t *piece, dt_iop_buffer_dsc_t *dsc)
 
void autoset (struct dt_iop_module_t *self, const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, const void *input)
 
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 _hl_count_thresholds (const int mode, const float user_clip, const dt_aligned_pixel_t pmax, const float clip, dt_aligned_pixel_t thresholds)
 
static size_t _hl_count_clipped (const dt_dev_pixelpipe_iop_t *piece, const void *const ivoid, const dt_iop_roi_t *const roi_out, const dt_aligned_pixel_t thresholds)
 
static void _hl_copy_input (const dt_dev_pixelpipe_iop_t *piece, const void *const ivoid, void *const ovoid, const dt_iop_roi_t *const roi_out)
 
static cl_int _hl_cl_visualize (dt_iop_highlights_global_data_t *gd, const int devid, cl_mem dev_in, cl_mem dev_out, const int width, const int height, const dt_iop_roi_t *const roi_out, const uint32_t filters, const dt_aligned_pixel_t clips)
 
static cl_int _hl_cl_count_clipped (dt_iop_highlights_global_data_t *gd, const int devid, cl_mem dev_in, const int width, const int height, const dt_aligned_pixel_t thresholds, const int is_raw, size_t *const clipped)
 
static cl_int _hl_cl_clip (dt_iop_highlights_global_data_t *gd, const int devid, cl_mem dev_in, cl_mem dev_out, const int width, const int height, const dt_iop_roi_t *const roi_out, const uint32_t filters, const int mode, const float clip)
 
static cl_int _hl_cl_lch_bayer (dt_iop_highlights_global_data_t *gd, const int devid, cl_mem dev_in, cl_mem dev_out, const int width, const int height, const dt_iop_roi_t *const roi_out, const uint32_t filters, const float clip)
 
static cl_int _hl_cl_lch_xtrans (dt_iop_highlights_global_data_t *gd, const int devid, cl_mem dev_in, cl_mem dev_out, const int width, const int height, const dt_iop_roi_t *const roi_out, const dt_dev_pixelpipe_iop_t *piece, const float clip)
 
int process_cl (struct dt_iop_module_t *self, const dt_dev_pixelpipe_t *pipe, const dt_dev_pixelpipe_iop_t *piece, cl_mem dev_in, cl_mem dev_out)
 
void tiling_callback (struct dt_iop_module_t *self, const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, struct dt_develop_tiling_t *tiling)
 
static const char * _highlights_mode_name (const dt_iop_highlights_mode_t mode)
 
static gboolean _highlights_mode_supported (const dt_iop_highlights_mode_t mode, const uint32_t filters)
 
__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)
 
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)
 
static gboolean _highlights_image_supported (const dt_image_t *image)
 
static gboolean enable (const dt_image_t *image)
 
gboolean force_enable (struct dt_iop_module_t *self, const gboolean current_state)
 
void init_global (dt_iop_module_so_t *module)
 
void cleanup_global (dt_iop_module_so_t *module)
 
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_changed (dt_iop_module_t *self, GtkWidget *w, void *previous)
 
void gui_update (struct dt_iop_module_t *self)
 Refresh GUI controls from current params and configuration.
 
void reload_defaults (dt_iop_module_t *module)
 
static void _visualize_callback (GtkWidget *quad, gpointer user_data)
 
void gui_focus (struct dt_iop_module_t *self, gboolean in)
 
void gui_init (struct dt_iop_module_t *self)
 

Typedef Documentation

◆ dt_iop_highlights_gui_data_t

Function Documentation

◆ _highlights_image_supported()

static gboolean _highlights_image_supported ( const dt_image_t image)
static

Definition at line 871 of file highlights.c.

References dt_image_is_monochrome(), and dt_image_is_mosaiced().

Referenced by force_enable(), and gui_update().

◆ _highlights_mode_name()

static const char * _highlights_mode_name ( const dt_iop_highlights_mode_t  mode)
static

◆ _highlights_mode_supported()

static gboolean _highlights_mode_supported ( const dt_iop_highlights_mode_t  mode,
const uint32_t  filters 
)
static

◆ _hl_cl_clip()

static cl_int _hl_cl_clip ( dt_iop_highlights_global_data_t gd,
const int  devid,
cl_mem  dev_in,
cl_mem  dev_out,
const int  width,
const int  height,
const dt_iop_roi_t *const  roi_out,
const uint32_t  filters,
const int  mode,
const float  clip 
)
static

◆ _hl_cl_count_clipped()

static cl_int _hl_cl_count_clipped ( dt_iop_highlights_global_data_t gd,
const int  devid,
cl_mem  dev_in,
const int  width,
const int  height,
const dt_aligned_pixel_t  thresholds,
const int  is_raw,
size_t *const  clipped 
)
static

◆ _hl_cl_lch_bayer()

static cl_int _hl_cl_lch_bayer ( dt_iop_highlights_global_data_t gd,
const int  devid,
cl_mem  dev_in,
cl_mem  dev_out,
const int  width,
const int  height,
const dt_iop_roi_t *const  roi_out,
const uint32_t  filters,
const float  clip 
)
static

◆ _hl_cl_lch_xtrans()

◆ _hl_cl_visualize()

static cl_int _hl_cl_visualize ( dt_iop_highlights_global_data_t gd,
const int  devid,
cl_mem  dev_in,
cl_mem  dev_out,
const int  width,
const int  height,
const dt_iop_roi_t *const  roi_out,
const uint32_t  filters,
const dt_aligned_pixel_t  clips 
)
static

◆ _hl_copy_input()

static void _hl_copy_input ( const dt_dev_pixelpipe_iop_t piece,
const void *const  ivoid,
void *const  ovoid,
const dt_iop_roi_t *const  roi_out 
)
static

◆ _hl_count_clipped()

static size_t _hl_count_clipped ( const dt_dev_pixelpipe_iop_t piece,
const void *const  ivoid,
const dt_iop_roi_t *const  roi_out,
const dt_aligned_pixel_t  thresholds 
)
static

◆ _hl_count_thresholds()

static void _hl_count_thresholds ( const int  mode,
const float  user_clip,
const dt_aligned_pixel_t  pmax,
const float  clip,
dt_aligned_pixel_t  thresholds 
)
inlinestatic

◆ _visualize_callback()

◆ autoset()

◆ cleanup_global()

void cleanup_global ( dt_iop_module_so_t module)

Definition at line 1055 of file highlights.c.

References dt_iop_module_so_t::data, dt_free, dt_opencl_free_kernel(), dt_iop_highlights_global_data_t::kernel_filmic_bspline_horizontal, dt_iop_highlights_global_data_t::kernel_filmic_bspline_horizontal_local, dt_iop_highlights_global_data_t::kernel_filmic_bspline_vertical, dt_iop_highlights_global_data_t::kernel_filmic_bspline_vertical_local, dt_iop_highlights_global_data_t::kernel_highlights_1f_clip, dt_iop_highlights_global_data_t::kernel_highlights_1f_lch_bayer, dt_iop_highlights_global_data_t::kernel_highlights_1f_lch_xtrans, dt_iop_highlights_global_data_t::kernel_highlights_4f_clip, dt_iop_highlights_global_data_t::kernel_highlights_bilinear_and_mask, dt_iop_highlights_global_data_t::kernel_highlights_bilinear_and_mask_passthrough, dt_iop_highlights_global_data_t::kernel_highlights_bilinear_and_mask_xtrans, dt_iop_highlights_global_data_t::kernel_highlights_box_blur, dt_iop_highlights_global_data_t::kernel_highlights_count_clipped, dt_iop_highlights_global_data_t::kernel_highlights_diffuse_color, dt_iop_highlights_global_data_t::kernel_highlights_false_color, dt_iop_highlights_global_data_t::kernel_highlights_guide_laplacians, dt_iop_highlights_global_data_t::kernel_highlights_normalize_reduce_first, dt_iop_highlights_global_data_t::kernel_highlights_normalize_reduce_first_passthrough, dt_iop_highlights_global_data_t::kernel_highlights_normalize_reduce_first_xtrans, dt_iop_highlights_global_data_t::kernel_highlights_normalize_reduce_second, dt_iop_highlights_global_data_t::kernel_highlights_remosaic_and_replace, dt_iop_highlights_global_data_t::kernel_highlights_remosaic_and_replace_passthrough, dt_iop_highlights_global_data_t::kernel_highlights_remosaic_and_replace_xtrans, dt_iop_highlights_global_data_t::kernel_hl_aniso_iter, dt_iop_highlights_global_data_t::kernel_hl_aniso_iter_block, dt_iop_highlights_global_data_t::kernel_hl_aniso_obs_flags, dt_iop_highlights_global_data_t::kernel_hl_aniso_obs_full, dt_iop_highlights_global_data_t::kernel_hl_aniso_prep, dt_iop_highlights_global_data_t::kernel_hl_aniso_pyr_down, dt_iop_highlights_global_data_t::kernel_hl_aniso_reassemble, dt_iop_highlights_global_data_t::kernel_hl_aniso_rhs, dt_iop_highlights_global_data_t::kernel_hl_aniso_scatter, dt_iop_highlights_global_data_t::kernel_hl_aniso_splat, dt_iop_highlights_global_data_t::kernel_hl_aniso_tensor, dt_iop_highlights_global_data_t::kernel_hl_aniso_weights, dt_iop_highlights_global_data_t::kernel_hl_box3, dt_iop_highlights_global_data_t::kernel_hl_buf_to_img, dt_iop_highlights_global_data_t::kernel_hl_cf_eval_deep, dt_iop_highlights_global_data_t::kernel_hl_cf_eval_joint, dt_iop_highlights_global_data_t::kernel_hl_cf_eval_pair, dt_iop_highlights_global_data_t::kernel_hl_cf_fit_joint, dt_iop_highlights_global_data_t::kernel_hl_cf_fit_pair, dt_iop_highlights_global_data_t::kernel_hl_cf_lref_partials, dt_iop_highlights_global_data_t::kernel_hl_cf_pack_deepmask, dt_iop_highlights_global_data_t::kernel_hl_cf_pack_joint, dt_iop_highlights_global_data_t::kernel_hl_cf_pack_pair, dt_iop_highlights_global_data_t::kernel_hl_cfa_box, dt_iop_highlights_global_data_t::kernel_hl_cfa_down, dt_iop_highlights_global_data_t::kernel_hl_cfa_gnorm, dt_iop_highlights_global_data_t::kernel_hl_cfa_grad, dt_iop_highlights_global_data_t::kernel_hl_cfa_jacobi, dt_iop_highlights_global_data_t::kernel_hl_cfa_jacobi_block, dt_iop_highlights_global_data_t::kernel_hl_cfa_steer, dt_iop_highlights_global_data_t::kernel_hl_cfa_tensor, dt_iop_highlights_global_data_t::kernel_hl_cfa_weights, dt_iop_highlights_global_data_t::kernel_hl_cg_alpha_step, dt_iop_highlights_global_data_t::kernel_hl_cg_ap, dt_iop_highlights_global_data_t::kernel_hl_cg_beta, dt_iop_highlights_global_data_t::kernel_hl_cg_beta_step, dt_iop_highlights_global_data_t::kernel_hl_cg_embed, dt_iop_highlights_global_data_t::kernel_hl_cg_fold, dt_iop_highlights_global_data_t::kernel_hl_cg_op, dt_iop_highlights_global_data_t::kernel_hl_cg_r0, dt_iop_highlights_global_data_t::kernel_hl_cg_r1, dt_iop_highlights_global_data_t::kernel_hl_cg_update, dt_iop_highlights_global_data_t::kernel_hl_cgrad_anchor, dt_iop_highlights_global_data_t::kernel_hl_cgrad_gate, dt_iop_highlights_global_data_t::kernel_hl_cgrad_guard, dt_iop_highlights_global_data_t::kernel_hl_cgrad_hole1c, dt_iop_highlights_global_data_t::kernel_hl_cgrad_plateau, dt_iop_highlights_global_data_t::kernel_hl_cgrad_reproject, dt_iop_highlights_global_data_t::kernel_hl_cgrad_share, dt_iop_highlights_global_data_t::kernel_hl_cgrad_store, dt_iop_highlights_global_data_t::kernel_hl_cgrad_write1c, dt_iop_highlights_global_data_t::kernel_hl_clip0_rehue, dt_iop_highlights_global_data_t::kernel_hl_cmean_finalize, dt_iop_highlights_global_data_t::kernel_hl_cmean_reduce, dt_iop_highlights_global_data_t::kernel_hl_core_blend, dt_iop_highlights_global_data_t::kernel_hl_core_floor, dt_iop_highlights_global_data_t::kernel_hl_dome_blend, dt_iop_highlights_global_data_t::kernel_hl_dome_down, dt_iop_highlights_global_data_t::kernel_hl_dt_cols, dt_iop_highlights_global_data_t::kernel_hl_dt_rows, dt_iop_highlights_global_data_t::kernel_hl_dt_warp, dt_iop_highlights_global_data_t::kernel_hl_fill_down, dt_iop_highlights_global_data_t::kernel_hl_fill_jacobi, dt_iop_highlights_global_data_t::kernel_hl_fill_jacobi_block, dt_iop_highlights_global_data_t::kernel_hl_fill_seed, dt_iop_highlights_global_data_t::kernel_hl_fill_seed_up, dt_iop_highlights_global_data_t::kernel_hl_fill_up, dt_iop_highlights_global_data_t::kernel_hl_grad_reduce, dt_iop_highlights_global_data_t::kernel_hl_hard_floor, dt_iop_highlights_global_data_t::kernel_hl_hf_damp, dt_iop_highlights_global_data_t::kernel_hl_hf_energy, dt_iop_highlights_global_data_t::kernel_hl_hf_eval, dt_iop_highlights_global_data_t::kernel_hl_hf_fit, dt_iop_highlights_global_data_t::kernel_hl_hf_pack, dt_iop_highlights_global_data_t::kernel_hl_knee_apply, dt_iop_highlights_global_data_t::kernel_hl_knee_apply_interp, dt_iop_highlights_global_data_t::kernel_hl_knee_bin, dt_iop_highlights_global_data_t::kernel_hl_knee_jmom, dt_iop_highlights_global_data_t::kernel_hl_knee_joint_reg, dt_iop_highlights_global_data_t::kernel_hl_knee_pair_reg, dt_iop_highlights_global_data_t::kernel_hl_knee_pmom, dt_iop_highlights_global_data_t::kernel_hl_lsb_hole, dt_iop_highlights_global_data_t::kernel_hl_mask_pack, dt_iop_highlights_global_data_t::kernel_hl_mask_to_img1, dt_iop_highlights_global_data_t::kernel_hl_need_self, dt_iop_highlights_global_data_t::kernel_hl_pde_init, dt_iop_highlights_global_data_t::kernel_hl_pde_rhs, dt_iop_highlights_global_data_t::kernel_hl_pde_scatter, dt_iop_highlights_global_data_t::kernel_hl_pyr_getc, dt_iop_highlights_global_data_t::kernel_hl_pyr_getc4, dt_iop_highlights_global_data_t::kernel_hl_pyr_project, dt_iop_highlights_global_data_t::kernel_hl_pyr_putc, dt_iop_highlights_global_data_t::kernel_hl_pyr_putc4, dt_iop_highlights_global_data_t::kernel_hl_ratio_cmean_blend, dt_iop_highlights_global_data_t::kernel_hl_ratio_plane, dt_iop_highlights_global_data_t::kernel_hl_reduce_finalize, dt_iop_highlights_global_data_t::kernel_hl_region_benefit, dt_iop_highlights_global_data_t::kernel_hl_region_gather, dt_iop_highlights_global_data_t::kernel_hl_region_scatter, dt_iop_highlights_global_data_t::kernel_hl_region_stats, dt_iop_highlights_global_data_t::kernel_hl_region_worth_finalize, dt_iop_highlights_global_data_t::kernel_hl_relu, dt_iop_highlights_global_data_t::kernel_hl_ring_vote, dt_iop_highlights_global_data_t::kernel_hl_ring_vote_finalize, dt_iop_highlights_global_data_t::kernel_hl_set_scalar, dt_iop_highlights_global_data_t::kernel_hl_soft_floor, dt_iop_highlights_global_data_t::kernel_hl_vote_reduce, dt_iop_highlights_global_data_t::kernel_hl_window_pack, dt_iop_highlights_global_data_t::kernel_hl_window_unpack, dt_iop_highlights_global_data_t::kernel_interpolate_bilinear, dt_iop_highlights_global_data_t::kernel_sparse_chol_bwd_level, dt_iop_highlights_global_data_t::kernel_sparse_chol_final_level, dt_iop_highlights_global_data_t::kernel_sparse_chol_fwd_level, and dt_iop_highlights_global_data_t::kernel_sparse_chol_update_level.

◆ cleanup_pipe()

void cleanup_pipe ( struct dt_iop_module_t self,
dt_dev_pixelpipe_t pipe,
dt_dev_pixelpipe_iop_t piece 
)

Definition at line 1207 of file highlights.c.

References dt_dev_pixelpipe_iop_t::data, and dt_free_align.

◆ commit_params()

◆ default_colorspace()

int default_colorspace ( dt_iop_module_t self,
dt_dev_pixelpipe_t pipe,
const dt_dev_pixelpipe_iop_t piece 
)

◆ default_group()

int default_group ( )

Definition at line 117 of file highlights.c.

References IOP_GROUP_REPAIR.

◆ description()

const char ** description ( struct dt_iop_module_t self)

Definition at line 110 of file highlights.c.

References dt_iop_set_description().

◆ enable()

◆ flags()

int flags ( )

Definition at line 122 of file highlights.c.

References IOP_FLAGS_ALLOW_TILING, and IOP_FLAGS_SUPPORTS_BLENDING.

◆ force_enable()

gboolean force_enable ( struct dt_iop_module_t self,
const gboolean  current_state 
)

◆ gui_changed()

◆ gui_focus()

void gui_focus ( struct dt_iop_module_t self,
gboolean  in 
)

◆ gui_init()

◆ gui_update()

◆ init_global()

void init_global ( dt_iop_module_so_t module)

Definition at line 898 of file highlights.c.

References dt_opencl_create_kernel(), dt_iop_highlights_global_data_t::kernel_filmic_bspline_horizontal, dt_iop_highlights_global_data_t::kernel_filmic_bspline_horizontal_local, dt_iop_highlights_global_data_t::kernel_filmic_bspline_vertical, dt_iop_highlights_global_data_t::kernel_filmic_bspline_vertical_local, dt_iop_highlights_global_data_t::kernel_highlights_1f_clip, dt_iop_highlights_global_data_t::kernel_highlights_1f_lch_bayer, dt_iop_highlights_global_data_t::kernel_highlights_1f_lch_xtrans, dt_iop_highlights_global_data_t::kernel_highlights_4f_clip, dt_iop_highlights_global_data_t::kernel_highlights_bilinear_and_mask, dt_iop_highlights_global_data_t::kernel_highlights_bilinear_and_mask_passthrough, dt_iop_highlights_global_data_t::kernel_highlights_bilinear_and_mask_xtrans, dt_iop_highlights_global_data_t::kernel_highlights_box_blur, dt_iop_highlights_global_data_t::kernel_highlights_count_clipped, dt_iop_highlights_global_data_t::kernel_highlights_diffuse_color, dt_iop_highlights_global_data_t::kernel_highlights_false_color, dt_iop_highlights_global_data_t::kernel_highlights_guide_laplacians, dt_iop_highlights_global_data_t::kernel_highlights_normalize_reduce_first, dt_iop_highlights_global_data_t::kernel_highlights_normalize_reduce_first_passthrough, dt_iop_highlights_global_data_t::kernel_highlights_normalize_reduce_first_xtrans, dt_iop_highlights_global_data_t::kernel_highlights_normalize_reduce_second, dt_iop_highlights_global_data_t::kernel_highlights_remosaic_and_replace, dt_iop_highlights_global_data_t::kernel_highlights_remosaic_and_replace_passthrough, dt_iop_highlights_global_data_t::kernel_highlights_remosaic_and_replace_xtrans, dt_iop_highlights_global_data_t::kernel_hl_aniso_iter, dt_iop_highlights_global_data_t::kernel_hl_aniso_iter_block, dt_iop_highlights_global_data_t::kernel_hl_aniso_obs_flags, dt_iop_highlights_global_data_t::kernel_hl_aniso_obs_full, dt_iop_highlights_global_data_t::kernel_hl_aniso_prep, dt_iop_highlights_global_data_t::kernel_hl_aniso_pyr_down, dt_iop_highlights_global_data_t::kernel_hl_aniso_reassemble, dt_iop_highlights_global_data_t::kernel_hl_aniso_rhs, dt_iop_highlights_global_data_t::kernel_hl_aniso_scatter, dt_iop_highlights_global_data_t::kernel_hl_aniso_splat, dt_iop_highlights_global_data_t::kernel_hl_aniso_tensor, dt_iop_highlights_global_data_t::kernel_hl_aniso_weights, dt_iop_highlights_global_data_t::kernel_hl_box3, dt_iop_highlights_global_data_t::kernel_hl_buf_to_img, dt_iop_highlights_global_data_t::kernel_hl_cf_eval_deep, dt_iop_highlights_global_data_t::kernel_hl_cf_eval_joint, dt_iop_highlights_global_data_t::kernel_hl_cf_eval_pair, dt_iop_highlights_global_data_t::kernel_hl_cf_fit_joint, dt_iop_highlights_global_data_t::kernel_hl_cf_fit_pair, dt_iop_highlights_global_data_t::kernel_hl_cf_lref_partials, dt_iop_highlights_global_data_t::kernel_hl_cf_pack_deepmask, dt_iop_highlights_global_data_t::kernel_hl_cf_pack_joint, dt_iop_highlights_global_data_t::kernel_hl_cf_pack_pair, dt_iop_highlights_global_data_t::kernel_hl_cfa_box, dt_iop_highlights_global_data_t::kernel_hl_cfa_down, dt_iop_highlights_global_data_t::kernel_hl_cfa_gnorm, dt_iop_highlights_global_data_t::kernel_hl_cfa_grad, dt_iop_highlights_global_data_t::kernel_hl_cfa_jacobi, dt_iop_highlights_global_data_t::kernel_hl_cfa_jacobi_block, dt_iop_highlights_global_data_t::kernel_hl_cfa_steer, dt_iop_highlights_global_data_t::kernel_hl_cfa_tensor, dt_iop_highlights_global_data_t::kernel_hl_cfa_weights, dt_iop_highlights_global_data_t::kernel_hl_cg_alpha_step, dt_iop_highlights_global_data_t::kernel_hl_cg_ap, dt_iop_highlights_global_data_t::kernel_hl_cg_beta, dt_iop_highlights_global_data_t::kernel_hl_cg_beta_step, dt_iop_highlights_global_data_t::kernel_hl_cg_embed, dt_iop_highlights_global_data_t::kernel_hl_cg_fold, dt_iop_highlights_global_data_t::kernel_hl_cg_op, dt_iop_highlights_global_data_t::kernel_hl_cg_r0, dt_iop_highlights_global_data_t::kernel_hl_cg_r1, dt_iop_highlights_global_data_t::kernel_hl_cg_update, dt_iop_highlights_global_data_t::kernel_hl_cgrad_anchor, dt_iop_highlights_global_data_t::kernel_hl_cgrad_gate, dt_iop_highlights_global_data_t::kernel_hl_cgrad_guard, dt_iop_highlights_global_data_t::kernel_hl_cgrad_hole1c, dt_iop_highlights_global_data_t::kernel_hl_cgrad_plateau, dt_iop_highlights_global_data_t::kernel_hl_cgrad_reproject, dt_iop_highlights_global_data_t::kernel_hl_cgrad_share, dt_iop_highlights_global_data_t::kernel_hl_cgrad_store, dt_iop_highlights_global_data_t::kernel_hl_cgrad_write1c, dt_iop_highlights_global_data_t::kernel_hl_clip0_rehue, dt_iop_highlights_global_data_t::kernel_hl_cmean_finalize, dt_iop_highlights_global_data_t::kernel_hl_cmean_reduce, dt_iop_highlights_global_data_t::kernel_hl_core_blend, dt_iop_highlights_global_data_t::kernel_hl_core_floor, dt_iop_highlights_global_data_t::kernel_hl_dome_blend, dt_iop_highlights_global_data_t::kernel_hl_dome_down, dt_iop_highlights_global_data_t::kernel_hl_dt_cols, dt_iop_highlights_global_data_t::kernel_hl_dt_rows, dt_iop_highlights_global_data_t::kernel_hl_dt_warp, dt_iop_highlights_global_data_t::kernel_hl_fill_down, dt_iop_highlights_global_data_t::kernel_hl_fill_jacobi, dt_iop_highlights_global_data_t::kernel_hl_fill_jacobi_block, dt_iop_highlights_global_data_t::kernel_hl_fill_seed, dt_iop_highlights_global_data_t::kernel_hl_fill_seed_up, dt_iop_highlights_global_data_t::kernel_hl_fill_up, dt_iop_highlights_global_data_t::kernel_hl_grad_reduce, dt_iop_highlights_global_data_t::kernel_hl_hard_floor, dt_iop_highlights_global_data_t::kernel_hl_hf_damp, dt_iop_highlights_global_data_t::kernel_hl_hf_energy, dt_iop_highlights_global_data_t::kernel_hl_hf_eval, dt_iop_highlights_global_data_t::kernel_hl_hf_fit, dt_iop_highlights_global_data_t::kernel_hl_hf_pack, dt_iop_highlights_global_data_t::kernel_hl_knee_apply, dt_iop_highlights_global_data_t::kernel_hl_knee_apply_interp, dt_iop_highlights_global_data_t::kernel_hl_knee_bin, dt_iop_highlights_global_data_t::kernel_hl_knee_jmom, dt_iop_highlights_global_data_t::kernel_hl_knee_joint_reg, dt_iop_highlights_global_data_t::kernel_hl_knee_pair_reg, dt_iop_highlights_global_data_t::kernel_hl_knee_pmom, dt_iop_highlights_global_data_t::kernel_hl_lsb_hole, dt_iop_highlights_global_data_t::kernel_hl_mask_pack, dt_iop_highlights_global_data_t::kernel_hl_mask_to_img1, dt_iop_highlights_global_data_t::kernel_hl_need_self, dt_iop_highlights_global_data_t::kernel_hl_pde_init, dt_iop_highlights_global_data_t::kernel_hl_pde_rhs, dt_iop_highlights_global_data_t::kernel_hl_pde_scatter, dt_iop_highlights_global_data_t::kernel_hl_pyr_getc, dt_iop_highlights_global_data_t::kernel_hl_pyr_getc4, dt_iop_highlights_global_data_t::kernel_hl_pyr_project, dt_iop_highlights_global_data_t::kernel_hl_pyr_putc, dt_iop_highlights_global_data_t::kernel_hl_pyr_putc4, dt_iop_highlights_global_data_t::kernel_hl_ratio_cmean_blend, dt_iop_highlights_global_data_t::kernel_hl_ratio_plane, dt_iop_highlights_global_data_t::kernel_hl_reduce_finalize, dt_iop_highlights_global_data_t::kernel_hl_region_benefit, dt_iop_highlights_global_data_t::kernel_hl_region_gather, dt_iop_highlights_global_data_t::kernel_hl_region_scatter, dt_iop_highlights_global_data_t::kernel_hl_region_stats, dt_iop_highlights_global_data_t::kernel_hl_region_worth_finalize, dt_iop_highlights_global_data_t::kernel_hl_relu, dt_iop_highlights_global_data_t::kernel_hl_ring_vote, dt_iop_highlights_global_data_t::kernel_hl_ring_vote_finalize, dt_iop_highlights_global_data_t::kernel_hl_set_scalar, dt_iop_highlights_global_data_t::kernel_hl_soft_floor, dt_iop_highlights_global_data_t::kernel_hl_vote_reduce, dt_iop_highlights_global_data_t::kernel_hl_window_pack, dt_iop_highlights_global_data_t::kernel_hl_window_unpack, dt_iop_highlights_global_data_t::kernel_interpolate_bilinear, dt_iop_highlights_global_data_t::kernel_sparse_chol_bwd_level, dt_iop_highlights_global_data_t::kernel_sparse_chol_final_level, dt_iop_highlights_global_data_t::kernel_sparse_chol_fwd_level, and dt_iop_highlights_global_data_t::kernel_sparse_chol_update_level.

◆ init_pipe()

void init_pipe ( struct dt_iop_module_t self,
dt_dev_pixelpipe_t pipe,
dt_dev_pixelpipe_iop_t piece 
)

◆ legacy_params()

int legacy_params ( dt_iop_module_t self,
const void *const  old_params,
const int  old_version,
void new_params,
const int  new_version 
)

◆ name()

const char * name ( )

Definition at line 105 of file highlights.c.

◆ output_format()

void output_format ( dt_iop_module_t self,
dt_dev_pixelpipe_t pipe,
dt_dev_pixelpipe_iop_t piece,
dt_iop_buffer_dsc_t dsc 
)

Definition at line 133 of file highlights.c.

References default_output_format().

◆ process()

◆ process_cl()

◆ reload_defaults()

◆ tiling_callback()