24 #ifndef ARM_COMPUTE_NECHANNELCOMBINEKERNEL_H 25 #define ARM_COMPUTE_NECHANNELCOMBINEKERNEL_H 42 const char *
name()
const override 44 return "NEChannelCombineKernel";
86 void combine_3C(
const Window &win);
91 void combine_4C(
const Window &win);
96 template <
bool is_yuyv>
97 void combine_YUV_1p(
const Window &win);
102 void combine_YUV_2p(
const Window &win);
107 void combine_YUV_3p(
const Window &win);
112 void copy_plane(
const Window &win, uint32_t plane_id);
119 ChannelCombineFunction _func;
120 std::array<const ITensor *, 4> _planes;
123 std::array<uint32_t, 3> _x_subsampling;
124 std::array<uint32_t, 3> _y_subsampling;
125 unsigned int _num_elems_processed_per_iteration;
126 bool _is_parallelizable;
const Window & window() const
The maximum window the kernel can be executed on.
bool is_parallelisable() const override
Indicates whether or not the kernel is parallelisable.
~NEChannelCombineKernel()=default
Default destructor.
Common interface for all kernels implemented in C++.
NEChannelCombineKernel()
Default constructor.
Interface for Neon tensor.
Copyright (c) 2017-2021 Arm Limited.
Interface for multi-planar images.
void configure(const ITensor *plane0, const ITensor *plane1, const ITensor *plane2, const ITensor *plane3, ITensor *output)
Configure function's inputs and outputs.
const char * name() const override
Name of the kernel.
NEChannelCombineKernel & operator=(const NEChannelCombineKernel &)=delete
Prevent instances of this class from being copied (As this class contains pointers) ...
ITensor IImage
Interface for CPP Images.
ScaleKernelInfo info(interpolation_policy, default_border_mode, PixelValue(), sampling_policy, false)
Information about executing thread and CPU.
Interface for the channel combine kernel.
void run(const Window &window, const ThreadInfo &info) override
Execute the kernel on the passed window.
Describe a multidimensional execution window.