blob: 3881ad760e4207aab0813519938be1ba6638e12b [file] [log] [blame]
Narumol Prangnawarat867eba52020-02-03 12:29:56 +00001//
2// Copyright © 2020 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
8#include <backendsCommon/LayerSupportBase.hpp>
9
Jan Eilersc84e45d2020-08-19 14:14:36 +010010namespace sdb // sample dynamic backend
Narumol Prangnawarat867eba52020-02-03 12:29:56 +000011{
12
Jan Eilersc84e45d2020-08-19 14:14:36 +010013class SampleDynamicLayerSupport : public armnn::LayerSupportBase
Narumol Prangnawarat867eba52020-02-03 12:29:56 +000014{
15public:
Jan Eilersc84e45d2020-08-19 14:14:36 +010016 bool IsAdditionSupported(const armnn::TensorInfo& input0,
17 const armnn::TensorInfo& input1,
18 const armnn::TensorInfo& output,
Francis Murtagha5048342023-08-08 10:38:25 +010019 armnn::Optional<std::string&> reasonIfUnsupported = armnn::EmptyOptional()) const;
Narumol Prangnawarat867eba52020-02-03 12:29:56 +000020
Jan Eilersc84e45d2020-08-19 14:14:36 +010021 bool IsInputSupported(const armnn::TensorInfo& input,
Francis Murtagha5048342023-08-08 10:38:25 +010022 armnn::Optional<std::string&> reasonIfUnsupported) const;
Narumol Prangnawarat867eba52020-02-03 12:29:56 +000023
Jan Eilersc84e45d2020-08-19 14:14:36 +010024 bool IsOutputSupported(const armnn::TensorInfo& output,
Francis Murtagha5048342023-08-08 10:38:25 +010025 armnn::Optional<std::string&> reasonIfUnsupported) const;
Cathal Corbetta7edbe62022-01-20 15:53:31 +000026
27 bool IsLayerSupported(const armnn::LayerType& type,
28 const std::vector<armnn::TensorInfo>& infos,
29 const armnn::BaseDescriptor& descriptor,
30 const armnn::Optional<armnn::LstmInputParamsInfo>& lstmParamsInfo,
31 const armnn::Optional<armnn::QuantizedLstmInputParamsInfo>& quantizedLstmParamsInfo,
Francis Murtagha5048342023-08-08 10:38:25 +010032 armnn::Optional<std::string&> reasonIfUnsupported = armnn::EmptyOptional()) const;
Narumol Prangnawarat867eba52020-02-03 12:29:56 +000033};
34
Jan Eilersc84e45d2020-08-19 14:14:36 +010035} // namespace sdb