UINT32 gNcdsInfoInit = 0; void ncdsPkgInfo(struct ncds_ds* pDs,const nc_rpc* pRpc) { char *pRpcInfo = NULL; char *pMatchInfo = NULL; char *pRpcInfoTmp = NULL; pRpcInfo = nc_rpc_get_op_content(pRpc); pRpcInfoTmp = pRpcInfo; pMatchInfo = nc_clrwspace(pRpcInfoTmp); VERB("%s/%d pkt info %s",__func__,__LINE__,pMatchInfo); if (!xmlStrncmp(pDs->data_model->name, "acc-alarms", xmlStrlen("acc-alarms"))) { if (NULL != strstr(pMatchInfo,"tca-parameters")) { packageTcaPmInfo(); } } if (!xmlStrncmp(pDs->data_model->name, "acc-devm", xmlStrlen("acc-devm"))) { if (NULL != strstr(pMatchInfo,"me")) { VERB("%s/%d pkt me info====================",__func__,__LINE__); packageMeInfo(); } if (NULL != strstr(pMatchInfo,"ptps")) { VERB("%s/%d pkt ptps info====================",__func__,__LINE__); packagePtpsInfo(); } if (NULL != strstr(pMatchInfo,"eqs")) { VERB("%s/%d pkt eqs info====================",__func__,__LINE__); packageEqsInfo(); } if (NULL != strstr(pMatchInfo,"mc-ports")) { VERB("%s/%d pkt eqs info====================",__func__,__LINE__); packageMcPortInfo(); } } if (!xmlStrncmp(pDs->data_model->name, "acc-performance", xmlStrlen("acc-performance"))) { if (NULL != strstr(pMatchInfo,"performances")) { //packageOptInfoInit(); ncdsFileDelAllPm(pDs); packageIfStatisInfoInit(); packageOptInfoInit(); } } free(pRpcInfo); free(pMatchInfo); }
时间: 2024-04-28 21:20:14 浏览: 20
这段代码定义了一个函数 `ncdsPkgInfo`,它接受两个参数:
1. `struct ncds_ds* pDs`:一个指向数据存储模块的指针。
2. `const nc_rpc* pRpc`:一个指向远程过程调用的指针。
函数的主要作用是根据传入的参数对不同类型的数据进行打包。
首先,它从 `pRpc` 中获取操作内容,并将其存储在 `pRpcInfo` 中。然后,它使用 `nc_clrwspace` 函数清除 `pRpcInfo` 中的空格,并将结果存储在 `pMatchInfo` 中。
接下来,函数根据数据存储模块的名称和 `pMatchInfo` 中包含的信息来判断需要对哪些数据进行打包。如果数据存储模块的名称是 "acc-alarms",并且 `pMatchInfo` 中包含 "tca-parameters",则调用 `packageTcaPmInfo` 函数对 TCA 参数进行打包;如果名称是 "acc-devm",并且 `pMatchInfo` 中包含 "me"、"ptps"、"eqs" 或 "mc-ports",则分别调用 `packageMeInfo`、`packagePtpsInfo`、`packageEqsInfo` 和 `packageMcPortInfo` 函数对相应的数据进行打包;如果名称是 "acc-performance",并且 `pMatchInfo` 中包含 "performances",则调用 `ncdsFileDelAllPm`、`packageIfStatisInfoInit` 和 `packageOptInfoInit` 函数对性能数据进行打包。
最后,函数释放了 `pRpcInfo` 和 `pMatchInfo` 占用的内存。
需要注意的是,在函数开头定义了一个全局变量 `gNcdsInfoInit`,初始化为 0,但是在这个函数中没有被使用。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![exe](https://img-home.csdnimg.cn/images/20210720083343.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)