📄 function.cpp
字号:
extern BYTE ApplyChargeInfo_FieldCrit[10][4];
extern char StartDP_Field[112][25];
extern BYTE StartDP_FieldCrit[112][4];
extern char SendNofity_Field[76][25];
extern BYTE SendNofity_FieldCrit[76][4];
extern char CueCollectInfo_Field[110][25];
extern BYTE CueCollectInfo_FieldCrit[110][4];
extern char ReleaseCall_Field[3][25];
extern BYTE ReleaseCall_FieldCrit[3][4];
extern char ReqBCSMEvent_Field[35][25];
extern BYTE ReqBCSMEvent_FieldCrit[35][4];
extern char ResetTimer_Field[21][25];
extern BYTE ResetTimer_FieldCrit[21][4];
extern char SendChargeInfo_Field[56][25];
extern BYTE SendChargeInfo_FieldCrit[56][4];
extern char SpecialResRep_Field[2][25];
extern BYTE SpecialResRep_FieldCrit[2][4];
//INAP Err
extern char CAPErrMsg[CAPERRMSG_NUM+1][24];
extern BYTE CAPErrMT[CAPERRMSG_NUM+1];
/****************************************************************************
* *
* FUNCTION : DrawNATCIStr(BYTE) *
* PURPOSE : Get One Byte Data's Str
*
****************************************************************************/
int DrawNATCIStr(CMsgText& msgText,BYTE bData,int nDrawX,int nDrawY,int DltY,float PtRate,bool YOrNTxt)
{
char Str[70];
strcpy(word1_TotalDataStr,"");
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
nDrawY+=DltY;
strcpy(Str," . . . . . . ");
if((bData&0x03)==0) {
strcat(Str,"00,连接中无卫星电路");
}
else if((bData&0x03)==1) {
strcat(Str,"01,连接中有一段卫星电路");
}
else if((bData&0x03)==2) {
strcat(Str,"10,连接中有两段卫星电路");
}
else {
strcat(Str,"11,备用");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . ");
if((bData&0x0c)==0) {
strcat(Str,"00. . ,无端到端方式可用(只有逐段转发方式可用)");
}
else if((bData&0x0c)==4) {
strcat(Str,"01. . ,端到端传递方式可用");
}
else if((bData&0x0c)==8) {
strcat(Str,"10. . ,SCCP方式可用");
}
else {
strcat(Str,"11. . ,传递方式和SCCP方式可用");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . ");
if((bData&0x10)==0) {
strcat(Str,"0. . . . ,未包括去话半回声控制装置");
}
else {
strcat(Str,"1. . . . ,包括去话半回声控制装置");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," XXX. . . . . ,备用");
if(YOrNTxt==true)
strcat(word1_TotalDataStr,Str);
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
return(nDrawY);
}
/****************************************************************************
* *
* FUNCTION : DrawFOCINStr(BYTE) *
* PURPOSE : Get One Byte Data's Str
*
****************************************************************************/
int DrawFOCINStr(CMsgText& msgText,WORD bData,int nDrawX,int nDrawY,int DltY,float PtRate,bool YOrNTxt)
{
char Str[70];
strcpy(word1_TotalDataStr,"");
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
nDrawY+=DltY;
strcpy(Str," . . . . . . . . . . . . . . . ");
if((bData&0x0001)==0) {
strcat(Str,"0,呼叫按国内呼叫处理");
}
else {
strcat(Str,"1,呼叫按国际呼叫处理");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . . . . . . . . . . ");
if((bData&0x0006)==0) {
strcat(Str,"00. ,无端到端方式可用(只有逐段转发方式可用)");
}
else if((bData&0x0006)==2) {
strcat(Str,"01. ,端到端传递方式可用");
}
else if((bData&0x0006)==4) {
strcat(Str,"10. ,SCCP方式可用");
}
else {
strcat(Str,"11. ,传递方式和SCCP方式可用");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . . . . . . . . . ");
if((bData&0x0008)==0) {
strcat(Str,"0. . . ,未遇到互通(所有方向都是N0. 7信号)");
}
else {
strcat(Str,"1. . . ,遇到互通");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . . . . . . . . ");
if((bData&0x0010)==0) {
strcat(Str,"0. . . . ,无端到端信息可用");
}
else {
strcat(Str,"1. . . . ,端到端信息可用");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . . . . . . . ");
if((bData&0x0020)==0) {
strcat(Str,"0. . . . . ,不是所有方向都使用ISDN用户部分");
}
else {
strcat(Str,"1. . . . . ,所有方向都使用ISDN用户部分");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . . . . . ");
if((bData&0x00c0)==0) {
strcat(Str,"00. . . . . . ,所有方向都优选ISDN用户部分");
}
else if((bData&0x00c0)==0x0040) {
strcat(Str,"01. . . . . . ,不是所有方向都需要ISDN用户部分");
}
else if((bData&0x00c0)==0x0080) {
strcat(Str,"10. . . . . . ,所有方向都需要ISDN用户部分");
}
else {
strcat(Str,"11. . . . . . ,备用");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . . . . ");
if((bData&0x0100)==0) {
strcat(Str,"0. . . . . . . . ,始发接入非ISDN");
}
else {
strcat(Str,"1. . . . . . . . ,始发接入ISDN");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . . ");
if((bData&0x0400)==0) {
strcat(Str,"00. . . . . . . . . ,无SCCP方式指示");
}
else if((bData&0x0400)==0x0200) {
strcat(Str,"01. . . . . . . . . ,无连接方式可用");
}
else if((bData&0x0400)==0x0400) {
strcat(Str,"10. . . . . . . . . ,面向连接方式可用");
}
else {
strcat(Str,"11. . . . . . . . . ,无连接和面向连接方式可用");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . X. . . . . . . . . . . ,备用");
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," XXXX. . . . . . . . . . . . ,备用");
if(YOrNTxt==true)
strcat(word1_TotalDataStr,Str);
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
return(nDrawY);
}
/****************************************************************************
* *
* FUNCTION : DrawOFCINStr(BYTE) *
* PURPOSE : Get One Byte Data's Str
*
****************************************************************************/
int DrawOFCINStr(CMsgText& msgText,BYTE bData,int nDrawX,int nDrawY,int DltY,float PtRate,bool YOrNTxt)
{
char Str[70];
strcpy(word1_TotalDataStr,"");
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
nDrawY+=DltY;
strcpy(Str," . . . . . . ");
if((bData&0x03)==0) {
strcat(Str,"00,非闭合用户群(CUG)呼叫");
}
else if((bData&0x03)==1) {
strcat(Str,"01,备用");
}
else if((bData&0x03)==2) {
strcat(Str,"10,闭合用户群呼叫,允许出接口");
}
else {
strcat(Str,"11,闭合用户群呼叫,不允许出接口");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . . ");
if((bData&0x04)==0) {
strcat(Str,"0. .,将不发送附加信息");
}
else {
strcat(Str,"1. . ,将在简单分段中发送附加信息");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . XXX. . . . ,备用");
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str,"");
if((bData&0x80)==0) {
strcat(Str," 0. . . . . . . ,未请求被连接线识别");
}
else {
strcat(Str," 1. . . . . . . ,请求被连接线识别");
}
if(YOrNTxt==true)
strcat(word1_TotalDataStr,Str);
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
return(nDrawY);
}
/****************************************************************************
* *
* FUNCTION : DrawFOCINStr(BYTE) *
* PURPOSE : Get One Byte Data's Str
*
****************************************************************************/
int DrawREDINStr(CMsgText& msgText,WORD bData,int nDrawX,int nDrawY,int DltY,float PtRate,bool YOrNTxt)
{
char Str[70],Str1[30];
strcpy(word1_TotalDataStr,"");
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
nDrawY+=DltY;
strcpy(Str," . . . . . . . . . . . . . ");
if((bData&0x0007)==0) {
strcat(Str,"000,无改发");
}
else if((bData&0x0007)==1) {
strcat(Str,"001,呼叫重新选路");
}
else if((bData&0x0007)==2) {
strcat(Str,"010,呼叫重新选路,所有的改发信息提供限制");
}
else if((bData&0x0007)==3) {
strcat(Str,"011,呼叫变更");
}
else if((bData&0x0007)==4) {
strcat(Str,"100,呼叫变更,所有的改发信息提供限制");
}
else if((bData&0x0007)==5) {
strcat(Str,"101,呼叫重新选路,改发号码提供限制");
}
else if((bData&0x0007)==6) {
strcat(Str,"110,呼叫变更,改发号码提供限制");
}
else {
strcat(Str,"111,备用");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . . . . . . . . . X. . . ,备用");
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
nDrawY+=DltY;
strcpy(Str," . . . . . . . . ");
if((bData&0x00f0)==0) {
strcat(Str,"0000. . . . ,原改发原因未知/不可用");
}
else if((bData&0x00f0)==0x10) {
strcat(Str,"0001. . . . ,原改发原因为用户忙");
}
else if((bData&0x00f0)==0x20) {
strcat(Str,"0010. . . . ,原改发原因为无应答");
}
else if((bData&0x00f0)==0x30) {
strcat(Str,"0011. . . . ,原改发原因为无条件");
}
else {
strcat(Str,"0100. . . . - . . . . . . . . 1111. . . . ,备用");
}
if(YOrNTxt==true)
{strcat(word1_TotalDataStr,Str);
strcat(word1_TotalDataStr,"\r\n");
strcat(word1_TotalDataStr," ");}
else
msgText.AddString(nDrawX*PtRate ,nDrawY*PtRate,Str,strlen(Str));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -