diff options
Diffstat (limited to 'arm_compute/runtime/NEON')
-rw-r--r-- | arm_compute/runtime/NEON/INESimpleFunctionNoBorder.h | 19 | ||||
-rw-r--r-- | arm_compute/runtime/NEON/functions/NEActivationLayer.h | 14 |
2 files changed, 30 insertions, 3 deletions
diff --git a/arm_compute/runtime/NEON/INESimpleFunctionNoBorder.h b/arm_compute/runtime/NEON/INESimpleFunctionNoBorder.h index 6765b5f937..d0c3a9beb5 100644 --- a/arm_compute/runtime/NEON/INESimpleFunctionNoBorder.h +++ b/arm_compute/runtime/NEON/INESimpleFunctionNoBorder.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 ARM Limited. + * Copyright (c) 2018-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -26,6 +26,7 @@ #include "arm_compute/core/NEON/INEKernel.h" #include "arm_compute/runtime/IFunction.h" +#include "arm_compute/runtime/IRuntimeContext.h" #include <memory> @@ -35,14 +36,26 @@ namespace arm_compute class INESimpleFunctionNoBorder : public IFunction { public: - /** Constructor */ - INESimpleFunctionNoBorder(); + /** Constructor + * + * @param[in] ctx Runtime context to be used by the function + */ + INESimpleFunctionNoBorder(IRuntimeContext *ctx = nullptr); + /** Prevent instances of this class from being copied (As this class contains pointers) */ + INESimpleFunctionNoBorder(const INESimpleFunctionNoBorder &) = delete; + /** Default move constructor */ + INESimpleFunctionNoBorder(INESimpleFunctionNoBorder &&) = default; + /** Prevent instances of this class from being copied (As this class contains pointers) */ + INESimpleFunctionNoBorder &operator=(const INESimpleFunctionNoBorder &) = delete; + /** Default move assignment operator */ + INESimpleFunctionNoBorder &operator=(INESimpleFunctionNoBorder &&) = default; // Inherited methods overridden: void run() override final; protected: std::unique_ptr<INEKernel> _kernel; /**< Kernel to run */ + IRuntimeContext *_ctx; /**< Context to use */ }; } // namespace arm_compute #endif /*__ARM_COMPUTE_INESIMPLEFUNCTIONNOBORDER_H__ */ diff --git a/arm_compute/runtime/NEON/functions/NEActivationLayer.h b/arm_compute/runtime/NEON/functions/NEActivationLayer.h index c0b5f7ab37..d383da4f32 100644 --- a/arm_compute/runtime/NEON/functions/NEActivationLayer.h +++ b/arm_compute/runtime/NEON/functions/NEActivationLayer.h @@ -30,6 +30,7 @@ namespace arm_compute { +// Forward declarations class ITensor; /** Basic function to run @ref NEActivationLayerKernel @@ -39,6 +40,19 @@ class ITensor; class NEActivationLayer : public INESimpleFunctionNoBorder { public: + /** Constructor + * + * @param[in] ctx Runtime context to be used by the function + */ + NEActivationLayer(IRuntimeContext *ctx = nullptr); + /** Prevent instances of this class from being copied (As this class contains pointers) */ + NEActivationLayer(const NEActivationLayer &) = delete; + /** Default move constructor */ + NEActivationLayer(NEActivationLayer &&) = default; + /** Prevent instances of this class from being copied (As this class contains pointers) */ + NEActivationLayer &operator=(const NEActivationLayer &) = delete; + /** Default move assignment operator */ + NEActivationLayer &operator=(NEActivationLayer &&) = default; /** Set the input and output tensor. * * @note If the output tensor is a nullptr or is equal to the input, the activation function will be performed in-place |