xref: /aosp_15_r20/external/armnn/src/dynamic/sample/SampleDynamicLayerSupport.hpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1 //
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 
10 namespace sdb // sample dynamic backend
11 {
12 
13 class SampleDynamicLayerSupport : public armnn::LayerSupportBase
14 {
15 public:
16     bool IsAdditionSupported(const armnn::TensorInfo& input0,
17                              const armnn::TensorInfo& input1,
18                              const armnn::TensorInfo& output,
19                              armnn::Optional<std::string&> reasonIfUnsupported = armnn::EmptyOptional()) const override;
20 
21     bool IsInputSupported(const armnn::TensorInfo& input,
22                           armnn::Optional<std::string&> reasonIfUnsupported) const override;
23 
24     bool IsOutputSupported(const armnn::TensorInfo& output,
25                            armnn::Optional<std::string&> reasonIfUnsupported) const override;
26 
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,
32                           armnn::Optional<std::string&> reasonIfUnsupported = armnn::EmptyOptional()) const override;
33 };
34 
35 } // namespace sdb
36