⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 simuintp.c

📁 仿真测试接口程序。根据电总《用户接入网管理功能与管理接口技术规范》之《与112集中受理系统接口规范》
💻 C
📖 第 1 页 / 共 3 页
字号:
	{		i = setSumCode(test_value.TG2_DCres, "ag_res", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.RG2_DCres_flag == 1)	{		i = setSumCode(test_value.RG2_DCres, "bg_res", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.TG2_DCvol_flag == 1)	{		i = setSumCode(test_value.TG2_DCvol, "ag_dcv", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.RG2_DCvol_flag == 1)	{		i = setSumCode(test_value.RG2_DCvol, "bg_dcv", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.TG_ACvol_flag == 1)	{		i = setSumCode(test_value.TG_ACvol, "ag_acv", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.RG_ACvol_flag == 1)	{		i = setSumCode(test_value.RG_ACvol, "bg_acv", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.TR_ACres_flag == 1)	{		i = setSumCode(test_value.TR_ACres, "ab_acr", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.TG_ACres_flag == 1)	{		i = setSumCode(test_value.TG_ACres, "ag_acr", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.RG_ACres_flag == 1)	{		i = setSumCode(test_value.RG_ACres, "bg_acr", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.TR_cap_flag == 1)	{		i = setSumCode(test_value.TR_cap, "ab_cap", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.TG_cap_flag == 1)	{		i = setSumCode(test_value.TG_cap, "ag_cap", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.RG_cap_flag == 1)	{		i = setSumCode(test_value.RG_cap, "bg_cap", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.LongBal_flag == 1)	{		i = setSumCode(test_value.LongBal, "bl1", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.CapBal_flag == 1)	{		i = setSumCode(test_value.CapBal, "bl2", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.MetalNoise_flag == 1)	{		i = setSumCode(test_value.MetalNoise, "nse", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.TG_Line_flag == 1)	{		i = setSumCode(test_value.TG_Line_flag, "ag_lc", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	if (test_value.RG_Line_flag == 1)	{		i = setSumCode(test_value.RG_Line_flag, "rg_lc", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}	/*here omit the dialtone summary code set */	if (test_value.BatteryVol_flag == 1)	{		i = setSumCode(test_value.BatteryVol, "ba_vol", p_comp_rule_data);		if (i != -1)			SUM_SET(i, p_sum_flags);		i = setVercode(i, test_value);		if (i != -1)			VER_SET(i, p_ver_flags);	}}/************************************************** *comment:                                        * *     remove the unneccesary summary code from   * * the set,then can return correct sumcodes       * *return void                                     * **************************************************/void summaryCheck(sum_set * p_sum_flags, int vercode){	int i;	switch (vercode)	{	case -1:		SUM_ZERO(p_sum_flags);		break;	case VER0:										/* test OK */		/* allow any summary code that may have been set */		break;	case VER3:										/* open in */		/* don't transmit any summary codes */		memset((void *) p_sum_flags, 0, sizeof(sum_set));		break;	case VER11:									/* Cross to Working Pair Fault */		/* don't transmit RF type summary codes */		for (i = RF1_S; i <= RF54_S; ++i)			SUM_CLR(i, p_sum_flags);		break;	case VER12:									/* AC FEMF Fault */		/* allow any summary set */		break;	case VER13:									/* Hazardous Potential */		/* don't transmit any summary codes */		memset((void *) p_sum_flags, 0, sizeof(sum_set));		break;	case VER14:									/* Cross to Working Pair Marginal */		/* don't transmit RF type summary codes */		for (i = RF1_S; i <= RF54_S; ++i)			SUM_CLR(i, p_sum_flags);		break;	case VER16:									/* AC Femf Marginal */		/* transmit summary codes set */		break;	case VER21:									/* ground fault */		/* transmit only RF7-RF16,RGBT summary codes if set */		for (i = AC1_S; i <= RF6_S; ++i)			SUM_CLR(i, p_sum_flags);		for (i = RF17_S; i < MAX_SUM_CODES; ++i)		{			if (i == RGBT_S)				continue;			SUM_CLR(i, p_sum_flags);		}		break;	case VER22:									/* short fault */		/* transmit only RF2-RF6,RGBT if set */		for (i = AC1_S; i <= RF1_S; ++i)			SUM_CLR(i, p_sum_flags);		for (i = RF7_S; i < MAX_SUM_CODES; ++i)		{			if (i == RGBT_S)				continue;			SUM_CLR(i, p_sum_flags);		}		break;	case VER25:									/* Short and Ground Faults */	case VER27:									/* DC Resistance Marginal */		/* transmit any set summary code */		break;	case VER26:									/* MDF Test Recommended - Low Resistance */		/* transmit any except RF1 */		SUM_CLR(RF1_S, p_sum_flags);		break;	case VER41:									/* Open Out Balanced */		/* changed 3/6/95 kj */		/* transmit OP8,RGBT summary code */		/* should I set OP8 here? what about other sum codes? */			/***            for (i = AC1_S; i < OP8_S; ++i)                SUM_CLR(i,p_sum_flags);            for (i = OP11_S; i < MAX_SUM_CODES; ++i)            {                if ( i == RGBT_S )                   continue;                SUM_CLR(i,p_sum_flags);            }			***/		SUM_SET(OP8_S, p_sum_flags);		break;	case VER42:									/* Open Out Cable */		/* OP3 & OP4 transmited if set (next rel.) */		break;	case VER46:									/* Open Out On Premises */		/* don't transmit MC12 and OP12  (not set with this rel.) */		break;	case VER47:									/* Open In Remote Terminal */		/* don't transmit OP15 */		SUM_CLR(OP15_S, p_sum_flags);		break;	case VER99:									/* Multiple Faults Detected */		/* transmit any summary codes set */		break;	case VERN1:									/* Resistive Fault In Network */		/* only transmit RF39-53,RGBT if set */		for (i = AC1_S; i <= RF38_S; ++i)			SUM_CLR(i, p_sum_flags);		for (i = RF54_S; i < MAX_SUM_CODES; ++i)		{			if (i == RGBT_S)				continue;			SUM_CLR(i, p_sum_flags);		}		break;	case VERN2:									/* Marginal Resistance In Network */		/* transmit only RF39-53,RGBT if set */		for (i = AC1_S; i <= RF38_S; ++i)			SUM_CLR(i, p_sum_flags);		for (i = RF54_S; i < MAX_SUM_CODES; ++i)		{			if (i == RGBT_S)				continue;			SUM_CLR(i, p_sum_flags);		}		break;	case VERP1:									/* Resistive Fault In Premises */		/* only transmit RF24-38,RGBT if set */		for (i = AC1_S; i <= RF23_S; ++i)			SUM_CLR(i, p_sum_flags);		for (i = RF39_S; i < MAX_SUM_CODES; ++i)		{			if (i == RGBT_S)				continue;			SUM_CLR(i, p_sum_flags);		}		break;	case VERP2:									/* Marginal Resistance In Premises */		/* transmit only RF24-RF38,RGBT if set */		for (i = AC1_S; i <= RF23_S; ++i)			SUM_CLR(i, p_sum_flags);		for (i = RF39_S; i < MAX_SUM_CODES; ++i)		{			if (i == RGBT_S)				continue;			SUM_CLR(i, p_sum_flags);		}		break;	default:											/* should never get here */		break;	}															/* end switch */}/*********************************************** *comment:                                     * *    determine which vercode should return    * *return vercode                               * ***********************************************/int vercodeCheck(ver_set * p_ver_flags){	enum v_c lok;	enum v_c last_found;	int kount = 0;	/* If one of them is hazardous voltage -- return it */	if (VER_ISSET(VER13, p_ver_flags))		return (VER13);	/* Look for major fault first */	for (lok = 0; lok < MINOR_VERCODE_MARK; lok++)	{		if (VER_ISSET(lok, p_ver_flags))		{			last_found = lok;			kount++;		}	}	if (kount == 1)	{		/* we have a single major fault */		return (last_found);	}	if (kount > 1)		return (VER99);	/* we have no major fault so continue scan for minor faults */	/* Take a count of the bit flags set */	for (lok = MINOR_VERCODE_MARK + 1; lok < MAX_VER_CODES; lok++)	{		if (VER_ISSET(lok, p_ver_flags))		{			kount++;		}	}	/* If none were set -- return -1 */	if (kount == 0)		return (VER0);/* for minors return first found instead of 99 *//*   if ( kount > 1 ) *//*     return(VER99); */	/* Else -- return the first one in the ENUM table for new */	for (lok = 0; lok < MAX_VER_CODES; lok++)	{		if (VER_ISSET(lok, p_ver_flags))			return (lok);	}	return (-1);}void assignSumCode(sum_set * p_sum_flags)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -