29#pragma omp parallel for default(none) \
30 dt_omp_firstprivate(in, roi_out, roi_in) \
32 schedule(static) collapse(2)
34 for(
int j = 0; j < roi_out->
height; j++)
36 for(
int i = 0;
i < roi_out->
width;
i++)
38 for(
int c = 0;
c < 3;
c++)
40 out[(size_t)4 * ((
size_t)j * roi_out->
width +
i) +
c]
41 = in[(
size_t)((size_t)j + roi_out->
y) * roi_in->
width +
i + roi_out->
x];
48 const uint32_t filters,
const uint8_t (*
const xtrans)[6])
57 #pragma omp parallel for default(none) \
58 dt_omp_firstprivate(in, roi_out, roi_in, filters) \
66 for(
int col = 0; col < (roi_out->
width); col++)
68 const float val = in[col + roi_out->
x + ((
row + roi_out->
y) * roi_in->
width)];
69 const uint32_t offset = (size_t)4 * ((
size_t)
row * roi_out->
width + col);
70 const uint32_t ch =
FC(
row + roi_out->
y, col + roi_out->
x, filters);
72 out[offset] =
out[offset + 1] =
out[offset + 2] = 0.0f;
73 out[offset + ch] = val;
80 #pragma omp parallel for default(none) \
81 dt_omp_firstprivate(in, roi_out, roi_in, xtrans) \
89 for(
int col = 0; col < (roi_out->
width); col++)
91 const float val = in[col + roi_out->
x + ((
row + roi_out->
y) * roi_in->
width)];
92 const uint32_t offset = (size_t)4 * ((
size_t)
row * roi_out->
width + col);
93 const uint32_t ch =
FCxtrans(
row, col, roi_in, xtrans);
95 out[offset] =
out[offset + 1] =
out[offset + 2] = 0.0f;
96 out[offset + ch] = val;
const float i
Definition colorspaces_inline_conversions.h:669
const float c
Definition colorspaces_inline_conversions.h:1365
static const dt_colormatrix_t dt_aligned_pixel_t out
Definition colorspaces_inline_conversions.h:184
static const int row
Definition colorspaces_inline_conversions.h:175
static int FCxtrans(const int row, const int col, global const unsigned char(*const xtrans)[6])
Definition data/kernels/common.h:54
static int FC(const int row, const int col, const unsigned int filters)
Definition data/kernels/common.h:47
static void passthrough_color(float *out, const float *const in, dt_iop_roi_t *const roi_out, const dt_iop_roi_t *const roi_in, const uint32_t filters, const uint8_t(*const xtrans)[6])
Definition passthrough.c:47
static void passthrough_monochrome(float *out, const float *const in, dt_iop_roi_t *const roi_out, const dt_iop_roi_t *const roi_in)
Definition passthrough.c:21
int x
Definition imageop.h:68
int width
Definition imageop.h:68
int height
Definition imageop.h:68
int y
Definition imageop.h:68