From 494b97a8297c18d0d610a54189c8f848e2cf5446 Mon Sep 17 00:00:00 2001 From: Georgios Pinitas Date: Mon, 17 May 2021 02:42:04 +0100 Subject: Port CLFlattenLayer to a memory injecting interface Resolves: COMPMID-4502 Signed-off-by: Georgios Pinitas Change-Id: I00621a772135f65a92aa70e6a19dd5f743915378 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/5649 Tested-by: Arm Jenkins Reviewed-by: Michalis Spyrou Comments-Addressed: Arm Jenkins --- arm_compute/runtime/CL/functions/CLFlattenLayer.h | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) (limited to 'arm_compute/runtime/CL/functions/CLFlattenLayer.h') diff --git a/arm_compute/runtime/CL/functions/CLFlattenLayer.h b/arm_compute/runtime/CL/functions/CLFlattenLayer.h index d2c37b1c22..182e97dc67 100644 --- a/arm_compute/runtime/CL/functions/CLFlattenLayer.h +++ b/arm_compute/runtime/CL/functions/CLFlattenLayer.h @@ -25,23 +25,30 @@ #define ARM_COMPUTE_CLFLATTENLAYER_H #include "arm_compute/core/Types.h" -#include "arm_compute/runtime/CL/functions/CLReshapeLayer.h" #include "arm_compute/runtime/IFunction.h" +#include namespace arm_compute { class CLCompileContext; class ICLTensor; class ITensorInfo; -/** Basic function to execute flatten. This function calls the following OpenCL kernel: -* -* -# @ref CLReshapeLayer -* -*/ +/** Basic function to execute flatten */ class CLFlattenLayer : public IFunction { public: + CLFlattenLayer(); + /** Destructor */ + ~CLFlattenLayer(); + /** Prevent instances of this class from being copied (As this class contains pointers) */ + CLFlattenLayer(const CLFlattenLayer &) = delete; + /** Default move constructor */ + CLFlattenLayer(CLFlattenLayer &&); + /** Prevent instances of this class from being copied (As this class contains pointers) */ + CLFlattenLayer &operator=(const CLFlattenLayer &) = delete; + /** Default move assignment operator */ + CLFlattenLayer &operator=(CLFlattenLayer &&); /** Initialise the kernel's input and output. * * Valid data layouts: @@ -82,7 +89,8 @@ public: void run() override; private: - CLReshapeLayer _reshape{}; + struct Impl; + std::unique_ptr _impl; }; } // namespace arm_compute -- cgit v1.2.1