diff options
Diffstat (limited to 'arm_compute/runtime/NEON/functions/NEUpsampleLayer.h')
-rw-r--r-- | arm_compute/runtime/NEON/functions/NEUpsampleLayer.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/arm_compute/runtime/NEON/functions/NEUpsampleLayer.h b/arm_compute/runtime/NEON/functions/NEUpsampleLayer.h index f9145f1612..168845d203 100644 --- a/arm_compute/runtime/NEON/functions/NEUpsampleLayer.h +++ b/arm_compute/runtime/NEON/functions/NEUpsampleLayer.h @@ -24,15 +24,17 @@ #ifndef ARM_COMPUTE_NEUPSAMPLELAYER_H #define ARM_COMPUTE_NEUPSAMPLELAYER_H -#include "arm_compute/core/NEON/kernels/NEUpsampleLayerKernel.h" #include "arm_compute/core/Types.h" #include "arm_compute/runtime/IFunction.h" #include "arm_compute/runtime/NEON/NEScheduler.h" #include "arm_compute/runtime/Tensor.h" +#include <memory> + namespace arm_compute { class ITensor; +class NEUpsampleLayerKernel; /** Function to run upsample layer */ class NEUpsampleLayer : public IFunction @@ -40,6 +42,16 @@ class NEUpsampleLayer : public IFunction public: /** Constructor */ NEUpsampleLayer(); + /** Prevent instances of this class from being copied (As this class contains pointers) */ + NEUpsampleLayer(const NEUpsampleLayer &) = delete; + /** Prevent instances of this class from being copied (As this class contains pointers) */ + NEUpsampleLayer &operator=(const NEUpsampleLayer &) = delete; + /** Prevent instances of this class from being moved (As this class contains non movable objects) */ + NEUpsampleLayer(NEUpsampleLayer &&) = delete; + /** Prevent instances of this class from being moved (As this class contains non movable objects) */ + NEUpsampleLayer &operator=(NEUpsampleLayer &&) = delete; + /** Default destructor */ + ~NEUpsampleLayer(); /** Set the input output tensors. * * @param[in] input Source tensor. Data types supported: QASYMM8_SIGNED/QASYMM8/F16/F32. @@ -66,8 +78,8 @@ public: void run() override; private: - NEUpsampleLayerKernel _kernel; - DataLayout _data_layout; + std::unique_ptr<NEUpsampleLayerKernel> _kernel; + DataLayout _data_layout; }; } // arm_compute #endif /* ARM_COMPUTE_NEUPSAMPLELAYER_H */ |