📄 ss7tranpar3.cpp
字号:
pCtrl->AddString(stroutput);
str1=str.Left(2);
str.Delete(0,3);
lpar=strchangehex(str1);
stroutput=strbithead;
stroutput+="byte 2:";
stroutput+=str1;
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput+="bit BA :Screening indicator";
pCtrl->AddString(stroutput);
tt=0x2;
stroutput=strtranhead;
for(i=0;i<2;i++)
{
ltemp=(lpar&tt)>>(1-i);
switch (ltemp&1)
{
if (i==0)
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
switch (lpar&0x3)
{
case 0:
case 2:
stroutput+="__spare";
break;
case 1:
stroutput+="__user provided, verified and passed";
break;
case 3:
stroutput+="__network provided";
break;
default:
break;
}
pCtrl->AddString(stroutput);
lpar>>=2;
stroutput=strbithead;
stroutput+="bit DC :Address presentation restricted (Pres. Restric.) indicator";
pCtrl->AddString(stroutput);
tt=0x2;
stroutput=strtranhead;
for(i=0;i<2;i++)
{
ltemp=(lpar&tt)>>(1-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
switch (lpar&0x3)
{
case 0:
stroutput+="__presentation allowed";
break;
case 1:
stroutput+="__presentation restricted";
break;
case 2:
stroutput+="__address not available";
break;
case 3:
stroutput+="__spare";
break;
default:
break;
}
pCtrl->AddString(stroutput);
lpar>>=2;
stroutput=strbithead;
stroutput+="bit GHE :Numbering plan Ind.";
pCtrl->AddString(stroutput);
tt=0x4;
stroutput=strtranhead;
for(i=0;i<3;i++)
{
ltemp=(lpar&tt)>>(2-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
switch (lpar&0x7)
{
case 0:
case 2:
case 7:
stroutput+="__spare";
break;
case 1:
stroutput+="__ISDN (Telephony) numbering plan (Recommendation E.164)";
break;
stroutput+="__spare";
break;
case 3:
stroutput+="__Data numbering plan (Recommendation X.121)";
break;
case 4:
stroutput+="__Telex numbering plan (Recommendation F.69)";
break;
case 5:
stroutput+="__reserved for national use";
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput+="bit F :Internal network number indicator (INN)";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
if ((lpar&0x8)==0)
{
stroutput+="0__routing to internal number allowed";
}
else
stroutput+="1__routing to internal number not allowed";
pCtrl->AddString(stroutput);
long j;
stroutput=strbithead;
stroutput+="byte 3-byte end:";
stroutput+=str;
stroutput+="__address signal";
pCtrl->AddString(stroutput);
long addressnum;
addressnum=0;
for(j=0;j<100;j++)
{
str1=str.Left(2);
str.Delete(0,2);
if (str.Find(",")!=-1)
str.Delete(0,1);
else
{
j=110;
}
lpar=strchangehex(str1);
stroutput=strtranhead;
strtemp.Format("address signal%d:",addressnum++);
stroutput+=strtemp;
//pCtrl->AddString(stroutput);
tt=0x8;
stroutput+=" ";
for(i=0;i<4;i++)
{
ltemp=(lpar&tt)>>(3-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
strtemp.Format("%d",lpar&0x0F);
stroutput+="__";
stroutput+=strtemp;
pCtrl->AddString(stroutput);
lpar>>=4;
stroutput=strtranhead;
strtemp.Format("address signal%d:",addressnum++);
stroutput+=strtemp;
//pCtrl->AddString(stroutput);
tt=0x8;
stroutput+=" ";
for(i=0;i<4;i++)
{
ltemp=(lpar&tt)>>(3-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
lpar&=0x0F;
strtemp.Format("%d",lpar);
stroutput+="__";
stroutput+=strtemp;
if ((j==110) && (ladroande==1))
{
stroutput+="(filled code)";
}
pCtrl->AddString(stroutput);
}
}
void CSs7tranDlg:: tranpar_MCID_request_indicator(CString str)
{
long lpar;
long ltemp,tt;
long i;
CString str1;
CString stroutput;
CListBox *pCtrl = (CListBox *)GetDlgItem( IDC_LIST1 ) ;
stroutput=str;
stroutput+=":MCID request indicators";
pCtrl->AddString(stroutput);
str1=str.Left(2);
str.Delete(0,2);
lpar=strchangehex(str1);
stroutput=strbithead;
stroutput+="bit A:MCID request indicator";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&1);
lpar>>=1;
switch (ltemp)
{
case 0:
stroutput+="0__MCID not requested";
break;
case 1:
stroutput+="1__MCID requested";
break;
default:
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput+="bit B:Holding indicator";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&1);
lpar>>=1;
switch (ltemp)
{
case 0:
stroutput+="0__Holding not requested";
break;
case 1:
stroutput+="1__Holding requested";
break;
default:
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput="bit HGFEDC :Spare";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
tt=0x20;
for(i=0;i<6;i++)
{
ltemp=(lpar&tt)>>(5-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
pCtrl->AddString(stroutput);
}
void CSs7tranDlg:: tranpar_MCID_response_indicator(CString str)
{
long lpar;
long ltemp,tt;
long i;
CString stroutput;
CString str1;
CListBox *pCtrl = (CListBox *)GetDlgItem( IDC_LIST1 ) ;
stroutput=str;
stroutput+=":MCID response indicators";
pCtrl->AddString(stroutput);
str1=str.Left(2);
str.Delete(0,2);
lpar=strchangehex(str1);
stroutput=strbithead;
stroutput+="bit A:MCID response indicator";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&1);
lpar>>=1;
switch (ltemp)
{
case 0:
stroutput+="0__MCID not included";
break;
case 1:
stroutput+="1__MCID included";
break;
default:
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput+="bit B:Hold provided indicator";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&1);
lpar>>=1;
switch (ltemp)
{
case 0:
stroutput+="0__Holding not provided";
break;
case 1:
stroutput+="1__Holding provided";
break;
default:
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput="bit HGFEDC :Spare";
pCtrl->AddString(stroutput);
tt=0x20;
for(i=0;i<6;i++)
{
ltemp=(lpar&tt)>>(5-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
pCtrl->AddString(stroutput);
}
void CSs7tranDlg:: tranpar_Message_compatibility_information(CString str)
{
}
void CSs7tranDlg:: tranpar_MLPP_precedence(CString str)
{
}
void CSs7tranDlg:: tranpar_Nature_of_connection_indicators(CString str)
{
long lpar;
long ltemp,tt;
long i;
CString str1;
CString stroutput;
CListBox *pCtrl = (CListBox *)GetDlgItem( IDC_LIST1 ) ;
stroutput=str;
stroutput+=":Nature of connection indicators";
pCtrl->AddString(stroutput);
str1=str.Left(2);
str.Delete(0,2);
lpar=strchangehex(str1);
stroutput=strbithead;
stroutput+="bit BA:Satellite indicator";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&2);
lpar>>=2;
switch (ltemp)
{
case 00:
stroutput+="00__no satellite circuit in the connection";
break;
case 1:
stroutput+="01__one satellite circuit in the connection";
break;
case 2:
stroutput+="10__two satellite circuits in the connection";
break;
case 3:
stroutput+="11__spare";
break;
default:
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput="bit DC:Continuity check indicator";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&2);
lpar>>=2;
switch (ltemp)
{
case 00:
stroutput+="00__continuity check not required";
break;
case 01:
stroutput+="01__continuity check required on this circuit";
break;
case 10:
stroutput+="10__continuity check performed on a previous circuit";
break;
case 11:
stroutput+="11__spare";
break;
default:
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput="bit E:Echo control device indicator";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&1);
lpar>>=1;
switch (ltemp)
{
case 0:
stroutput+="0__outgoing half echo control device not included";
break;
case 1:
stroutput+="1__outgoing half echo control device included";
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput+="bit HGF:Spare";
pCtrl->AddString(stroutput);
tt=0x4;
stroutput=strtranhead;
for(i=0;i<3;i++)
{
ltemp=(lpar&tt)>>(2-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
pCtrl->AddString(stroutput);
}
void CSs7tranDlg:: tranpar_Network_specific_facilities(CString str)
{
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -