51#define DT_IMGSZ_CH_MASK 0x000FFFF
53#define DT_IMGSZ_ROI_MASK 0x0100000
54#define DT_IMGSZ_OUTPUT 0x0000000
55#define DT_IMGSZ_INPUT 0x0100000
57#define DT_IMGSZ_PERTHREAD 0x0200000
58#define DT_IMGSZ_CLEARBUF 0x0400000
60#define DT_IMGSZ_DIM_MASK 0x00F0000
61#define DT_IMGSZ_FULL 0x0000000
62#define DT_IMGSZ_HEIGHT 0x0010000
63#define DT_IMGSZ_WIDTH 0x0020000
64#define DT_IMGSZ_LONGEST 0x0030000
69 float *
const __restrict__
out,
70 const size_t num_elem)
76#pragma omp parallel for simd default(none) \
77dt_omp_firstprivate(in, out, num_elem) \
78schedule(simd:static) aligned(in, out:64)
80 for(
size_t k = 0; k < num_elem; k++)
87void dt_iop_image_copy(
float *
const __restrict__
out,
const float *
const __restrict__ in,
const size_t nfloats);
93 const size_t width,
const size_t height,
const size_t ch)
103 const dt_iop_roi_t *
const __restrict__ roi_out,
const int zero_pad);
107 const size_t width,
const size_t height,
const size_t ch);
139 const size_t width,
const size_t height,
const size_t ch);
int width
Definition bilateral.h:1
int height
Definition bilateral.h:1
static const dt_colormatrix_t dt_aligned_pixel_t out
Definition colorspaces_inline_conversions.h:184
#define dt_pixelpipe_cache_alloc_align_float_cache(pixels, id)
Definition darktable.h:371
#define __DT_CLONE_TARGETS__
Definition darktable.h:291
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)
Definition imagebuf.c:384
int 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,...)
Definition imagebuf.c:31
static __DT_CLONE_TARGETS__ void dt_simd_memcpy(const float *const __restrict__ in, float *const __restrict__ out, const size_t num_elem)
Definition imagebuf.h:68
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)
Definition imagebuf.c:216
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)
Definition imagebuf.c:358
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)
Definition imagebuf.h:92
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)
Definition imagebuf.c:160
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)
Definition imagebuf.c:280
void dt_iop_image_invert(float *const buf, const float max_value, const size_t width, const size_t height, const size_t ch)
Definition imagebuf.c:332
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)
Definition imagebuf.c:306
static float *__restrict__ dt_iop_image_alloc(const size_t width, const size_t height, const size_t ch)
Definition imagebuf.h:36
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)
Definition imagebuf.c:254
void dt_iop_image_copy(float *const __restrict__ out, const float *const __restrict__ in, const size_t nfloats)
Definition imagebuf.c:138
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)