blob: ec880a5109f1684888ebf10533edae386406c474 [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
Finn Williams73c547d2022-02-15 20:47:34 +00008#include "RefBaseWorkload.hpp"
Colm Donelan0c479742021-12-10 12:43:54 +00009#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
Finn Williams73c547d2022-02-15 20:47:34 +000019class RefGatherWorkload : public RefBaseWorkload<GatherQueueDescriptor>
narpra014951d842019-01-18 16:53:53 +000020{
21public:
Finn Williams73c547d2022-02-15 20:47:34 +000022 using RefBaseWorkload<GatherQueueDescriptor>::RefBaseWorkload;
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