Publishing 2019 R1 content
[platform/upstream/dldt.git] / inference-engine / thirdparty / clDNN / api / C / reorder.h
1 /*
2 // Copyright (c) 2016 Intel Corporation
3 //
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
7 //
8 //      http://www.apache.org/licenses/LICENSE-2.0
9 //
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.
15 */
16
17 ///////////////////////////////////////////////////////////////////////////////////////////////////
18 #ifndef REORDER_H
19 #define REORDER_H
20
21 #include "cldnn.h"
22 /// @addtogroup c_api C API
23 /// @{
24 /// @addtogroup c_topology Network Topology
25 /// @{
26 /// @addtogroup c_primitives Primitives
27 /// @{
28
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32
33 /// @brief Changes how data is ordered in memory. Value type is not changed & all information is preserved.
34 /// @details Corresponding values are bitwise equal before/after reorder.
35 /// Also merged with subtraction layer, which can subtract, multiply or divide values based on mean_mode value, while doing reordering.
36 /// NOTE THAT THIS WILL SUBTRACT THE SAME VALUES FROM EACH BATCH.
37 CLDNN_BEGIN_PRIMITIVE_DESC(reorder)
38 /// @brief Requested memory format.
39 cldnn_format_type output_format;
40 /// @brief Primitive id to get mean subtract values. Ignored if subtract_per_featrue is set.
41 cldnn_primitive_id mean_subtract;
42 /// @brief Array of mean subtract values.
43 cldnn_float_arr subtract_per_feature;
44 /// @brief Mode of mean execution
45 cldnn_reorder_mean_mode mean_mode;
46 CLDNN_END_PRIMITIVE_DESC(reorder)
47
48 CLDNN_DECLARE_PRIMITIVE_TYPE_ID(reorder);
49
50 #ifdef __cplusplus
51 }
52 #endif
53
54 /// @}
55 /// @}
56 /// @}
57 #endif /* REORDER_H */
58