Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
iop_profile.h File Reference
+ Include dependency graph for develop/iop_profile.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef enum dt_ioppr_profile_stage_t dt_ioppr_profile_stage_t
 

Enumerations

enum  dt_ioppr_profile_stage_t {
  DT_IOPPR_PROFILE_STAGE_INPUT = 0 ,
  DT_IOPPR_PROFILE_STAGE_WORK = 1 ,
  DT_IOPPR_PROFILE_STAGE_OUTPUT = 2
}
 

Functions

dt_iop_order_iccprofile_info_t * dt_ioppr_get_iop_work_profile_info (struct dt_iop_module_t *module, GList *iop_list)
 
dt_iop_order_iccprofile_info_t * dt_ioppr_get_iop_input_profile_info (struct dt_iop_module_t *module, GList *iop_list)
 
dt_iop_order_iccprofile_info_t * dt_ioppr_set_pipe_work_profile_info (struct dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, const dt_colorspaces_color_profile_type_t type, const char *filename, const int intent)
 
dt_iop_order_iccprofile_info_t * dt_ioppr_set_pipe_input_profile_info (struct dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, const dt_colorspaces_color_profile_type_t type, const char *filename, const int intent, const dt_colormatrix_t matrix_in)
 
dt_iop_order_iccprofile_info_t * dt_ioppr_set_pipe_output_profile_info (struct dt_develop_t *dev, struct dt_dev_pixelpipe_t *pipe, const dt_colorspaces_color_profile_type_t type, const char *filename, const int intent)
 
dt_iop_order_iccprofile_info_t * dt_ioppr_get_histogram_profile_info (struct dt_develop_t *dev)
 
dt_iop_order_iccprofile_info_t * dt_ioppr_get_pipe_work_profile_info (const struct dt_dev_pixelpipe_t *pipe)
 
dt_iop_order_iccprofile_info_t * dt_ioppr_get_pipe_input_profile_info (const struct dt_dev_pixelpipe_t *pipe)
 
dt_iop_order_iccprofile_info_t * dt_ioppr_get_pipe_output_profile_info (const struct dt_dev_pixelpipe_t *pipe)
 
dt_ioppr_profile_stage_t dt_ioppr_get_module_profile_stage (const struct dt_iop_module_t *module)
 Which of the pipe's input, working and output profiles applies at a module's position.
 
dt_iop_order_iccprofile_info_t * dt_ioppr_get_pipe_current_profile_info (struct dt_iop_module_t *module, const struct dt_dev_pixelpipe_t *pipe)
 
void dt_ioppr_get_work_profile_type (struct dt_develop_t *dev, dt_colorspaces_color_profile_type_t *profile_type, const char **profile_filename)
 
void dt_ioppr_get_input_profile_type (struct dt_develop_t *dev, dt_colorspaces_color_profile_type_t *profile_type, const char **profile_filename)
 
void dt_ioppr_get_export_profile_type (struct dt_develop_t *dev, dt_colorspaces_color_profile_type_t *profile_type, const char **profile_filename)
 

Typedef Documentation

◆ dt_ioppr_profile_stage_t

The profile a module's position in the pipe answers to.

Enumeration Type Documentation

◆ dt_ioppr_profile_stage_t

The profile a module's position in the pipe answers to.

Enumerator
DT_IOPPR_PROFILE_STAGE_INPUT 
DT_IOPPR_PROFILE_STAGE_WORK 
DT_IOPPR_PROFILE_STAGE_OUTPUT 

Definition at line 105 of file develop/iop_profile.h.

Function Documentation

◆ dt_ioppr_get_export_profile_type()

void dt_ioppr_get_export_profile_type ( struct dt_develop_t *  dev,
dt_colorspaces_color_profile_type_t *  profile_type,
const char **  profile_filename 
)

returns the current setting of the export profile on colorout iop

Definition at line 310 of file develop/iop_profile.c.

References DT_COLORSPACE_NONE, dt_iop_get_modules_so(), dt_develop_t::iop, and L.

◆ dt_ioppr_get_histogram_profile_info()

dt_iop_order_iccprofile_info_t * dt_ioppr_get_histogram_profile_info ( struct dt_develop_t *  dev)

returns a reference to the histogram profile info histogram profile must not be cleanup()

