blob: 77d6bf2f062b7477cf33906e191e8ee9c31aeb24 [file] [log] [blame]
telsoa014fcda012018-03-09 14:13:49 +00001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
David Beckecb56cd2018-09-05 12:52:57 +01003// SPDX-License-Identifier: MIT
telsoa014fcda012018-03-09 14:13:49 +00004//
5
6#pragma once
7
8#include <backends/NeonWorkloadUtils.hpp>
9
10namespace armnn
11{
12
13arm_compute::Status NeonPooling2dWorkloadValidate(const TensorInfo& input,
14 const TensorInfo& output,
15 const Pooling2dDescriptor& descriptor);
16
telsoa01c577f2c2018-08-31 09:22:23 +010017// Base class template providing an implementation of the Pooling2d layer common to all data types.
18template <armnn::DataType... dataTypes>
19class NeonPooling2dBaseWorkload : public TypedWorkload<Pooling2dQueueDescriptor, dataTypes...>
telsoa014fcda012018-03-09 14:13:49 +000020{
21public:
telsoa01c577f2c2018-08-31 09:22:23 +010022 using TypedWorkload<Pooling2dQueueDescriptor, dataTypes...>::m_Data;
telsoa014fcda012018-03-09 14:13:49 +000023
24 NeonPooling2dBaseWorkload(const Pooling2dQueueDescriptor& descriptor, const WorkloadInfo& info,
25 const std::string& name);
26
27protected:
28 mutable arm_compute::NEPoolingLayer m_PoolingLayer;
29};
30
31
32} //namespace armnn
33
34
35
36
37