?? simuintp.c
字號:
{ 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; } 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 + -