2 * Copyright (c) 2020 Samsung Electronics Co., Ltd. All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 #ifndef LUCI_INTERPRETER_CORE_KERNELPARAMS_H
18 #define LUCI_INTERPRETER_CORE_KERNELPARAMS_H
20 #include <luci/IR/AttrPadding.h>
21 #include <luci/IR/AttrFusedActFunc.h>
22 #include <luci_interpreter/core/DataType.h>
27 namespace luci_interpreter
30 // Inject commonly used types into `luci_interpreter` namespace for convenience.
31 using Activation = luci::FusedActFunc;
32 using Padding = luci::Padding;
36 Activation activation;
44 struct ConcatenationParams
52 int32_t stride_height;
54 int32_t dilation_height_factor;
55 int32_t dilation_width_factor;
56 Activation activation;
59 struct DepthToSpaceParams
64 struct DepthwiseConv2DParams
67 int32_t depth_multiplier; // TODO Remove, as it can be calculated.
68 int32_t stride_height;
70 int32_t dilation_height_factor;
71 int32_t dilation_width_factor;
72 Activation activation;
75 struct FullyConnectedParams
77 Activation activation;
82 Activation activation;
85 struct LeakyReluParams
90 struct LocalResponseNormalizationParams
100 Activation activation;
106 int32_t filter_height;
107 int32_t filter_width;
108 int32_t stride_height;
109 int32_t stride_width;
110 Activation activation;
118 struct SpaceToDepthParams
128 struct StridedSliceParams
132 int32_t ellipsis_mask;
133 int32_t new_axis_mask;
134 int32_t shrink_axis_mask;
139 std::vector<int32_t> squeeze_dims;
142 struct TransposeConvParams
145 int32_t stride_height;
146 int32_t stride_width;
154 } // namespace luci_interpreter
156 #endif // LUCI_INTERPRETER_CORE_KERNELPARAMS_H