blob: 82ee11f6ec913d1c1a65984130b0c685b1bb09fa [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
Aron Virginas-Tarc9cc8042018-11-01 16:15:57 +00008#include <backendsCommon/Workload.hpp>
9#include <backendsCommon/WorkloadData.hpp>
telsoa014fcda012018-03-09 14:13:49 +000010
11#include <armnn/Types.hpp>
12
13namespace armnn
14{
15
telsoa01c577f2c2018-08-31 09:22:23 +010016// Base class template providing an implementation of the Constant layer common to all data types.
telsoa014fcda012018-03-09 14:13:49 +000017template <armnn::DataType DataType>
18class RefBaseConstantWorkload : public TypedWorkload<ConstantQueueDescriptor, DataType>
19{
20public:
21 RefBaseConstantWorkload(const ConstantQueueDescriptor& descriptor, const WorkloadInfo& info)
22 : TypedWorkload<ConstantQueueDescriptor, DataType>(descriptor, info)
23 , m_RanOnce(false)
24 {
25 }
26
27 virtual void Execute() const override;
28
29private:
30 mutable bool m_RanOnce;
31};
32
33} //namespace armnn