Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
dt_colorspaces_endpoint_t Struct Reference

One end of a conversion: a profile, named either by identity or by handing over one this module already built for a single image. More...

#include <conversion.h>

+ Collaboration diagram for dt_colorspaces_endpoint_t:

Data Fields

dt_colorspaces_color_profile_type_t type
 Profile identity. Ignored when resolved is set, except for tracing.
 
const char * filename
 ICC file name, or "" / NULL for a built-in. Ignored when resolved is set.
 
dt_colorspaces_profile_role_t role
 Which role the identity is looked up under. Load-bearing, never a formality: DT_COLORSPACE_SRGB is registered twice and a multi-bit mask resolves to the first match in registration order, so a working profile asked for with DT_PROFILE_ROLE_ANY comes back as the input-only v4 variant. Ignored when resolved is set.
 
const struct dt_colorspaces_color_profile_tresolved
 An already-resolved, image-owned profile, or NULL to resolve type / filename from the registered list. BORROWED, not adopted – see the struct details.
 

Detailed Description

One end of a conversion: a profile, named either by identity or by handing over one this module already built for a single image.

Most endpoints are registered profiles and are named by identity – {type, filename}, the same pair every preset and conf key stores. The exception is the image-derived family (DT_COLORSPACE_EMBEDDED_ICC through DT_COLORSPACE_ALTERNATE_MATRIX, and an ICC embedded in the file being exported): those are not in the profile list and cannot be resolved by identity at all, because their matrices come from one image's own camera data. For those, resolve the image's profile first (dt_image_get_input_profile() / dt_image_get_output_profile() in imageio/imageio_profile.h) and pass the container here as resolved. The conversion borrows it: it must outlive the conversion, and the caller still frees it with dt_colorspaces_free_image_profile().

Definition at line 91 of file conversion.h.

Field Documentation

◆ filename

const char* dt_colorspaces_endpoint_t::filename

◆ resolved

const struct dt_colorspaces_color_profile_t* dt_colorspaces_endpoint_t::resolved

An already-resolved, image-owned profile, or NULL to resolve type / filename from the registered list. BORROWED, not adopted – see the struct details.

Definition at line 104 of file conversion.h.

Referenced by commit_params().

◆ role

dt_colorspaces_profile_role_t dt_colorspaces_endpoint_t::role

Which role the identity is looked up under. Load-bearing, never a formality: DT_COLORSPACE_SRGB is registered twice and a multi-bit mask resolves to the first match in registration order, so a working profile asked for with DT_PROFILE_ROLE_ANY comes back as the input-only v4 variant. Ignored when resolved is set.

Definition at line 101 of file conversion.h.

◆ type

dt_colorspaces_color_profile_type_t dt_colorspaces_endpoint_t::type

Profile identity. Ignored when resolved is set, except for tracing.

Definition at line 94 of file conversion.h.

Referenced by commit_params().


The documentation for this struct was generated from the following file: