1# Node
2
3
4## 概述
5
6算子节点结构体。
7
8nodeAttr参数是一段被序列化的数据,并调用OHOS的hdi的反序列化接口才能得到具体参数。 大致流程如下:
9
101. 定义算子参数的结构体,OP op{},其中OP可以被替换为[NodeAttrTypes.idl](_node_attr_types_8idl_v10.md)的算子参数结构体,op是变量名;
11
122. 申明MessageParcle对象,用存储反序列化的数据,OHOS::MessageParcel data;
13
143. 将nodeAttr写入data中,data.WriteBuffer(nodeAttr.data(),nodeAttr.size());
15
164. 将data中的数据反序列化到op结构体中,(void)OPBlockUnmarshalling(data, op);
17
18然后就可以在op中查看具体的算子的参数值。
19
20例如: 某一个算子的 nodeType为NODE_TYPE_FULL_CONNECTION,那么它所对应的算子参数结构体应该为[FullConnection](_full_connection_v10.md), 则该算子具有四个参数:hasBias,useAxis,axis和activationType。
21
22则按照如下流程调用:
23
241. [FullConnection](_full_connection_v10.md) full_connection{};
25
262. OHOS::MessageParcel data;
27
283. data.WriteBuffer(nodeAttr.data(),nodeAttr.size());
29
304. (void)FullConnectionBlockUnmarshalling(data, full_connection);
31
32至此FullConnection的四个参数就写入了full_connection中。
33
34**起始版本:** 3.2
35
36**相关模块:**[NNRt](_n_n_rt_v10.md)
37
38
39## 汇总
40
41
42### Public 属性
43
44| 名称 | 描述 |
45| -------- | -------- |
46| String [name](#name) | 算子节点的名称 。 |
47| enum [NodeType](_n_n_rt_v10.md#nodetype)[nodeType](#nodetype) | 算子节点的类型,详情请参考:[NodeType](_n_n_rt_v10.md#nodetype)。 |
48| byte[] [nodeAttr](#nodeattr) | 算子节点的参数对应的序列化数组。 |
49| unsigned int[] [inputIndex](#inputindex) | 算子节点的输入节点下标。 |
50| unsigned int[] [outputIndex](#outputindex) | 算子节点的输出节点下标。 |
51| enum [QuantType](_n_n_rt_v10.md#quanttype)[quantType](#quanttype) | 算子节点的量化参数,详情请参考:[QuantType](_n_n_rt_v10.md#quanttype)。 |
52
53
54## 类成员变量说明
55
56
57### inputIndex
58
59```
60unsigned int [] Node::inputIndex
61```
62
63**描述**
64
65
66算子节点的输入节点下标。
67
68
69### name
70
71```
72String Node::name
73```
74
75**描述**
76
77
78算子节点的名称 。
79
80
81### nodeAttr
82
83```
84byte [] Node::nodeAttr
85```
86
87**描述**
88
89
90算子节点的参数对应的序列化数组。
91
92
93### nodeType
94
95```
96enum NodeType Node::nodeType
97```
98
99**描述**
100
101
102算子节点的类型,详情请参考:[NodeType](_n_n_rt_v10.md#nodetype)。
103
104
105### outputIndex
106
107```
108unsigned int [] Node::outputIndex
109```
110
111**描述**
112
113
114算子节点的输出节点下标。
115
116
117### quantType
118
119```
120enum QuantType Node::quantType
121```
122
123**描述**
124
125
126算子节点的量化参数,详情请参考:[QuantType](_n_n_rt_v10.md#quanttype)。
127