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-26 13:26:59 浏览: 44
lcm_driver.rar_176*220_lcm_液晶屏 单片机
这段代码是一个C语言函数,名为`ncdsPkgInfo`,它的作用是将NCDS协议中的信息打包成XML格式,供其他模块使用。具体来说,该函数会获取传入的NCDS消息内容`pRpc`,解析并提取出`pRpc`中的信息,然后根据该信息的内容和消息类型来打包成对应的XML格式数据。其中,函数中的`xmlStrncmp`函数用于比较XML标签的名称,`strstr`函数用于查找字符串中是否包含指定的子字符串。
变量`gNcdsInfoInit`被初始化为0,目前看不出在这段代码中起到什么作用。
阅读全文