aboutsummaryrefslogtreecommitdiff
path: root/arm_compute/runtime/CL/functions/CLWinogradConvolutionLayer.h
diff options
context:
space:
mode:
authorGeorgios Pinitas <georgios.pinitas@arm.com>2018-05-02 14:07:55 +0100
committerAnthony Barbier <anthony.barbier@arm.com>2018-11-02 16:51:17 +0000
commite043767d068da389308507011d944e6db9e4d676 (patch)
tree30c8965d8d03d141c7630420c6e945f78485efc7 /arm_compute/runtime/CL/functions/CLWinogradConvolutionLayer.h
parent019634f8befde24b19bae9b749e75a9f3ae44801 (diff)
downloadComputeLibrary-e043767d068da389308507011d944e6db9e4d676.tar.gz
COMPMID-920: Introduce prepare() stage
Change-Id: I08ddb7f6e061178e7566518b48e4e18f8f078596 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/129825 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Diffstat (limited to 'arm_compute/runtime/CL/functions/CLWinogradConvolutionLayer.h')
-rw-r--r--arm_compute/runtime/CL/functions/CLWinogradConvolutionLayer.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/arm_compute/runtime/CL/functions/CLWinogradConvolutionLayer.h b/arm_compute/runtime/CL/functions/CLWinogradConvolutionLayer.h
index a27976959c..594d6028e1 100644
--- a/arm_compute/runtime/CL/functions/CLWinogradConvolutionLayer.h
+++ b/arm_compute/runtime/CL/functions/CLWinogradConvolutionLayer.h
@@ -49,6 +49,14 @@ class CLWinogradConvolutionLayer : public IFunction
public:
/** Default constructor */
CLWinogradConvolutionLayer(std::shared_ptr<IMemoryManager> memory_manager = nullptr);
+ /** Prevent instances of this class from being copied (As this class contains pointers) */
+ CLWinogradConvolutionLayer(const CLWinogradConvolutionLayer &) = delete;
+ /** Default move constructor */
+ CLWinogradConvolutionLayer(CLWinogradConvolutionLayer &&) = default;
+ /** Prevent instances of this class from being copied (As this class contains pointers) */
+ CLWinogradConvolutionLayer &operator=(const CLWinogradConvolutionLayer &) = delete;
+ /** Default move assignment operator */
+ CLWinogradConvolutionLayer &operator=(CLWinogradConvolutionLayer &&) = default;
/** Set the input and output tensors.
*
* @note: This function only works with 3x3 and 5x5 kernels along with unit strides
@@ -92,6 +100,7 @@ public:
// Inherited methods overridden:
void run() override;
+ void prepare() override;
private:
CLMemoryGroup _memory_group;
@@ -103,7 +112,8 @@ private:
CLTensor _input0;
CLTensor _input1;
CLTensor _batched_mm_output;
- bool _is_first_run;
+ const ICLTensor *_original_weights;
+ bool _is_prepared;
bool _is_activationlayer_enabled;
};
}