2079{
2081
2083 {
2085 {
2088 SerializeActivationLayer(layer, layerDescriptor, name);
2089 break;
2090 }
2092 {
2093 SerializeAdditionLayer(layer, name);
2094 break;
2095 }
2097 {
2100 SerializeArgMinMaxLayer(layer, layerDescriptor, name);
2101 break;
2102 }
2104 {
2107 SerializeBatchMatMulLayer(layer,
2108 layerDescriptor,
2109 name);
2110 break;
2111 }
2113 {
2116 SerializeBatchNormalizationLayer(layer,
2117 layerDescriptor,
2118 constants,
2119 name);
2120 break;
2121 }
2123 {
2126 SerializeBatchToSpaceNdLayer(layer,
2127 layerDescriptor,
2128 name);
2129 break;
2130 }
2132 {
2133 SerializeCastLayer(layer, name);
2134 break;
2135 }
2137 {
2140 SerializeChannelShuffleLayer(layer,
2141 layerDescriptor,
2142 name);
2143 break;
2144 }
2146 {
2149 SerializeComparisonLayer(layer,
2150 layerDescriptor,
2151 name);
2152 break;
2153 }
2155 {
2158 SerializeConcatLayer(layer,
2159 layerDescriptor,
2160 name);
2161 break;
2162 }
2164 {
2165 SerializeConstantLayer(layer,
2166 constants,
2167 name);
2168 break;
2169 }
2171 {
2174 SerializeConvolution2dLayer(layer,
2175 layerDescriptor,
2176 name);
2177 break;
2178 }
2180 {
2183 SerializeConvolution3dLayer(layer,
2184 layerDescriptor,
2185 name);
2186 break;
2187 }
2189 {
2192 SerializeDepthToSpaceLayer(layer,
2193 layerDescriptor,
2194 name);
2195 break;
2196 }
2198 {
2201 SerializeDepthwiseConvolution2dLayer(layer,
2202 layerDescriptor,
2203 name);
2204 break;
2205 }
2207 {
2208 SerializeDequantizeLayer(layer,
2209 name);
2210 break;
2211 }
2213 {
2216 SerializeDetectionPostProcessLayer(layer, layerDescriptor, constants, name);
2217 break;
2218 }
2220 {
2221 SerializeDivisionLayer(layer, name);
2222 break;
2223 }
2225 {
2228 SerializeElementwiseBinaryLayer(layer, layerDescriptor, name);
2229 break;
2230 }
2232 {
2235 SerializeElementwiseUnaryLayer(layer, layerDescriptor, name);
2236 break;
2237 }
2239 {
2242 SerializeFillLayer(layer, layerDescriptor, name);
2243 break;
2244 }
2246 {
2247 SerializeFloorLayer(layer, name);
2248 break;
2249 }
2251 {
2254 SerializeFullyConnectedLayer(layer, layerDescriptor, name);
2255 break;
2256 }
2258 {
2261 SerializeGatherLayer(layer, layerDescriptor, name);
2262 break;
2263 }
2265 {
2266 SerializeGatherNdLayer(layer, name);
2267 break;
2268 }
2270 {
2271 SerializeInputLayer(layer, id, name);
2272 break;
2273 }
2275 {
2278 SerializeInstanceNormalizationLayer(layer, layerDescriptor, name);
2279 break;
2280 }
2282 {
2285 SerializeL2NormalizationLayer(layer, layerDescriptor, name);
2286 break;
2287 }
2289 {
2292 SerializeLogicalBinaryLayer(layer, layerDescriptor, name);
2293 break;
2294 }
2296 {
2299 SerializeLogSoftmaxLayer(layer, layerDescriptor, name);
2300 break;
2301 }
2303 {
2306 SerializeLstmLayer(layer, layerDescriptor, constants, name);
2307 break;
2308 }
2310 {
2313 SerializeQLstmLayer(layer, layerDescriptor, constants, name);
2314 break;
2315 }
2317 {
2318 SerializeMaximumLayer(layer, name);
2319 break;
2320 }
2322 {
2325 SerializeMeanLayer(layer, layerDescriptor, name);
2326 break;
2327 }
2329 {
2330 SerializeMergeLayer(layer, name);
2331 break;
2332 }
2334 {
2335 SerializeMinimumLayer(layer, name);
2336 break;
2337 }
2339 {
2340 SerializeMultiplicationLayer(layer, name);
2341 break;
2342 }
2344 {
2347 SerializeNormalizationLayer(layer, layerDescriptor, name);
2348 break;
2349 }
2351 {
2352 SerializeOutputLayer(layer, id, name);
2353 break;
2354 }
2356 {
2359 SerializePadLayer(layer, layerDescriptor, name);
2360 break;
2361 }
2363 {
2366 SerializePermuteLayer(layer, layerDescriptor, name);
2367 break;
2368 }
2370 {
2373 SerializePooling2dLayer(layer, layerDescriptor, name);
2374 break;
2375 }
2377 {
2380 SerializePooling3dLayer(layer, layerDescriptor, name);
2381 break;
2382 }
2384 {
2385 SerializePreluLayer(layer, name);
2386 break;
2387 }
2389 {
2390 SerializeQuantizeLayer(layer, name);
2391 break;
2392 }
2394 SerializeQuantizedLstmLayer(layer, constants, name);
2395 break;
2397 {
2400 SerializeReshapeLayer(layer, layerDescriptor, name);
2401 break;
2402 }
2404 {
2405 SerializeRankLayer(layer, name);
2406 break;
2407 }
2409 {
2412 SerializeReduceLayer(layer, layerDescriptor, name);
2413 break;
2414 }
2416 {
2419 SerializeResizeLayer(layer, layerDescriptor, name);
2420 break;
2421 }
2423 {
2424 SerializeReverseV2Layer(layer, name);
2425 break;
2426 }
2428 {
2431 SerializeScatterNdLayer(layer, layerDescriptor, name);
2432 break;
2433 }
2435 {
2436 SerializeShapeLayer(layer, name);
2437 break;
2438 }
2440 {
2443 SerializeSliceLayer(layer, layerDescriptor, name);
2444 break;
2445 }
2447 {
2450 SerializeSoftmaxLayer(layer, layerDescriptor, name);
2451 break;
2452 }
2454 {
2457 SerializeSpaceToBatchNdLayer(layer, layerDescriptor, name);
2458 break;
2459 }
2461 {
2464 SerializeSpaceToDepthLayer(layer, layerDescriptor, name);
2465 break;
2466 }
2468 {
2471 SerializeSplitterLayer(layer, layerDescriptor, name);
2472 break;
2473 }
2475 {
2478 SerializeStackLayer(layer, layerDescriptor, name);
2479 break;
2480 }
2482 {
2485 SerializeStandInLayer(layer, layerDescriptor, name);
2486 break;
2487 }
2489 {
2492 SerializeStridedSliceLayer(layer, layerDescriptor, name);
2493 break;
2494 }
2496 {
2497 SerializeSubtractionLayer(layer, name);
2498 break;
2499 }
2501 {
2502 SerializeSwitchLayer(layer, name);
2503 break;
2504 }
2506 {
2509 SerializeTileLayer(layer, layerDescriptor, name);
2510 break;
2511 }
2513 {
2516 SerializeTransposeLayer(layer, layerDescriptor, name);
2517 break;
2518 }
2520 {
2523 SerializeTransposeConvolution2dLayer(layer, layerDescriptor, constants, name);
2524 break;
2525 }
2527 {
2530 SerializeUnidirectionalSequenceLstmLayer(layer, layerDescriptor, constants, name);
2531 break;
2532 }
2533 default:
2534 {
2536 fmt::format("A layer of unknown type was given to the serializer. Layer name: {}; Layer Id: {}",
2538 id));
2539 }
2540 }
2541}
virtual LayerType GetType() const =0
Returns the armnn::LayerType of this layer.
virtual const char * GetName() const =0
Returns the name of the layer.
@ UnidirectionalSequenceLstm
void IgnoreUnused(Ts &&...)
An ActivationDescriptor for the ActivationLayer.
An ArgMinMaxDescriptor for ArgMinMaxLayer.
A BatchMatMulDescriptor for the BatchMatMul operator.
A BatchNormalizationDescriptor for the BatchNormalizationLayer.
A BatchToSpaceNdDescriptor for the BatchToSpaceNdLayer.
A ChannelShuffleDescriptor for the ChannelShuffle operator.
A ComparisonDescriptor for the ComparisonLayer.
A Convolution2dDescriptor for the Convolution2dLayer.
A Convolution3dDescriptor for the Convolution3dLayer.
A DepthwiseConvolution2dDescriptor for the DepthwiseConvolution2dLayer.
A ElementwiseBinaryDescriptor for the ElementwiseBinaryLayer.
A ElementwiseUnaryDescriptor for the ElementwiseUnaryLayer.
A FillDescriptor for the FillLayer.
A FullyConnectedDescriptor for the FullyConnectedLayer.
A GatherDescriptor for the GatherLayer.
An InstanceNormalizationDescriptor for InstanceNormalizationLayer.
A L2NormalizationDescriptor for the L2NormalizationLayer.
A LogicalBinaryDescriptor for the LogicalBinaryLayer.
An LstmDescriptor for the LstmLayer.
A MeanDescriptor for the MeanLayer.
A NormalizationDescriptor for the NormalizationLayer.
An OriginsDescriptor for the ConcatLayer.
A PadDescriptor for the PadLayer.
A PermuteDescriptor for the PermuteLayer.
A Pooling2dDescriptor for the Pooling2dLayer.
A Pooling3dDescriptor for the Pooling3dLayer.
A QLstmDescriptor for the QLstmLayer.
A ReduceDescriptor for the REDUCE operators.
A ReshapeDescriptor for the ReshapeLayer.
A ResizeDescriptor for the ResizeLayer.
A ScatterNdDescriptor for the ScatterNdLayer.
A SliceDescriptor for the SliceLayer.
A SoftmaxDescriptor for the SoftmaxLayer.
A SpaceToBatchNdDescriptor for the SpaceToBatchNdLayer.
A SpaceToDepthDescriptor for the SpaceToDepthLayer.
A StackDescriptor for the StackLayer.
A StandInDescriptor for the StandIn layer.
A StridedSliceDescriptor for the StridedSliceLayer.
A TransposeConvolution2dDescriptor for the TransposeConvolution2dLayer.
A TransposeDescriptor for the TransposeLayer.
A ViewsDescriptor for the SplitterLayer.