1*89c4ff92SAndroid Build Coastguard Worker // 2*89c4ff92SAndroid Build Coastguard Worker // Copyright © 2020 Arm Ltd. All rights reserved. 3*89c4ff92SAndroid Build Coastguard Worker // SPDX-License-Identifier: MIT 4*89c4ff92SAndroid Build Coastguard Worker // 5*89c4ff92SAndroid Build Coastguard Worker 6*89c4ff92SAndroid Build Coastguard Worker #pragma once 7*89c4ff92SAndroid Build Coastguard Worker 8*89c4ff92SAndroid Build Coastguard Worker #include <backendsCommon/LayerSupportBase.hpp> 9*89c4ff92SAndroid Build Coastguard Worker 10*89c4ff92SAndroid Build Coastguard Worker namespace sdb // sample dynamic backend 11*89c4ff92SAndroid Build Coastguard Worker { 12*89c4ff92SAndroid Build Coastguard Worker 13*89c4ff92SAndroid Build Coastguard Worker class SampleDynamicLayerSupport : public armnn::LayerSupportBase 14*89c4ff92SAndroid Build Coastguard Worker { 15*89c4ff92SAndroid Build Coastguard Worker public: 16*89c4ff92SAndroid Build Coastguard Worker bool IsAdditionSupported(const armnn::TensorInfo& input0, 17*89c4ff92SAndroid Build Coastguard Worker const armnn::TensorInfo& input1, 18*89c4ff92SAndroid Build Coastguard Worker const armnn::TensorInfo& output, 19*89c4ff92SAndroid Build Coastguard Worker armnn::Optional<std::string&> reasonIfUnsupported = armnn::EmptyOptional()) const override; 20*89c4ff92SAndroid Build Coastguard Worker 21*89c4ff92SAndroid Build Coastguard Worker bool IsInputSupported(const armnn::TensorInfo& input, 22*89c4ff92SAndroid Build Coastguard Worker armnn::Optional<std::string&> reasonIfUnsupported) const override; 23*89c4ff92SAndroid Build Coastguard Worker 24*89c4ff92SAndroid Build Coastguard Worker bool IsOutputSupported(const armnn::TensorInfo& output, 25*89c4ff92SAndroid Build Coastguard Worker armnn::Optional<std::string&> reasonIfUnsupported) const override; 26*89c4ff92SAndroid Build Coastguard Worker 27*89c4ff92SAndroid Build Coastguard Worker bool IsLayerSupported(const armnn::LayerType& type, 28*89c4ff92SAndroid Build Coastguard Worker const std::vector<armnn::TensorInfo>& infos, 29*89c4ff92SAndroid Build Coastguard Worker const armnn::BaseDescriptor& descriptor, 30*89c4ff92SAndroid Build Coastguard Worker const armnn::Optional<armnn::LstmInputParamsInfo>& lstmParamsInfo, 31*89c4ff92SAndroid Build Coastguard Worker const armnn::Optional<armnn::QuantizedLstmInputParamsInfo>& quantizedLstmParamsInfo, 32*89c4ff92SAndroid Build Coastguard Worker armnn::Optional<std::string&> reasonIfUnsupported = armnn::EmptyOptional()) const override; 33*89c4ff92SAndroid Build Coastguard Worker }; 34*89c4ff92SAndroid Build Coastguard Worker 35*89c4ff92SAndroid Build Coastguard Worker } // namespace sdb 36