blob: a2698e3a251116b6b05438db9a09d9f032c3625c [file] [log] [blame]
narpra014951d842019-01-18 16:53:53 +00001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
Colm Donelan0c479742021-12-10 12:43:54 +00008#include <armnn/backends/Workload.hpp>
9#include <armnn/backends/WorkloadData.hpp>
narpra014951d842019-01-18 16:53:53 +000010
11#include <armnn/TypesUtils.hpp>
Ellen Norris-Thompson6858d3f2019-06-21 15:50:00 +010012#include "BaseIterator.hpp"
13#include "Decoders.hpp"
14#include "Encoders.hpp"
narpra014951d842019-01-18 16:53:53 +000015
16namespace armnn
17{
18
Ellen Norris-Thompson6858d3f2019-06-21 15:50:00 +010019class RefGatherWorkload : public BaseWorkload<GatherQueueDescriptor>
narpra014951d842019-01-18 16:53:53 +000020{
21public:
Ellen Norris-Thompson6858d3f2019-06-21 15:50:00 +010022 using BaseWorkload<GatherQueueDescriptor>::BaseWorkload;
narpra014951d842019-01-18 16:53:53 +000023 void Execute() const override;
Finn Williamsb8181f72021-04-07 10:23:21 +010024 void ExecuteAsync(WorkingMemDescriptor& workingMemDescriptor) override;
25private:
26 void Execute(std::vector<ITensorHandle*> inputs, std::vector<ITensorHandle*> outputs) const;
narpra014951d842019-01-18 16:53:53 +000027};
28
narpra014951d842019-01-18 16:53:53 +000029} // namespace armnn