xref: /aosp_15_r20/external/armnn/src/backends/backendsCommon/LayerSupportBase.hpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1*89c4ff92SAndroid Build Coastguard Worker //
2*89c4ff92SAndroid Build Coastguard Worker // Copyright © 2017 Arm Ltd and Contributors. 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 <armnn/backends/ILayerSupport.hpp>
9*89c4ff92SAndroid Build Coastguard Worker 
10*89c4ff92SAndroid Build Coastguard Worker namespace armnn
11*89c4ff92SAndroid Build Coastguard Worker {
12*89c4ff92SAndroid Build Coastguard Worker 
13*89c4ff92SAndroid Build Coastguard Worker class LayerSupportBase : public ILayerSupport
14*89c4ff92SAndroid Build Coastguard Worker {
15*89c4ff92SAndroid Build Coastguard Worker public:
16*89c4ff92SAndroid Build Coastguard Worker 
17*89c4ff92SAndroid Build Coastguard Worker     bool IsLayerSupported(const LayerType& type,
18*89c4ff92SAndroid Build Coastguard Worker                           const std::vector<TensorInfo>& infos,
19*89c4ff92SAndroid Build Coastguard Worker                           const BaseDescriptor& descriptor,
20*89c4ff92SAndroid Build Coastguard Worker                           const Optional<LstmInputParamsInfo>& lstmParamsInfo = EmptyOptional(),
21*89c4ff92SAndroid Build Coastguard Worker                           const Optional<QuantizedLstmInputParamsInfo>& quantizedLstmParamsInfo = EmptyOptional(),
22*89c4ff92SAndroid Build Coastguard Worker                           Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
23*89c4ff92SAndroid Build Coastguard Worker 
24*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
25*89c4ff92SAndroid Build Coastguard Worker     bool IsActivationSupported(const TensorInfo& input,
26*89c4ff92SAndroid Build Coastguard Worker                                const TensorInfo& output,
27*89c4ff92SAndroid Build Coastguard Worker                                const ActivationDescriptor& descriptor,
28*89c4ff92SAndroid Build Coastguard Worker                                Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
29*89c4ff92SAndroid Build Coastguard Worker 
30*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
31*89c4ff92SAndroid Build Coastguard Worker     bool IsAdditionSupported(const TensorInfo& input0,
32*89c4ff92SAndroid Build Coastguard Worker                              const TensorInfo& input1,
33*89c4ff92SAndroid Build Coastguard Worker                              const TensorInfo& output,
34*89c4ff92SAndroid Build Coastguard Worker                              Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
35*89c4ff92SAndroid Build Coastguard Worker 
36*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
37*89c4ff92SAndroid Build Coastguard Worker     bool IsArgMinMaxSupported(const TensorInfo& input,
38*89c4ff92SAndroid Build Coastguard Worker                               const TensorInfo& output,
39*89c4ff92SAndroid Build Coastguard Worker                               const ArgMinMaxDescriptor& descriptor,
40*89c4ff92SAndroid Build Coastguard Worker                               Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
41*89c4ff92SAndroid Build Coastguard Worker 
42*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
43*89c4ff92SAndroid Build Coastguard Worker     bool IsBatchNormalizationSupported(const TensorInfo& input,
44*89c4ff92SAndroid Build Coastguard Worker                                        const TensorInfo& output,
45*89c4ff92SAndroid Build Coastguard Worker                                        const TensorInfo& mean,
46*89c4ff92SAndroid Build Coastguard Worker                                        const TensorInfo& var,
47*89c4ff92SAndroid Build Coastguard Worker                                        const TensorInfo& beta,
48*89c4ff92SAndroid Build Coastguard Worker                                        const TensorInfo& gamma,
49*89c4ff92SAndroid Build Coastguard Worker                                        const BatchNormalizationDescriptor& descriptor,
50*89c4ff92SAndroid Build Coastguard Worker                                        Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
51*89c4ff92SAndroid Build Coastguard Worker 
52*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
53*89c4ff92SAndroid Build Coastguard Worker     bool IsBatchToSpaceNdSupported(const TensorInfo& input,
54*89c4ff92SAndroid Build Coastguard Worker                                    const TensorInfo& output,
55*89c4ff92SAndroid Build Coastguard Worker                                    const BatchToSpaceNdDescriptor& descriptor,
56*89c4ff92SAndroid Build Coastguard Worker                                    Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
57*89c4ff92SAndroid Build Coastguard Worker 
58*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
59*89c4ff92SAndroid Build Coastguard Worker     bool IsCastSupported(const TensorInfo& input,
60*89c4ff92SAndroid Build Coastguard Worker                          const TensorInfo& output,
61*89c4ff92SAndroid Build Coastguard Worker                          Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
62*89c4ff92SAndroid Build Coastguard Worker 
63*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
64*89c4ff92SAndroid Build Coastguard Worker     bool IsChannelShuffleSupported(const TensorInfo& input,
65*89c4ff92SAndroid Build Coastguard Worker                                    const TensorInfo& output,
66*89c4ff92SAndroid Build Coastguard Worker                                    const ChannelShuffleDescriptor& descriptor,
67*89c4ff92SAndroid Build Coastguard Worker                                    Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
68*89c4ff92SAndroid Build Coastguard Worker 
69*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
70*89c4ff92SAndroid Build Coastguard Worker     bool IsComparisonSupported(const TensorInfo& input0,
71*89c4ff92SAndroid Build Coastguard Worker                                const TensorInfo& input1,
72*89c4ff92SAndroid Build Coastguard Worker                                const TensorInfo& output,
73*89c4ff92SAndroid Build Coastguard Worker                                const ComparisonDescriptor& descriptor,
74*89c4ff92SAndroid Build Coastguard Worker                                Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
75*89c4ff92SAndroid Build Coastguard Worker 
76*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
77*89c4ff92SAndroid Build Coastguard Worker     bool IsConcatSupported(const std::vector<const TensorInfo*> inputs,
78*89c4ff92SAndroid Build Coastguard Worker                            const TensorInfo& output,
79*89c4ff92SAndroid Build Coastguard Worker                            const OriginsDescriptor& descriptor,
80*89c4ff92SAndroid Build Coastguard Worker                            Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
81*89c4ff92SAndroid Build Coastguard Worker 
82*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
83*89c4ff92SAndroid Build Coastguard Worker     bool IsConstantSupported(const TensorInfo& output,
84*89c4ff92SAndroid Build Coastguard Worker                              Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
85*89c4ff92SAndroid Build Coastguard Worker 
86*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
87*89c4ff92SAndroid Build Coastguard Worker     bool IsConvertFp16ToFp32Supported(const TensorInfo& input,
88*89c4ff92SAndroid Build Coastguard Worker                                       const TensorInfo& output,
89*89c4ff92SAndroid Build Coastguard Worker                                       Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
90*89c4ff92SAndroid Build Coastguard Worker 
91*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
92*89c4ff92SAndroid Build Coastguard Worker     bool IsConvertFp32ToFp16Supported(
93*89c4ff92SAndroid Build Coastguard Worker             const TensorInfo& input,
94*89c4ff92SAndroid Build Coastguard Worker             const TensorInfo& output,
95*89c4ff92SAndroid Build Coastguard Worker             Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
96*89c4ff92SAndroid Build Coastguard Worker 
97*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
98*89c4ff92SAndroid Build Coastguard Worker     bool IsConvolution2dSupported(const TensorInfo& input,
99*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& output,
100*89c4ff92SAndroid Build Coastguard Worker                                   const Convolution2dDescriptor& descriptor,
101*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& weights,
102*89c4ff92SAndroid Build Coastguard Worker                                   const Optional<TensorInfo>& biases,
103*89c4ff92SAndroid Build Coastguard Worker                                   Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
104*89c4ff92SAndroid Build Coastguard Worker 
105*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
106*89c4ff92SAndroid Build Coastguard Worker     bool IsConvolution3dSupported(const TensorInfo& input,
107*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& output,
108*89c4ff92SAndroid Build Coastguard Worker                                   const Convolution3dDescriptor& descriptor,
109*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& weights,
110*89c4ff92SAndroid Build Coastguard Worker                                   const Optional<TensorInfo>& biases,
111*89c4ff92SAndroid Build Coastguard Worker                                   Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
112*89c4ff92SAndroid Build Coastguard Worker 
113*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
114*89c4ff92SAndroid Build Coastguard Worker     bool IsDebugSupported(const TensorInfo& input,
115*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& output,
116*89c4ff92SAndroid Build Coastguard Worker                           Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
117*89c4ff92SAndroid Build Coastguard Worker 
118*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
119*89c4ff92SAndroid Build Coastguard Worker     bool IsDepthToSpaceSupported(const TensorInfo& input,
120*89c4ff92SAndroid Build Coastguard Worker                                  const TensorInfo& output,
121*89c4ff92SAndroid Build Coastguard Worker                                  const DepthToSpaceDescriptor& descriptor,
122*89c4ff92SAndroid Build Coastguard Worker                                  Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
123*89c4ff92SAndroid Build Coastguard Worker 
124*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
125*89c4ff92SAndroid Build Coastguard Worker     bool IsDepthwiseConvolutionSupported(const TensorInfo& input,
126*89c4ff92SAndroid Build Coastguard Worker                                          const TensorInfo& output,
127*89c4ff92SAndroid Build Coastguard Worker                                          const DepthwiseConvolution2dDescriptor& descriptor,
128*89c4ff92SAndroid Build Coastguard Worker                                          const TensorInfo& weights,
129*89c4ff92SAndroid Build Coastguard Worker                                          const Optional<TensorInfo>& biases,
130*89c4ff92SAndroid Build Coastguard Worker                                          Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
131*89c4ff92SAndroid Build Coastguard Worker 
132*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
133*89c4ff92SAndroid Build Coastguard Worker     bool IsDequantizeSupported(const TensorInfo& input,
134*89c4ff92SAndroid Build Coastguard Worker                                const TensorInfo& output,
135*89c4ff92SAndroid Build Coastguard Worker                                Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
136*89c4ff92SAndroid Build Coastguard Worker 
137*89c4ff92SAndroid Build Coastguard Worker     bool IsDetectionPostProcessSupported(const TensorInfo& boxEncodings,
138*89c4ff92SAndroid Build Coastguard Worker                                          const TensorInfo& scores,
139*89c4ff92SAndroid Build Coastguard Worker                                          const TensorInfo& anchors,
140*89c4ff92SAndroid Build Coastguard Worker                                          const TensorInfo& detectionBoxes,
141*89c4ff92SAndroid Build Coastguard Worker                                          const TensorInfo& detectionClasses,
142*89c4ff92SAndroid Build Coastguard Worker                                          const TensorInfo& detectionScores,
143*89c4ff92SAndroid Build Coastguard Worker                                          const TensorInfo& numDetections,
144*89c4ff92SAndroid Build Coastguard Worker                                          const DetectionPostProcessDescriptor& descriptor,
145*89c4ff92SAndroid Build Coastguard Worker                                          Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
146*89c4ff92SAndroid Build Coastguard Worker 
147*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
148*89c4ff92SAndroid Build Coastguard Worker     bool IsDilatedDepthwiseConvolutionSupported(const TensorInfo& input,
149*89c4ff92SAndroid Build Coastguard Worker                                                 const TensorInfo& output,
150*89c4ff92SAndroid Build Coastguard Worker                                                 const DepthwiseConvolution2dDescriptor& descriptor,
151*89c4ff92SAndroid Build Coastguard Worker                                                 const TensorInfo& weights,
152*89c4ff92SAndroid Build Coastguard Worker                                                 const Optional<TensorInfo>& biases,
153*89c4ff92SAndroid Build Coastguard Worker                                                 Optional<std::string&> reasonIfUnsupported =
154*89c4ff92SAndroid Build Coastguard Worker                                                     EmptyOptional()) const override;
155*89c4ff92SAndroid Build Coastguard Worker 
156*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
157*89c4ff92SAndroid Build Coastguard Worker     bool IsDivisionSupported(const TensorInfo& input0,
158*89c4ff92SAndroid Build Coastguard Worker                              const TensorInfo& input1,
159*89c4ff92SAndroid Build Coastguard Worker                              const TensorInfo& output,
160*89c4ff92SAndroid Build Coastguard Worker                              Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
161*89c4ff92SAndroid Build Coastguard Worker 
162*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
163*89c4ff92SAndroid Build Coastguard Worker     bool IsElementwiseUnarySupported(const TensorInfo& input,
164*89c4ff92SAndroid Build Coastguard Worker                                      const TensorInfo& output,
165*89c4ff92SAndroid Build Coastguard Worker                                      const ElementwiseUnaryDescriptor& descriptor,
166*89c4ff92SAndroid Build Coastguard Worker                                      Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
167*89c4ff92SAndroid Build Coastguard Worker 
168*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
169*89c4ff92SAndroid Build Coastguard Worker     bool IsFakeQuantizationSupported(const TensorInfo& input,
170*89c4ff92SAndroid Build Coastguard Worker                                      const FakeQuantizationDescriptor& descriptor,
171*89c4ff92SAndroid Build Coastguard Worker                                      Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
172*89c4ff92SAndroid Build Coastguard Worker 
173*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
174*89c4ff92SAndroid Build Coastguard Worker     virtual bool IsFillSupported(const TensorInfo& input,
175*89c4ff92SAndroid Build Coastguard Worker                                  const TensorInfo& output,
176*89c4ff92SAndroid Build Coastguard Worker                                  const FillDescriptor& descriptor,
177*89c4ff92SAndroid Build Coastguard Worker                                  Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
178*89c4ff92SAndroid Build Coastguard Worker 
179*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
180*89c4ff92SAndroid Build Coastguard Worker     bool IsFloorSupported(const TensorInfo& input,
181*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& output,
182*89c4ff92SAndroid Build Coastguard Worker                           Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
183*89c4ff92SAndroid Build Coastguard Worker 
184*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
185*89c4ff92SAndroid Build Coastguard Worker     bool IsFullyConnectedSupported(const TensorInfo& input,
186*89c4ff92SAndroid Build Coastguard Worker                                    const TensorInfo& output,
187*89c4ff92SAndroid Build Coastguard Worker                                    const TensorInfo& weights,
188*89c4ff92SAndroid Build Coastguard Worker                                    const TensorInfo& biases,
189*89c4ff92SAndroid Build Coastguard Worker                                    const FullyConnectedDescriptor& descriptor,
190*89c4ff92SAndroid Build Coastguard Worker                                    Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
191*89c4ff92SAndroid Build Coastguard Worker 
192*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
193*89c4ff92SAndroid Build Coastguard Worker     bool IsGatherSupported(const TensorInfo& input0,
194*89c4ff92SAndroid Build Coastguard Worker                            const TensorInfo& input1,
195*89c4ff92SAndroid Build Coastguard Worker                            const TensorInfo& output,
196*89c4ff92SAndroid Build Coastguard Worker                            const GatherDescriptor& descriptor,
197*89c4ff92SAndroid Build Coastguard Worker                            Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
198*89c4ff92SAndroid Build Coastguard Worker 
199*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
200*89c4ff92SAndroid Build Coastguard Worker     bool IsInputSupported(const TensorInfo& input,
201*89c4ff92SAndroid Build Coastguard Worker                           Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
202*89c4ff92SAndroid Build Coastguard Worker 
203*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
204*89c4ff92SAndroid Build Coastguard Worker     bool IsInstanceNormalizationSupported(
205*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& input,
206*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& output,
207*89c4ff92SAndroid Build Coastguard Worker         const InstanceNormalizationDescriptor& descriptor,
208*89c4ff92SAndroid Build Coastguard Worker         Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
209*89c4ff92SAndroid Build Coastguard Worker 
210*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
211*89c4ff92SAndroid Build Coastguard Worker     bool IsL2NormalizationSupported(const TensorInfo& input,
212*89c4ff92SAndroid Build Coastguard Worker                                     const TensorInfo& output,
213*89c4ff92SAndroid Build Coastguard Worker                                     const L2NormalizationDescriptor& descriptor,
214*89c4ff92SAndroid Build Coastguard Worker                                     Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
215*89c4ff92SAndroid Build Coastguard Worker 
216*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
217*89c4ff92SAndroid Build Coastguard Worker     bool IsLogicalBinarySupported(const TensorInfo& input0,
218*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& input1,
219*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& output,
220*89c4ff92SAndroid Build Coastguard Worker                                   const LogicalBinaryDescriptor& descriptor,
221*89c4ff92SAndroid Build Coastguard Worker                                   Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
222*89c4ff92SAndroid Build Coastguard Worker 
223*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
224*89c4ff92SAndroid Build Coastguard Worker     bool IsLogicalUnarySupported(const TensorInfo& input,
225*89c4ff92SAndroid Build Coastguard Worker                                  const TensorInfo& output,
226*89c4ff92SAndroid Build Coastguard Worker                                  const ElementwiseUnaryDescriptor& descriptor,
227*89c4ff92SAndroid Build Coastguard Worker                                  Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
228*89c4ff92SAndroid Build Coastguard Worker 
229*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
230*89c4ff92SAndroid Build Coastguard Worker     bool IsLogSoftmaxSupported(const TensorInfo& input,
231*89c4ff92SAndroid Build Coastguard Worker                                const TensorInfo& output,
232*89c4ff92SAndroid Build Coastguard Worker                                const LogSoftmaxDescriptor& descriptor,
233*89c4ff92SAndroid Build Coastguard Worker                                Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
234*89c4ff92SAndroid Build Coastguard Worker 
235*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
236*89c4ff92SAndroid Build Coastguard Worker     bool IsLstmSupported(const TensorInfo& input,
237*89c4ff92SAndroid Build Coastguard Worker                          const TensorInfo& outputStateIn,
238*89c4ff92SAndroid Build Coastguard Worker                          const TensorInfo& cellStateIn,
239*89c4ff92SAndroid Build Coastguard Worker                          const TensorInfo& scratchBuffer,
240*89c4ff92SAndroid Build Coastguard Worker                          const TensorInfo& outputStateOut,
241*89c4ff92SAndroid Build Coastguard Worker                          const TensorInfo& cellStateOut,
242*89c4ff92SAndroid Build Coastguard Worker                          const TensorInfo& output,
243*89c4ff92SAndroid Build Coastguard Worker                          const LstmDescriptor& descriptor,
244*89c4ff92SAndroid Build Coastguard Worker                          const LstmInputParamsInfo& paramsInfo,
245*89c4ff92SAndroid Build Coastguard Worker                          Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
246*89c4ff92SAndroid Build Coastguard Worker 
247*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
248*89c4ff92SAndroid Build Coastguard Worker     bool IsMaximumSupported(const TensorInfo& input0,
249*89c4ff92SAndroid Build Coastguard Worker                             const TensorInfo& input1,
250*89c4ff92SAndroid Build Coastguard Worker                             const TensorInfo& output,
251*89c4ff92SAndroid Build Coastguard Worker                             Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
252*89c4ff92SAndroid Build Coastguard Worker 
253*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
254*89c4ff92SAndroid Build Coastguard Worker     bool IsMeanSupported(const TensorInfo& input,
255*89c4ff92SAndroid Build Coastguard Worker                          const TensorInfo& output,
256*89c4ff92SAndroid Build Coastguard Worker                          const MeanDescriptor& descriptor,
257*89c4ff92SAndroid Build Coastguard Worker                          Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
258*89c4ff92SAndroid Build Coastguard Worker 
259*89c4ff92SAndroid Build Coastguard Worker     bool IsMemCopySupported(const TensorInfo& input,
260*89c4ff92SAndroid Build Coastguard Worker                             const TensorInfo& output,
261*89c4ff92SAndroid Build Coastguard Worker                             Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
262*89c4ff92SAndroid Build Coastguard Worker 
263*89c4ff92SAndroid Build Coastguard Worker     bool IsMemImportSupported(const TensorInfo& input,
264*89c4ff92SAndroid Build Coastguard Worker                               const TensorInfo& output,
265*89c4ff92SAndroid Build Coastguard Worker                               Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
266*89c4ff92SAndroid Build Coastguard Worker 
267*89c4ff92SAndroid Build Coastguard Worker     bool IsMergeSupported(const TensorInfo& input0,
268*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& input1,
269*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& output,
270*89c4ff92SAndroid Build Coastguard Worker                           Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
271*89c4ff92SAndroid Build Coastguard Worker 
272*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
273*89c4ff92SAndroid Build Coastguard Worker     bool IsMinimumSupported(const TensorInfo& input0,
274*89c4ff92SAndroid Build Coastguard Worker                             const TensorInfo& input1,
275*89c4ff92SAndroid Build Coastguard Worker                             const TensorInfo& output,
276*89c4ff92SAndroid Build Coastguard Worker                             Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
277*89c4ff92SAndroid Build Coastguard Worker 
278*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
279*89c4ff92SAndroid Build Coastguard Worker     bool IsMultiplicationSupported(const TensorInfo& input0,
280*89c4ff92SAndroid Build Coastguard Worker                                    const TensorInfo& input1,
281*89c4ff92SAndroid Build Coastguard Worker                                    const TensorInfo& output,
282*89c4ff92SAndroid Build Coastguard Worker                                    Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
283*89c4ff92SAndroid Build Coastguard Worker 
284*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
285*89c4ff92SAndroid Build Coastguard Worker     bool IsNormalizationSupported(const TensorInfo& input,
286*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& output,
287*89c4ff92SAndroid Build Coastguard Worker                                   const NormalizationDescriptor& descriptor,
288*89c4ff92SAndroid Build Coastguard Worker                                   Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
289*89c4ff92SAndroid Build Coastguard Worker 
290*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
291*89c4ff92SAndroid Build Coastguard Worker     bool IsOutputSupported(const TensorInfo& output,
292*89c4ff92SAndroid Build Coastguard Worker                            Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
293*89c4ff92SAndroid Build Coastguard Worker 
294*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
295*89c4ff92SAndroid Build Coastguard Worker     bool IsPadSupported(const TensorInfo& input,
296*89c4ff92SAndroid Build Coastguard Worker                         const TensorInfo& output,
297*89c4ff92SAndroid Build Coastguard Worker                         const PadDescriptor& descriptor,
298*89c4ff92SAndroid Build Coastguard Worker                         Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
299*89c4ff92SAndroid Build Coastguard Worker 
300*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
301*89c4ff92SAndroid Build Coastguard Worker     bool IsPermuteSupported(const TensorInfo& input,
302*89c4ff92SAndroid Build Coastguard Worker                             const TensorInfo& output,
303*89c4ff92SAndroid Build Coastguard Worker                             const PermuteDescriptor& descriptor,
304*89c4ff92SAndroid Build Coastguard Worker                             Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
305*89c4ff92SAndroid Build Coastguard Worker 
306*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
307*89c4ff92SAndroid Build Coastguard Worker     bool IsPooling2dSupported(const TensorInfo& input,
308*89c4ff92SAndroid Build Coastguard Worker                               const TensorInfo& output,
309*89c4ff92SAndroid Build Coastguard Worker                               const Pooling2dDescriptor& descriptor,
310*89c4ff92SAndroid Build Coastguard Worker                               Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
311*89c4ff92SAndroid Build Coastguard Worker 
312*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
313*89c4ff92SAndroid Build Coastguard Worker     bool IsPooling3dSupported(const TensorInfo& input,
314*89c4ff92SAndroid Build Coastguard Worker                               const TensorInfo& output,
315*89c4ff92SAndroid Build Coastguard Worker                               const Pooling3dDescriptor& descriptor,
316*89c4ff92SAndroid Build Coastguard Worker                               Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
317*89c4ff92SAndroid Build Coastguard Worker 
318*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
319*89c4ff92SAndroid Build Coastguard Worker     bool IsPreCompiledSupported(const TensorInfo& input,
320*89c4ff92SAndroid Build Coastguard Worker                                 const PreCompiledDescriptor& descriptor,
321*89c4ff92SAndroid Build Coastguard Worker                                 Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
322*89c4ff92SAndroid Build Coastguard Worker 
323*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
324*89c4ff92SAndroid Build Coastguard Worker     bool IsPreluSupported(const TensorInfo& input,
325*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& alpha,
326*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& output,
327*89c4ff92SAndroid Build Coastguard Worker                           Optional<std::string &> reasonIfUnsupported) const override;
328*89c4ff92SAndroid Build Coastguard Worker 
329*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
330*89c4ff92SAndroid Build Coastguard Worker     bool IsQuantizeSupported(const TensorInfo& input,
331*89c4ff92SAndroid Build Coastguard Worker                              const TensorInfo& output,
332*89c4ff92SAndroid Build Coastguard Worker                              Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
333*89c4ff92SAndroid Build Coastguard Worker 
334*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
335*89c4ff92SAndroid Build Coastguard Worker     bool IsQLstmSupported(const TensorInfo& input,
336*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& previousOutputIn,
337*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& previousCellStateIn,
338*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& outputStateOut,
339*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& cellStateOut,
340*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& output,
341*89c4ff92SAndroid Build Coastguard Worker                           const QLstmDescriptor& descriptor,
342*89c4ff92SAndroid Build Coastguard Worker                           const LstmInputParamsInfo& paramsInfo,
343*89c4ff92SAndroid Build Coastguard Worker                           Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
344*89c4ff92SAndroid Build Coastguard Worker 
345*89c4ff92SAndroid Build Coastguard Worker     bool IsQuantizedLstmSupported(const TensorInfo& input,
346*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& previousCellStateIn,
347*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& previousOutputIn,
348*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& cellStateOut,
349*89c4ff92SAndroid Build Coastguard Worker                                   const TensorInfo& output,
350*89c4ff92SAndroid Build Coastguard Worker                                   const QuantizedLstmInputParamsInfo& paramsInfo,
351*89c4ff92SAndroid Build Coastguard Worker                                   Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
352*89c4ff92SAndroid Build Coastguard Worker 
353*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
354*89c4ff92SAndroid Build Coastguard Worker     bool IsRankSupported(const TensorInfo& input,
355*89c4ff92SAndroid Build Coastguard Worker                          const TensorInfo& output,
356*89c4ff92SAndroid Build Coastguard Worker                          Optional<std::string&> reasonIfUnsupported) const override;
357*89c4ff92SAndroid Build Coastguard Worker 
358*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
359*89c4ff92SAndroid Build Coastguard Worker     bool IsReduceSupported(const TensorInfo& input,
360*89c4ff92SAndroid Build Coastguard Worker                            const TensorInfo& output,
361*89c4ff92SAndroid Build Coastguard Worker                            const ReduceDescriptor& descriptor,
362*89c4ff92SAndroid Build Coastguard Worker                            Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
363*89c4ff92SAndroid Build Coastguard Worker 
364*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
365*89c4ff92SAndroid Build Coastguard Worker     bool IsReshapeSupported(const TensorInfo& input,
366*89c4ff92SAndroid Build Coastguard Worker                             const TensorInfo& output,
367*89c4ff92SAndroid Build Coastguard Worker                             const ReshapeDescriptor& descriptor,
368*89c4ff92SAndroid Build Coastguard Worker                             Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
369*89c4ff92SAndroid Build Coastguard Worker 
370*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
371*89c4ff92SAndroid Build Coastguard Worker     bool IsResizeSupported(const TensorInfo& input,
372*89c4ff92SAndroid Build Coastguard Worker                            const TensorInfo& output,
373*89c4ff92SAndroid Build Coastguard Worker                            const ResizeDescriptor& descriptor,
374*89c4ff92SAndroid Build Coastguard Worker                            Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
375*89c4ff92SAndroid Build Coastguard Worker 
376*89c4ff92SAndroid Build Coastguard Worker     bool IsShapeSupported(const TensorInfo& input,
377*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& output,
378*89c4ff92SAndroid Build Coastguard Worker                           Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
379*89c4ff92SAndroid Build Coastguard Worker 
380*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
381*89c4ff92SAndroid Build Coastguard Worker     bool IsSliceSupported(const TensorInfo& input,
382*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& output,
383*89c4ff92SAndroid Build Coastguard Worker                           const SliceDescriptor& descriptor,
384*89c4ff92SAndroid Build Coastguard Worker                           Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
385*89c4ff92SAndroid Build Coastguard Worker 
386*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
387*89c4ff92SAndroid Build Coastguard Worker     bool IsSoftmaxSupported(const TensorInfo& input,
388*89c4ff92SAndroid Build Coastguard Worker                             const TensorInfo& output,
389*89c4ff92SAndroid Build Coastguard Worker                             const SoftmaxDescriptor& descriptor,
390*89c4ff92SAndroid Build Coastguard Worker                             Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
391*89c4ff92SAndroid Build Coastguard Worker 
392*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
393*89c4ff92SAndroid Build Coastguard Worker     bool IsSpaceToBatchNdSupported(const TensorInfo& input,
394*89c4ff92SAndroid Build Coastguard Worker                                    const TensorInfo& output,
395*89c4ff92SAndroid Build Coastguard Worker                                    const SpaceToBatchNdDescriptor& descriptor,
396*89c4ff92SAndroid Build Coastguard Worker                                    Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
397*89c4ff92SAndroid Build Coastguard Worker 
398*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
399*89c4ff92SAndroid Build Coastguard Worker     bool IsSpaceToDepthSupported(const TensorInfo& input,
400*89c4ff92SAndroid Build Coastguard Worker                                  const TensorInfo& output,
401*89c4ff92SAndroid Build Coastguard Worker                                  const SpaceToDepthDescriptor& descriptor,
402*89c4ff92SAndroid Build Coastguard Worker                                  Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
403*89c4ff92SAndroid Build Coastguard Worker 
404*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
405*89c4ff92SAndroid Build Coastguard Worker     bool IsSplitterSupported(const TensorInfo& input,
406*89c4ff92SAndroid Build Coastguard Worker                              const std::vector<std::reference_wrapper<TensorInfo>>& outputs,
407*89c4ff92SAndroid Build Coastguard Worker                              const ViewsDescriptor& descriptor,
408*89c4ff92SAndroid Build Coastguard Worker                              Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
409*89c4ff92SAndroid Build Coastguard Worker 
410*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
411*89c4ff92SAndroid Build Coastguard Worker     bool IsStackSupported(const std::vector<const TensorInfo*>& inputs,
412*89c4ff92SAndroid Build Coastguard Worker                           const TensorInfo& output,
413*89c4ff92SAndroid Build Coastguard Worker                           const StackDescriptor& descriptor,
414*89c4ff92SAndroid Build Coastguard Worker                           Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
415*89c4ff92SAndroid Build Coastguard Worker 
416*89c4ff92SAndroid Build Coastguard Worker     bool IsStandInSupported(const std::vector<const TensorInfo*>& inputs,
417*89c4ff92SAndroid Build Coastguard Worker                             const std::vector<const TensorInfo*>& outputs,
418*89c4ff92SAndroid Build Coastguard Worker                             const StandInDescriptor& descriptor,
419*89c4ff92SAndroid Build Coastguard Worker                             Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
420*89c4ff92SAndroid Build Coastguard Worker 
421*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
422*89c4ff92SAndroid Build Coastguard Worker     bool IsStridedSliceSupported(const TensorInfo& input,
423*89c4ff92SAndroid Build Coastguard Worker                                  const TensorInfo& output,
424*89c4ff92SAndroid Build Coastguard Worker                                  const StridedSliceDescriptor& descriptor,
425*89c4ff92SAndroid Build Coastguard Worker                                  Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
426*89c4ff92SAndroid Build Coastguard Worker 
427*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
428*89c4ff92SAndroid Build Coastguard Worker     bool IsSubtractionSupported(const TensorInfo& input0,
429*89c4ff92SAndroid Build Coastguard Worker                                 const TensorInfo& input1,
430*89c4ff92SAndroid Build Coastguard Worker                                 const TensorInfo& output,
431*89c4ff92SAndroid Build Coastguard Worker                                 Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
432*89c4ff92SAndroid Build Coastguard Worker 
433*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
434*89c4ff92SAndroid Build Coastguard Worker     bool IsSwitchSupported(const TensorInfo& input0,
435*89c4ff92SAndroid Build Coastguard Worker                            const TensorInfo& input1,
436*89c4ff92SAndroid Build Coastguard Worker                            const TensorInfo& output0,
437*89c4ff92SAndroid Build Coastguard Worker                            const TensorInfo& output1,
438*89c4ff92SAndroid Build Coastguard Worker                            Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
439*89c4ff92SAndroid Build Coastguard Worker 
440*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
441*89c4ff92SAndroid Build Coastguard Worker     bool IsTransposeConvolution2dSupported(
442*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& input,
443*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& output,
444*89c4ff92SAndroid Build Coastguard Worker         const TransposeConvolution2dDescriptor& descriptor,
445*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& weights,
446*89c4ff92SAndroid Build Coastguard Worker         const Optional<TensorInfo>& biases,
447*89c4ff92SAndroid Build Coastguard Worker         Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
448*89c4ff92SAndroid Build Coastguard Worker 
449*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
450*89c4ff92SAndroid Build Coastguard Worker     bool IsTransposeSupported(const TensorInfo& input,
451*89c4ff92SAndroid Build Coastguard Worker                               const TensorInfo& output,
452*89c4ff92SAndroid Build Coastguard Worker                               const TransposeDescriptor& descriptor,
453*89c4ff92SAndroid Build Coastguard Worker                               Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
454*89c4ff92SAndroid Build Coastguard Worker 
455*89c4ff92SAndroid Build Coastguard Worker     ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This method is deprecated. Use IsLayerSupported instead.", "23.08")
456*89c4ff92SAndroid Build Coastguard Worker     bool IsUnidirectionalSequenceLstmSupported(
457*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& input,
458*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& outputStateIn,
459*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& cellStateIn,
460*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& outputStateOut,
461*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& cellStateOut,
462*89c4ff92SAndroid Build Coastguard Worker         const TensorInfo& output,
463*89c4ff92SAndroid Build Coastguard Worker         const LstmDescriptor& descriptor,
464*89c4ff92SAndroid Build Coastguard Worker         const LstmInputParamsInfo& paramsInfo,
465*89c4ff92SAndroid Build Coastguard Worker         Optional<std::string&> reasonIfUnsupported = EmptyOptional()) const override;
466*89c4ff92SAndroid Build Coastguard Worker 
467*89c4ff92SAndroid Build Coastguard Worker };
468*89c4ff92SAndroid Build Coastguard Worker 
469*89c4ff92SAndroid Build Coastguard Worker } // namespace armnn
470