Release 18.08
[platform/upstream/armnn.git] / src / armnn / backends / NeonWorkloads / NeonNormalizationFloat32Workload.hpp
1 //
2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // See LICENSE file in the project root for full license information.
4 //
5
6 #pragma once
7
8 #include <backends/NeonWorkloadUtils.hpp>
9
10 #include "arm_compute/runtime/MemoryManagerOnDemand.h"
11
12 namespace armnn
13 {
14
15 arm_compute::Status NeonNormalizationWorkloadValidate(const TensorInfo& input,
16                                                       const TensorInfo& output,
17                                                       const NormalizationDescriptor& descriptor);
18
19 class NeonNormalizationFloat32Workload : public FloatWorkload<NormalizationQueueDescriptor>
20 {
21 public:
22     NeonNormalizationFloat32Workload(const NormalizationQueueDescriptor& descriptor, const WorkloadInfo& info,
23                                      std::shared_ptr<arm_compute::MemoryManagerOnDemand>& memoryManager);
24     virtual void Execute() const override;
25
26 private:
27     mutable arm_compute::NENormalizationLayer m_NormalizationLayer;
28 };
29
30 } //namespace armnn
31
32
33
34