diff options
Diffstat (limited to 'src/cpu/kernels/CpuCastKernel.h')
-rw-r--r-- | src/cpu/kernels/CpuCastKernel.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/cpu/kernels/CpuCastKernel.h b/src/cpu/kernels/CpuCastKernel.h index 7679178fa1..95d46fad23 100644 --- a/src/cpu/kernels/CpuCastKernel.h +++ b/src/cpu/kernels/CpuCastKernel.h @@ -39,6 +39,9 @@ namespace kernels */ class CpuCastKernel : public ICpuKernel<CpuCastKernel> { +private: + using CastKernelPtr = std::add_pointer<void(const ITensor *, ITensor *, const ThreadInfo &, ConvertPolicy, const Window &)>::type; + public: CpuCastKernel() = default; ARM_COMPUTE_DISALLOW_COPY_ALLOW_MOVE(CpuCastKernel); @@ -73,6 +76,15 @@ public: void run_op(ITensorPack &tensors, const Window &window, const ThreadInfo &info) override; const char *name() const override; + struct CastKernel + { + const char *name; + const CastDataTypeISASelectorDataPtr is_selected; + CastKernelPtr ukernel; + }; + + static const std::vector<CastKernel> &get_available_kernels(); + private: ConvertPolicy _policy{ ConvertPolicy::SATURATE }; }; |