blob: 0ccf2433b8f3d079fbd81ff9d8682ee1770f0a28 [file] [log] [blame]
Georgios Pinitasd8734b52017-12-22 15:27:52 +00001/*
Giorgio Arena6e9d0e02020-01-03 15:02:04 +00002 * Copyright (c) 2018-2020 ARM Limited.
Georgios Pinitasd8734b52017-12-22 15:27:52 +00003 *
4 * SPDX-License-Identifier: MIT
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a copy
7 * of this software and associated documentation files (the "Software"), to
8 * deal in the Software without restriction, including without limitation the
9 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
10 * sell copies of the Software, and to permit persons to whom the Software is
11 * furnished to do so, subject to the following conditions:
12 *
13 * The above copyright notice and this permission notice shall be included in all
14 * copies or substantial portions of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22 * SOFTWARE.
23 */
Michalis Spyrouf4643372019-11-29 16:17:13 +000024#ifndef ARM_COMPUTE_GRAPH_NODES_FWD_H
25#define ARM_COMPUTE_GRAPH_NODES_FWD_H
Georgios Pinitasd8734b52017-12-22 15:27:52 +000026
27namespace arm_compute
28{
Georgios Pinitasd9eb2752018-04-03 13:44:29 +010029namespace graph
Georgios Pinitasd8734b52017-12-22 15:27:52 +000030{
31// Forward declarations
32class INode;
33class ActivationLayerNode;
34class BatchNormalizationLayerNode;
Manuel Bottinid2048ce2018-10-23 17:00:42 +010035class BoundingBoxTransformLayerNode;
Georgios Pinitas087eaf62018-05-16 15:52:35 +010036class ChannelShuffleLayerNode;
Georgios Pinitase2220552018-07-20 13:23:44 +010037class ConcatenateLayerNode;
Georgios Pinitasd8734b52017-12-22 15:27:52 +000038class ConstNode;
39class ConvolutionLayerNode;
Georgios Pinitas087eaf62018-05-16 15:52:35 +010040class DeconvolutionLayerNode;
Georgios Pinitasd8734b52017-12-22 15:27:52 +000041class DepthwiseConvolutionLayerNode;
Isabella Gottardicd4e9ab2019-11-05 17:50:27 +000042class DequantizationLayerNode;
Isabella Gottardi7234ed82018-11-27 08:51:10 +000043class DetectionOutputLayerNode;
Isabella Gottardia7acb3c2019-01-08 13:48:44 +000044class DetectionPostProcessLayerNode;
Georgios Pinitas087eaf62018-05-16 15:52:35 +010045class DummyNode;
Georgios Pinitasd8734b52017-12-22 15:27:52 +000046class EltwiseLayerNode;
47class FlattenLayerNode;
48class FullyConnectedLayerNode;
giuros01acce5042019-02-21 17:32:34 +000049class FusedConvolutionBatchNormalizationNode;
Manuel Bottinibffb41e2019-06-20 16:00:27 +010050class FusedDepthwiseConvolutionBatchNormalizationNode;
Manuel Bottini5209be52019-02-13 16:34:56 +000051class GenerateProposalsLayerNode;
Georgios Pinitasd8734b52017-12-22 15:27:52 +000052class InputNode;
53class NormalizationLayerNode;
Michele Di Giorgio555d1102018-09-12 13:51:59 +010054class NormalizePlanarYUVLayerNode;
Georgios Pinitasd8734b52017-12-22 15:27:52 +000055class OutputNode;
Michele Di Giorgio4bb17332018-09-26 13:56:51 +010056class PadLayerNode;
Georgios Pinitas57c48242018-08-02 13:41:49 +010057class PermuteLayerNode;
Georgios Pinitasd8734b52017-12-22 15:27:52 +000058class PoolingLayerNode;
Georgios Pinitasf8c47492020-02-04 17:39:59 +000059class PReluLayerNode;
Giorgio Arena6e9d0e02020-01-03 15:02:04 +000060class PrintLayerNode;
Pablo Tello32521432018-11-15 14:43:10 +000061class PriorBoxLayerNode;
Isabella Gottardi3db1ba92019-05-17 12:35:20 +010062class QuantizationLayerNode;
Michele Di Giorgio555d1102018-09-12 13:51:59 +010063class ReorgLayerNode;
Georgios Pinitasd8734b52017-12-22 15:27:52 +000064class ReshapeLayerNode;
Georgios Pinitas087eaf62018-05-16 15:52:35 +010065class ResizeLayerNode;
Manuel Bottini3f9d4d72018-10-19 14:04:42 +010066class ROIAlignLayerNode;
Georgios Pinitasd8734b52017-12-22 15:27:52 +000067class SoftmaxLayerNode;
Michele Di Giorgioc30b6682018-09-12 17:44:08 +010068class SliceLayerNode;
Georgios Pinitasee33ea52018-03-08 16:01:29 +000069class SplitLayerNode;
Michele Di Giorgioec699752019-03-22 15:25:32 +000070class StackLayerNode;
Michalis Spyrou4e1c3f32018-09-20 17:14:03 +010071class UpsampleLayerNode;
Michalis Spyrou96f67692018-09-13 11:39:28 +010072class YOLOLayerNode;
Georgios Pinitasd9eb2752018-04-03 13:44:29 +010073} // namespace graph
Georgios Pinitasd8734b52017-12-22 15:27:52 +000074} // namespace arm_compute
Michalis Spyrouf4643372019-11-29 16:17:13 +000075#endif /* ARM_COMPUTE_GRAPH_NODES_FWD_H */