// Copyright (c) 2012-2017 VideoStitch SAS // Copyright (c) 2018 stitchEm #include <score/scoringProcessor.hpp> #include "../kernel.hpp" namespace { #include "scoringKernel.xxd" } INDIRECT_REGISTER_OPENCL_PROGRAM(scoringKernel, true); namespace VideoStitch { namespace Image { Status splitNoBlendImageMergerChannel(GPU::Buffer<float> dest_r, GPU::Buffer<float> dest_g, GPU::Buffer<unsigned char> dest_b, GPU::Buffer<const uint32_t> source, const unsigned width, const unsigned height, GPU::Stream stream) { auto kernel2D = GPU::Kernel::get(PROGRAM(scoringKernel), KERNEL_STR(splitNoBlendImageMergerChannelsKernel)) .setup2D(stream, width, height); return kernel2D.enqueueWithKernelArgs(dest_r.get(), dest_g.get(), dest_b.get(), source.get(), width, height); } } // namespace Image } // namespace VideoStitch