37 DCHECK_EQ(destination.stride, 0) <<
"Custom stride for float destination is not implemented.";
42 const float *window_data = render_buffers->
buffer.
data() + buffer_params.
window_x * pass_stride +
43 buffer_params.
window_y * buffer_row_stride;
45 const int pixel_stride = destination.pixel_stride ? destination.pixel_stride :
46 destination.num_components;
49 const float *buffer = window_data + y * buffer_row_stride;
50 float *pixel = destination.pixels + destination.pixel_offset +
51 (y * buffer_params.width + destination.offset) * pixel_stride;
52 func(kfilm_convert, buffer, pixel, buffer_params.window_width, pass_stride, pixel_stride);
66 const float *window_data = render_buffers->
buffer.
data() + buffer_params.
window_x * pass_stride +
67 buffer_params.
window_y * buffer_row_stride;
69 half4 *dst_start = destination.pixels_half_rgba + destination.offset;
70 const int destination_stride = destination.stride != 0 ? destination.stride :
74 const float *buffer = window_data + y * buffer_row_stride;
75 half4 *pixel = dst_start + y * destination_stride;
76 func(kfilm_convert, buffer, pixel, buffer_params.window_width, pass_stride);
void run_get_pass_kernel_processor_float(const KernelFilmConvert *kfilm_convert, const RenderBuffers *render_buffers, const BufferParams &buffer_params, const Destination &destination, const CPUKernels::FilmConvertFunction func) const
void run_get_pass_kernel_processor_half_rgba(const KernelFilmConvert *kfilm_convert, const RenderBuffers *render_buffers, const BufferParams &buffer_params, const Destination &destination, const CPUKernels::FilmConvertHalfRGBAFunction func) const