Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
blendif_lab.c File Reference
+ Include dependency graph for blendif_lab.c:

Macros

#define DT_BLENDIF_LAB_CH   4
 
#define DT_BLENDIF_LAB_BCH   3
 

Typedefs

typedef void() _blend_row_func(const float *const restrict a, const float *const restrict b, float *const restrict out, const float *const restrict mask, const size_t stride, const dt_aligned_pixel_t min, const dt_aligned_pixel_t max)
 

Functions

static float _CLAMP (const float x, const float min, const float max)
 
static void _CLAMP_XYZ (dt_aligned_pixel_t XYZ, const dt_aligned_pixel_t min, const dt_aligned_pixel_t max)
 
static float _blendif_compute_factor (const float value, const unsigned int invert_mask, const float *const restrict parameters)
 
 __OMP_DECLARE_SIMD__ (aligned(pixels:16) uniform(parameters, invert_mask, stride))
 
 __OMP_DECLARE_SIMD__ (aligned(pixels, invert_mask:16) uniform(parameters, invert_mask, stride))
 
 __OMP_DECLARE_SIMD__ (aligned(pixels:16) uniform(stride, blendif, parameters))
 
void dt_develop_blendif_lab_make_mask (const struct dt_dev_pixelpipe_iop_t *piece, const float *const restrict a, const float *const restrict b, float *const restrict mask)
 
static void _blend_Lab_scale (const float *i, float *o)
 
static void _blend_Lab_rescale (const float *i, float *o)
 
 __OMP_DECLARE_SIMD__ (aligned(a, b, out, min, max:16) uniform(stride, min, max))
 
static _blend_row_func_choose_blend_func (const unsigned int blend_mode)
 
static void _display_channel_value (dt_aligned_pixel_t out, const float value, const float mask)
 
 __OMP_DECLARE_SIMD__ (aligned(a, b:16) uniform(channel, stride))
 
 __OMP_DECLARE_SIMD__ (aligned(a, b:16) uniform(stride))
 
void dt_develop_blendif_lab_blend (const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, const float *const a, float *const b, const float *const restrict mask, const dt_dev_pixelpipe_display_mask_t request_mask_display)
 

Macro Definition Documentation

◆ DT_BLENDIF_LAB_BCH

#define DT_BLENDIF_LAB_BCH   3

◆ DT_BLENDIF_LAB_CH

#define DT_BLENDIF_LAB_CH   4

Typedef Documentation

◆ _blend_row_func

typedef void() _blend_row_func(const float *const restrict a, const float *const restrict b, float *const restrict out, const float *const restrict mask, const size_t stride, const dt_aligned_pixel_t min, const dt_aligned_pixel_t max)

Function Documentation

◆ __OMP_DECLARE_SIMD__() [1/6]

__OMP_DECLARE_SIMD__ ( aligned(a, b, out, min, max:16) uniform(stride, min, max )

◆ __OMP_DECLARE_SIMD__() [2/6]

◆ __OMP_DECLARE_SIMD__() [3/6]

__OMP_DECLARE_SIMD__ ( aligned(a, b:16) uniform(stride)  )

◆ __OMP_DECLARE_SIMD__() [4/6]

__OMP_DECLARE_SIMD__ ( aligned(pixels, invert_mask:16) uniform(parameters, invert_mask, stride)  )

◆ __OMP_DECLARE_SIMD__() [5/6]

__OMP_DECLARE_SIMD__ ( aligned(pixels:16) uniform(parameters, invert_mask, stride)  )

◆ __OMP_DECLARE_SIMD__() [6/6]

__OMP_DECLARE_SIMD__ ( aligned(pixels:16) uniform(stride, blendif, parameters)  )

◆ _blend_Lab_rescale()

static void _blend_Lab_rescale ( const float *  i,
float *  o 
)
inlinestatic

References for_each_channel, and i.

Referenced by __OMP_DECLARE_SIMD__().

◆ _blend_Lab_scale()

static void _blend_Lab_scale ( const float *  i,
float *  o 
)
inlinestatic

References for_each_channel, and i.

Referenced by __OMP_DECLARE_SIMD__().

◆ _blendif_compute_factor()

static float _blendif_compute_factor ( const float  value,
const unsigned int  invert_mask,
const float *const restrict  parameters 
)
inlinestatic

References factor, and value.

Referenced by __OMP_DECLARE_SIMD__(), and __OMP_DECLARE_SIMD__().

◆ _choose_blend_func()

◆ _CLAMP()

static float _CLAMP ( const float  x,
const float  min,
const float  max 
)
inlinestatic

References max, min, and x.

Referenced by __OMP_DECLARE_SIMD__().

◆ _CLAMP_XYZ()

static void _CLAMP_XYZ ( dt_aligned_pixel_t  XYZ,
const dt_aligned_pixel_t  min,
const dt_aligned_pixel_t  max 
)
inlinestatic

References for_each_channel, i, max, min, and XYZ.

◆ _display_channel_value()

static void _display_channel_value ( dt_aligned_pixel_t  out,
const float  value,
const float  mask 
)
inlinestatic

References out, and value.

Referenced by __OMP_DECLARE_SIMD__().

◆ dt_develop_blendif_lab_blend()

◆ dt_develop_blendif_lab_make_mask()