◆ dt_ioppr_get_input_profile_type()

void dt_ioppr_get_input_profile_type ( struct dt_develop_t *  dev,
dt_colorspaces_color_profile_type_t *  profile_type,
const char **  profile_filename 
)

returns the current setting of the input profile on colorin iop

◆ dt_ioppr_get_iop_input_profile_info()

dt_iop_order_iccprofile_info_t * dt_ioppr_get_iop_input_profile_info ( struct dt_iop_module_t *  module,
GList *  iop_list 
)

◆ dt_ioppr_get_iop_work_profile_info()

dt_iop_order_iccprofile_info_t * dt_ioppr_get_iop_work_profile_info ( struct dt_iop_module_t *  module,
GList *  iop_list 
)

returns the profile info from dev profiles info list that matches (profile_type, profile_filename) NULL if not found adds the profile info from (profile_type, profile_filename) to the dev profiles info list if not already exists returns the generated profile or the existing one returns a reference to the work profile info as set on colorin iop only if module is between colorin and colorout, otherwise returns NULL work profile must not be cleanup()

Definition at line 71 of file develop/iop_profile.c.

References DT_COLORSPACE_NONE, dt_colorspaces_add_profile(), DT_INTENT_PERCEPTUAL, dt_ioppr_get_work_profile_type(), FALSE, L, TRUE, and type.

Referenced by _area_draw_callback(), _brush_pipeline_color_from_display(), _draw_color_picker(), _signal_profile_user_changed(), _update_gradient_slider_pickers(), _working_rgb_to_display_rgb(), autoset(), color_picker_apply(), dt_develop_blendif_init_masking_profile(), dt_drawlayer_current_work_profile_key(), gui_changed(), process(), process(), process_cl(), process_fusion(), and process_lut().

◆ dt_ioppr_get_module_profile_stage()

dt_ioppr_profile_stage_t dt_ioppr_get_module_profile_stage ( const struct dt_iop_module_t *  module)

Which of the pipe's input, working and output profiles applies at a module's position.

This is the one place deciding it: dt_ioppr_get_pipe_current_profile_info() picks its profile from the answer, and anything that must agree with that choice asks here instead of comparing orders.

Parameters
moduleModule whose iop_order is placed against colorin and colorout.
Returns
The stage the module's position belongs to.

◆ dt_ioppr_get_pipe_current_profile_info()

◆ dt_ioppr_get_pipe_input_profile_info()

◆ dt_ioppr_get_pipe_output_profile_info()

◆ dt_ioppr_get_pipe_work_profile_info()

◆ dt_ioppr_get_work_profile_type()

void dt_ioppr_get_work_profile_type ( struct dt_develop_t *  dev,
dt_colorspaces_color_profile_type_t *  profile_type,
const char **  profile_filename 
)

returns the current setting of the work profile on colorin iop

Definition at line 263 of file develop/iop_profile.c.

References DT_COLORSPACE_NONE, dt_iop_get_modules_so(), dt_develop_t::iop, and L.

Referenced by commit_params(), and dt_ioppr_get_iop_work_profile_info().

◆ dt_ioppr_set_pipe_input_profile_info()

◆ dt_ioppr_set_pipe_output_profile_info()

dt_iop_order_iccprofile_info_t * dt_ioppr_set_pipe_output_profile_info ( struct dt_develop_t *  dev,
struct dt_dev_pixelpipe_t *  pipe,
const dt_colorspaces_color_profile_type_t  type,
const char *  filename,
const int  intent 
)

◆ dt_ioppr_set_pipe_work_profile_info()

dt_iop_order_iccprofile_info_t * dt_ioppr_set_pipe_work_profile_info ( struct dt_develop_t *  dev,
struct dt_dev_pixelpipe_t *  pipe,
const dt_colorspaces_color_profile_type_t  type,
const char *  filename,
const int  intent 
)

set the work profile (type, filename) on the pipe, should be called on process*() if matrix cannot be generated it default to linear rec 2020 returns the actual profile that has been set

Definition at line 114 of file develop/iop_profile.c.

References DT_COLORSPACE_LIN_REC2020, dt_colorspaces_add_profile(), IS_NULL_PTR, L, pipe, type, and dt_dev_pixelpipe_t::work_profile_info.

Referenced by commit_params().