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