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

Go to the source code of this file.

Macros

#define DT_IMGSZ_CH_MASK   0x000FFFF
 
#define DT_IMGSZ_ROI_MASK   0x0100000
 
#define DT_IMGSZ_OUTPUT   0x0000000
 
#define DT_IMGSZ_INPUT   0x0100000
 
#define DT_IMGSZ_PERTHREAD   0x0200000
 
#define DT_IMGSZ_CLEARBUF   0x0400000
 
#define DT_IMGSZ_DIM_MASK   0x00F0000
 
#define DT_IMGSZ_FULL   0x0000000
 
#define DT_IMGSZ_HEIGHT   0x0010000
 
#define DT_IMGSZ_WIDTH   0x0020000
 
#define DT_IMGSZ_LONGEST   0x0030000
 

Functions

static float *__restrict__ dt_iop_image_alloc (const size_t width, const size_t height, const size_t ch)
 
gboolean dt_iop_alloc_image_buffers (struct dt_iop_module_t *const module, const struct dt_iop_roi_t *const roi_in, const struct dt_iop_roi_t *const roi_out,...)
 
static __DT_CLONE_TARGETS__ void dt_simd_memcpy (const float *const __restrict__ in, float *const __restrict__ out, const size_t num_elem)
 
void dt_iop_image_copy (float *const __restrict__ out, const float *const __restrict__ in, const size_t nfloats)
 
static void dt_iop_image_copy_by_size (float *const __restrict__ out, const float *const __restrict__ in, const size_t width, const size_t height, const size_t ch)
 
void dt_iop_copy_image_roi (float *const __restrict__ out, const float *const __restrict__ in, const size_t ch, const dt_iop_roi_t *const __restrict__ roi_in, const dt_iop_roi_t *const __restrict__ roi_out, const int zero_pad)
 
void dt_iop_image_scaled_copy (float *const __restrict__ buf, const float *const __restrict__ src, const float scale, const size_t width, const size_t height, const size_t ch)
 
void dt_iop_image_fill (float *const buf, const float fill_value, const size_t width, const size_t height, const size_t ch)
 
void dt_iop_image_add_const (float *const buf, const float add_value, const size_t width, const size_t height, const size_t ch)
 
void dt_iop_image_add_image (float *const buf, const float *const other_buf, const size_t width, const size_t height, const size_t ch)
 
void dt_iop_image_sub_image (float *const buf, const float *const other_buf, const size_t width, const size_t height, const size_t ch)
 
void dt_iop_image_invert (float *const buf, const float max_value, const size_t width, const size_t height, const size_t ch)
 
void dt_iop_image_mul_const (float *const buf, const float mul_value, const size_t width, const size_t height, const size_t ch)
 
void dt_iop_image_div_const (float *const buf, const float div_value, const size_t width, const size_t height, const size_t ch)
 
void dt_iop_image_linear_blend (float *const __restrict__ buf, const float lambda, const float *const __restrict__ other_buf, const size_t width, const size_t height, const size_t ch)
 

Macro Definition Documentation

◆ DT_IMGSZ_CH_MASK

#define DT_IMGSZ_CH_MASK   0x000FFFF

◆ DT_IMGSZ_CLEARBUF

#define DT_IMGSZ_CLEARBUF   0x0400000

◆ DT_IMGSZ_DIM_MASK

#define DT_IMGSZ_DIM_MASK   0x00F0000

◆ DT_IMGSZ_FULL

#define DT_IMGSZ_FULL   0x0000000

◆ DT_IMGSZ_HEIGHT

#define DT_IMGSZ_HEIGHT   0x0010000

◆ DT_IMGSZ_INPUT

#define DT_IMGSZ_INPUT   0x0100000

◆ DT_IMGSZ_LONGEST

#define DT_IMGSZ_LONGEST   0x0030000

◆ DT_IMGSZ_OUTPUT

#define DT_IMGSZ_OUTPUT   0x0000000

◆ DT_IMGSZ_PERTHREAD

#define DT_IMGSZ_PERTHREAD   0x0200000

◆ DT_IMGSZ_ROI_MASK

#define DT_IMGSZ_ROI_MASK   0x0100000

◆ DT_IMGSZ_WIDTH

#define DT_IMGSZ_WIDTH   0x0020000

Function Documentation

◆ dt_iop_alloc_image_buffers()

◆ dt_iop_copy_image_roi()

void dt_iop_copy_image_roi ( float *const __restrict__  out,
const float *const __restrict__  in,
const size_t  ch,
const dt_iop_roi_t *const __restrict__  roi_in,
const dt_iop_roi_t *const __restrict__  roi_out,
const int  zero_pad 
)

◆ dt_iop_image_add_const()

void dt_iop_image_add_const ( float *const  buf,
const float  add_value,
const size_t  width,
const size_t  height,
const size_t  ch 
)

References height, and width.

◆ dt_iop_image_add_image()

void dt_iop_image_add_image ( float *const  buf,
const float *const  other_buf,
const size_t  width,
const size_t  height,
const size_t  ch 
)

References height, and width.

Referenced by dwt_wavelet_decompose().

◆ dt_iop_image_alloc()

static float *__restrict__ dt_iop_image_alloc ( const size_t  width,
const size_t  height,
const size_t  ch 
)
inlinestatic

References dt_alloc_align_float(), height, and width.

Referenced by process(), and process_clusters().

◆ dt_iop_image_copy()

void dt_iop_image_copy ( float *const __restrict__  out,
const float *const __restrict__  in,
const size_t  nfloats 
)

◆ dt_iop_image_copy_by_size()

static void dt_iop_image_copy_by_size ( float *const __restrict__  out,
const float *const __restrict__  in,
const size_t  width,
const size_t  height,
const size_t  ch 
)
inlinestatic

◆ dt_iop_image_div_const()

void dt_iop_image_div_const ( float *const  buf,
const float  div_value,
const size_t  width,
const size_t  height,
const size_t  ch 
)

References height, and width.

◆ dt_iop_image_fill()

◆ dt_iop_image_invert()

void dt_iop_image_invert ( float *const  buf,
const float  max_value,
const size_t  width,
const size_t  height,
const size_t  ch 
)

References height, and width.

Referenced by dt_develop_blend_process().

◆ dt_iop_image_linear_blend()

void dt_iop_image_linear_blend ( float *const __restrict__  buf,
const float  lambda,
const float *const __restrict__  other_buf,
const size_t  width,
const size_t  height,
const size_t  ch 
)

◆ dt_iop_image_mul_const()

void dt_iop_image_mul_const ( float *const  buf,
const float  mul_value,
const size_t  width,
const size_t  height,
const size_t  ch 
)

◆ dt_iop_image_scaled_copy()

void dt_iop_image_scaled_copy ( float *const __restrict__  buf,
const float *const __restrict__  src,
const float  scale,
const size_t  width,
const size_t  height,
const size_t  ch 
)

◆ dt_iop_image_sub_image()

void dt_iop_image_sub_image ( float *const  buf,
const float *const  other_buf,
const size_t  width,
const size_t  height,
const size_t  ch 
)

References height, and width.

◆ dt_simd_memcpy()

static __DT_CLONE_TARGETS__ void dt_simd_memcpy ( const float *const __restrict__  in,
float *const __restrict__  out,
const size_t  num_elem 
)
inlinestatic