12#pragma omp parallel for default(none) \
13 dt_omp_firstprivate(in, roi_out, roi_in) \
15 schedule(static) collapse(2)
17 for(
int j = 0; j < roi_out->
height; j++)
19 for(
int i = 0; i < roi_out->
width; i++)
21 for(
int c = 0; c < 3; c++)
23 out[(size_t)4 * ((
size_t)j * roi_out->
width + i) + c]
24 = in[(
size_t)((size_t)j + roi_out->
y) * roi_in->
width + i + roi_out->
x];
31 const uint32_t filters,
const uint8_t (*
const xtrans)[6])
40 #pragma omp parallel for default(none) \
41 dt_omp_firstprivate(in, roi_out, roi_in, filters) \
47 for(
int row = 0; row < (roi_out->
height); row++)
49 for(
int col = 0; col < (roi_out->
width); col++)
51 const float val = in[col + roi_out->
x + ((row + roi_out->
y) * roi_in->
width)];
52 const uint32_t offset = (size_t)4 * ((
size_t)row * roi_out->
width + col);
53 const uint32_t ch =
FC(row + roi_out->
y, col + roi_out->
x, filters);
55 out[offset] = out[offset + 1] = out[offset + 2] = 0.0f;
56 out[offset + ch] = val;
63 #pragma omp parallel for default(none) \
64 dt_omp_firstprivate(in, roi_out, roi_in, xtrans) \
70 for(
int row = 0; row < (roi_out->
height); row++)
72 for(
int col = 0; col < (roi_out->
width); col++)
74 const float val = in[col + roi_out->
x + ((row + roi_out->
y) * roi_in->
width)];
75 const uint32_t offset = (size_t)4 * ((
size_t)row * roi_out->
width + col);
76 const uint32_t ch =
FCxtrans(row, col, roi_in, xtrans);
78 out[offset] = out[offset + 1] = out[offset + 2] = 0.0f;
79 out[offset + ch] = val;
static int FCxtrans(const int row, const int col, global const unsigned char(*const xtrans)[6])
Definition data/kernels/common.h:50
static int FC(const int row, const int col, const unsigned int filters)
Definition data/kernels/common.h:43
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:30
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:4
int x
Definition imageop.h:33
int width
Definition imageop.h:33
int height
Definition imageop.h:33
int y
Definition imageop.h:33