blob: dbe5f6f163bd8e471bd743b28d6d32b6dc5e0768 [file] [log] [blame]
telsoa014fcda012018-03-09 14:13:49 +00001//
Teresa Charlin588cbdf2022-01-19 15:55:37 +00002// Copyright © 2017 Arm Ltd and Contributors. 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
Colm Donelan0c479742021-12-10 12:43:54 +00008#include <armnn/backends/Workload.hpp>
Matthew Bentham14e46692018-09-20 15:35:30 +01009
Matthew Bentham9b3e7382020-02-05 21:39:55 +000010#include <arm_compute/runtime/CL/functions/CLFloor.h>
telsoa014fcda012018-03-09 14:13:49 +000011
12namespace armnn
13{
14
Sadik Armagan9be49162019-10-30 16:15:26 +000015arm_compute::Status ClFloorWorkloadValidate(const TensorInfo& input,
16 const TensorInfo& output);
17
arovir019e53a352018-08-31 15:26:35 +010018class ClFloorFloatWorkload : public FloatWorkload<FloorQueueDescriptor>
telsoa014fcda012018-03-09 14:13:49 +000019{
20public:
Sadik Armagane9444752020-12-02 11:28:58 +000021 ClFloorFloatWorkload(const FloorQueueDescriptor& descriptor,
22 const WorkloadInfo& info,
23 const arm_compute::CLCompileContext& clCompileContext);
telsoa014fcda012018-03-09 14:13:49 +000024
25 void Execute() const override;
David Monahanec819992022-02-10 14:47:13 +000026 // Replace input tensor handle with the given TensorHandle
27 void ReplaceInputTensorHandle(ITensorHandle* tensorHandle, unsigned int slot) override;
telsoa014fcda012018-03-09 14:13:49 +000028
David Monahanec819992022-02-10 14:47:13 +000029 // Replace output tensor handle with the given TensorHandle
30 void ReplaceOutputTensorHandle(ITensorHandle* tensorHandle, unsigned int slot) override;
telsoa014fcda012018-03-09 14:13:49 +000031private:
32 mutable arm_compute::CLFloor m_Layer;
David Monahanec819992022-02-10 14:47:13 +000033 virtual void Reconfigure();
telsoa014fcda012018-03-09 14:13:49 +000034};
35
36} //namespace armnn
37
38
39
40