1# Node 2 3 4## 概述 5 6算子节点结构体。 7 8nodeAttr参数是一段被序列化的数据,并调用OHOS的hdi的反序列化接口才能得到具体参数。大致流程如下: 9 101. 定义算子参数的结构体,OP op{},其中OP可以被替换为[NodeAttrTypes.idl](_node_attr_types_8idl.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.md), 则该算子具有四个参数:hasBias,useAxis,axis和activationType。 21 22则按照如下流程调用: 23 241. [FullConnection](_full_connection.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**Since:** 35 363.2 37 38**Version:** 39 401.0 41 42**相关模块:** 43 44[NNRt](_n_n_rt.md) 45 46 47## 汇总 48 49 50### Public 属性 51 52 | 名称 | 描述 | 53| -------- | -------- | 54| [name](#name) | String<br/>算子节点的名称 。 | 55| [nodeType](#nodetype) | enum [NodeType](_n_n_rt.md#nodetype)<br/>算子节点的类型,详情请参考:[NodeType](_n_n_rt.md#nodetype)。 | 56| [nodeAttr](#nodeattr) | byte[]<br/>算子节点的参数对应的序列化数组。 | 57| [inputIndex](#inputindex) | unsigned int[]<br/>算子节点的输入节点下标。 | 58| [outputIndex](#outputindex) | unsigned int[]<br/>算子节点的输出节点下标。 | 59| [quantType](#quanttype) | enum [QuantType](_n_n_rt.md#quanttype)<br/>算子节点的量化参数,详情请参考:[QuantType](_n_n_rt.md#quanttype)。 | 60 61 62## 类成员变量说明 63 64 65### inputIndex 66 67 68``` 69unsigned int [] Node::inputIndex 70``` 71 72**描述:** 73 74算子节点的输入节点下标。 75 76 77### name 78 79 80``` 81String Node::name 82``` 83 84**描述:** 85 86算子节点的名称 。 87 88 89### nodeAttr 90 91 92``` 93byte [] Node::nodeAttr 94``` 95 96**描述:** 97 98算子节点的参数对应的序列化数组。 99 100 101### nodeType 102 103 104``` 105enum NodeType Node::nodeType 106``` 107 108**描述:** 109 110算子节点的类型,详情请参考:[NodeType](_n_n_rt.md#nodetype)。 111 112 113### outputIndex 114 115 116``` 117unsigned int [] Node::outputIndex 118``` 119 120**描述:** 121 122算子节点的输出节点下标。 123 124 125### quantType 126 127 128``` 129enum QuantType Node::quantType 130``` 131 132**描述:** 133 134算子节点的量化参数,详情请参考:[QuantType](_n_n_rt.md#quanttype)。 135