ArmNN
 20.05
InternalTypes.hpp
Go to the documentation of this file.
1 //
2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 #pragma once
6 
7 #include <armnn/Types.hpp>
8 
9 #include <array>
10 
11 
12 /// This list uses X macro technique.
13 /// See https://en.wikipedia.org/wiki/X_Macro for more info
14 #define LIST_OF_LAYER_TYPE \
15  X(Activation) \
16  X(Addition) \
17  X(ArgMinMax) \
18  X(BatchNormalization) \
19  X(BatchToSpaceNd) \
20  X(Comparison) \
21  X(Concat) \
22  X(Constant) \
23  X(ConvertBf16ToFp32) \
24  X(ConvertFp16ToFp32) \
25  X(ConvertFp32ToBf16) \
26  X(ConvertFp32ToFp16) \
27  X(Convolution2d) \
28  X(Debug) \
29  X(DepthToSpace) \
30  X(DepthwiseConvolution2d) \
31  X(Dequantize) \
32  X(DetectionPostProcess) \
33  X(Division) \
34  X(ElementwiseUnary) \
35  X(FakeQuantization) \
36  X(Floor) \
37  X(FullyConnected) \
38  X(Gather) \
39  X(Input) \
40  X(InstanceNormalization) \
41  X(L2Normalization) \
42  X(LogSoftmax) \
43  X(Lstm) \
44  X(QLstm) \
45  X(Maximum) \
46  X(Mean) \
47  X(MemCopy) \
48  X(MemImport) \
49  X(Merge) \
50  X(Minimum) \
51  X(Multiplication) \
52  X(Normalization) \
53  X(Output) \
54  X(Pad) \
55  X(Permute) \
56  X(Pooling2d) \
57  X(PreCompiled) \
58  X(Prelu) \
59  X(Quantize) \
60  X(QuantizedLstm) \
61  X(Reshape) \
62  X(Resize) \
63  X(Slice) \
64  X(Softmax) \
65  X(SpaceToBatchNd) \
66  X(SpaceToDepth) \
67  X(Splitter) \
68  X(Stack) \
69  X(StandIn) \
70  X(StridedSlice) \
71  X(Subtraction) \
72  X(Switch) \
73  X(Transpose) \
74  X(TransposeConvolution2d)
75 
76 /// When adding a new layer, adapt also the LastLayer enum value in the
77 /// enum class LayerType below
78 namespace armnn
79 {
80 
81 enum class LayerType
82 {
83 #define X(name) name,
85 #undef X
88 };
89 
90 const char* GetLayerTypeAsCString(LayerType type);
91 
92 using Coordinates = std::array<unsigned int, MaxNumOfTensorDimensions>;
93 using Dimensions = std::array<unsigned int, MaxNumOfTensorDimensions>;
94 
95 }
#define LIST_OF_LAYER_TYPE
This list uses X macro technique.
std::array< unsigned int, MaxNumOfTensorDimensions > Coordinates
Copyright (c) 2020 ARM Limited.
char const * GetLayerTypeAsCString(LayerType type)
std::array< unsigned int, MaxNumOfTensorDimensions > Dimensions