📄 ss7tranpar5.cpp
字号:
#include "stdafx.h"
#include "ss7tran.h"
#include "ss7tranDlg.h"
#include "isup_def.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern char strchangehex(CString str1);
void CSs7tranDlg:: tranpar_Service_activation(CString str)
{
}
void CSs7tranDlg:: tranpar_Signalling_point_code(CString str)
{
CString str1;
CString strtemp;
CString stroutput;
CListBox *pCtrl = (CListBox *)GetDlgItem( IDC_LIST1 ) ;
stroutput=str;
stroutput+=":Signalling point code";
pCtrl->AddString(stroutput);
/*
for(i=0;i<2;i++)
{
str1=str.Left(1);
str.Delete(0,1);
lpar=strchangehex(str1);
lpar*=256;
}
stroutput=" byte2-1 :Point code";
pCtrl->AddString(stroutput);
tt=0x2000;
for(i=0;i<14;i++)
{
ltemp=(lpar&tt)>>(14-i);
switch (ltemp&1)
{
if (i==0)
stroutput+=" ";
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
strtemp.Format("%d",lpar);
stroutput+="__";
stroutput+=strtemp;
pCtrl->AddString(stroutput);
*/
}
void CSs7tranDlg:: tranpar_Subsequent_number(CString str)
{
long lpar;
long ltemp,tt;
long i;
long j;
long ladroande;
CString str1;
CString strtemp;
CString stroutput;
CListBox *pCtrl = (CListBox *)GetDlgItem( IDC_LIST1 ) ;
ladroande=0;
stroutput=str;
stroutput+=":Subsequent number";
pCtrl->AddString(stroutput);
str1=str.Left(2);
str.Delete(0,2);
lpar=strchangehex(str1);
stroutput=strbithead;
stroutput=" bit GFEDCBA :Spare";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
tt=0x40;
for(i=0;i<7;i++)
{
ltemp=(lpar&tt)>>(6-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput="bit F :Odd/even indicator";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
if ((lpar&0x80)==0)
{
stroutput+="0__even number of address signals";
}
else
{
stroutput+="1__odd number of address signals";
ladroande=1;
}
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_SuspendORResume_indicators(CString str)
{
long lpar;
long ltemp,tt;
long i;
CString str1;
CString strtemp;
CString stroutput;
CListBox *pCtrl = (CListBox *)GetDlgItem( IDC_LIST1 ) ;
stroutput=str;
stroutput+=":Suspend/resume indicator";
pCtrl->AddString(stroutput);
str1=str.Left(2);
str.Delete(0,2);
lpar=strchangehex(str1);
stroutput=strbithead;
stroutput+="bit A :Suspend/resume indicator";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
if ((lpar&1)==0)
{
stroutput+="0__ISDN subscriber initiated";
}
else
stroutput+="1__network initiated";
pCtrl->AddString(stroutput);
lpar>>=1;
stroutput=strbithead;
stroutput+="bit HGFEDCB :Spare";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
tt=0x40;
for(i=0;i<7;i++)
{
ltemp=(lpar&tt)>>(6-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
pCtrl->AddString(stroutput);
}
void CSs7tranDlg:: tranpar_Transit_network_selection(CString str)
{
}
void CSs7tranDlg:: tranpar_Transmission_medium_requirement(CString str)
{
long lpar;
long ltemp,tt;
long i;
CString str1;
CString strtemp;
CString stroutput;
CListBox *pCtrl = (CListBox *)GetDlgItem( IDC_LIST1 ) ;
stroutput=str;
stroutput+=":Transmission medium requirement";
pCtrl->AddString(stroutput);
str1=str.Left(2);
str.Delete(0,2);
lpar=strchangehex(str1);
stroutput=strbithead;
stroutput+="bit HGFEDCBA:Transmission medium requirement";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
tt=0x80;
for(i=0;i<8;i++)
{
ltemp=(lpar&tt)>>(7-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
if (lpar==0)
stroutput+="__speech";
else if (lpar==1)
stroutput+="__spare";
else if (lpar==2)
stroutput+="__64 kbit/s unrestricted";
else if (lpar==3)
stroutput+="__3.1 kHz audio";
else if (lpar==4)
stroutput+="__reserved for alternate speech (service 2)/64 kbit/s unrestricted (service 1) ";
else if (lpar==5)
stroutput+="__reserved for alternate 64 kbit/s unrestricted (service 1)/speech (service 2) ";
else if (lpar==6)
stroutput+="__64 kbit/s preferred";
else if (lpar==7)
stroutput+="__2 × 64 kbit/s unrestricted";
else if (lpar==8)
stroutput+="__384 kbit/s unrestricted";
else if (lpar==9)
stroutput+="__1536 kbit/s unrestricted";
else if (lpar==10)
stroutput+="__1920 kbit/s unrestricted";
else
stroutput+="__spare";
pCtrl->AddString(stroutput);
}
void CSs7tranDlg:: tranpar_Transmission_medium_requirement_prime(CString str)
{
long lpar;
long ltemp,tt;
long i;
CString str1;
CString strtemp;
CString stroutput;
CListBox *pCtrl = (CListBox *)GetDlgItem( IDC_LIST1 ) ;
stroutput=str;
stroutput+=":Transmission medium requirement";
pCtrl->AddString(stroutput);
str1=str.Left(2);
str.Delete(0,2);
lpar=strchangehex(str1);
stroutput=strbithead;
stroutput+="bit HGFEDCBA:Transmission medium requirement";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
tt=0x80;
for(i=0;i<8;i++)
{
ltemp=(lpar&tt)>>(7-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
if (lpar==0)
stroutput+="__speech";
else if (lpar==1)
stroutput+="__spare";
else if (lpar==2)
stroutput+="__64 kbit/s unrestricted";
else if (lpar==3)
stroutput+="__3.1 kHz audio";
else if (lpar==4)
stroutput+="__reserved for alternate speech (service 2)/64 kbit/s unrestricted (service 1) ";
else if (lpar==5)
stroutput+="__reserved for alternate 64 kbit/s unrestricted (service 1)/speech (service 2) ";
else if (lpar==6)
stroutput+="__reserved for 64 kbit/s preferred";
else if (lpar==7)
stroutput+="__reserved for 2 × 64 kbit/s unrestricted";
else if (lpar==8)
stroutput+="__reserved for 384 kbit/s unrestricted";
else if (lpar==9)
stroutput+="__reserved for 1536 kbit/s unrestricted";
else if (lpar==10)
stroutput+="__reserved for 1920 kbit/s unrestricted";
else
stroutput+="__spare";
pCtrl->AddString(stroutput);
}
void CSs7tranDlg:: tranpar_Transmission_medium_used(CString str)
{
long lpar;
long ltemp,tt;
long i;
CString str1;
CString strtemp;
CString stroutput;
CListBox *pCtrl = (CListBox *)GetDlgItem( IDC_LIST1 ) ;
stroutput=str;
stroutput+=":Transmission medium requirement";
pCtrl->AddString(stroutput);
str1=str.Left(2);
str.Delete(0,2);
lpar=strchangehex(str1);
stroutput=strbithead;
stroutput+="bit H-A:Transmission medium requirement";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
tt=0x80;
for(i=0;i<8;i++)
{
ltemp=(lpar&tt)>>(7-i);
switch (ltemp&1)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
default:
break;
}
tt>>=1;
}
if (lpar==0)
stroutput+="__speech";
else if (lpar==1)
stroutput+="__spare";
else if (lpar==2)
stroutput+="__64 kbit/s unrestricted";
else if (lpar==3)
stroutput+="__3.1 kHz audio";
else if (lpar==4)
stroutput+="__reserved for alternate speech (service 2)/64 kbit/s unrestricted (service 1) ";
else if (lpar==5)
stroutput+="__reserved for alternate 64 kbit/s unrestricted (service 1)/speech (service 2) ";
else if (lpar==6)
stroutput+="__reserved for 64 kbit/s preferred";
else if (lpar==7)
stroutput+="__reserved for 2 × 64 kbit/s unrestricted";
else if (lpar==8)
stroutput+="__reserved for 384 kbit/s unrestricted";
else if (lpar==9)
stroutput+="__reserved for 1536 kbit/s unrestricted";
else if (lpar==10)
stroutput+="__reserved for 1920 kbit/s unrestricted";
else
stroutput+="__spare";
pCtrl->AddString(stroutput);
}
void CSs7tranDlg:: tranpar_User_service_information(CString str)
{
}
void CSs7tranDlg:: tranpar_User_service_information_prime(CString str)
{
}
void CSs7tranDlg:: tranpar_User_teleservice_information(CString str)
{
}
void CSs7tranDlg:: tranpar_User_to_user_indicators(CString str)
{
long lpar;
long ltemp;
CString stroutput;
CString str1;
CListBox *pCtrl = (CListBox *)GetDlgItem( IDC_LIST1 ) ;
stroutput=str;
stroutput+=":User-to-user indicators";
pCtrl->AddString(stroutput);
str1=str.Left(2);
str.Delete(0,2);
lpar=strchangehex(str1);
stroutput=strbithead;
stroutput+="bit A:Type";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&1);
lpar>>=1;
switch (ltemp)
{
case 0:
stroutput+="0__request";
break;
case 1:
stroutput+="1__response";
break;
default:
break;
}
pCtrl->AddString(stroutput);
if (ltemp==0)
{
stroutput=strbithead;
stroutput+="bit CB:Service 1";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&3);
lpar>>=2;
switch (ltemp)
{
case 0:
stroutput+="00__no information";
break;
case 1:
stroutput+="01__spare";
break;
case 2:
stroutput+="10__request, not essential";
break;
case 3:
stroutput+="11__request, essential";
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput+="bit ED:Service 2";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&3);
lpar>>=2;
switch (ltemp)
{
case 0:
stroutput+="00__no information";
break;
case 1:
stroutput+="01__spare";
break;
case 2:
stroutput+="10__request, not essential";
break;
case 3:
stroutput+="11__request, essential";
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput+="bit FG:Service 3";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&3);
lpar>>=2;
switch (ltemp)
{
case 0:
stroutput+="00__no information";
break;
case 1:
stroutput+="01__spare";
break;
case 2:
stroutput+="10__request, not essential";
break;
case 3:
stroutput+="11__request, essential";
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput+="bit H:Spare";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&1);
switch (ltemp)
{
case 0:
stroutput+="0";
break;
case 1:
stroutput+="1";
break;
}
pCtrl->AddString(stroutput);
}
else
{
stroutput=strbithead;
stroutput+="bit CB:Service 1";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&3);
lpar>>=2;
switch (ltemp)
{
case 0:
stroutput+="00__no information";
break;
case 1:
stroutput+="01__not provided";
break;
case 2:
stroutput+="10__provided";
break;
case 3:
stroutput+="11__spare";
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput="bit ED:Service 2";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&3);
lpar>>=2;
switch (ltemp)
{
case 0:
stroutput+="00__no information";
break;
case 1:
stroutput+="01__not provided";
break;
case 2:
stroutput+="10__provided";
break;
case 3:
stroutput+="11__spare";
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput+="bit FG:Service 3";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&3);
lpar>>=2;
switch (ltemp)
{
case 0:
stroutput+="00__no information";
break;
case 1:
stroutput+="01__not provided";
break;
case 2:
stroutput+="10__provided";
break;
case 3:
stroutput+="11__spare";
break;
}
pCtrl->AddString(stroutput);
stroutput=strbithead;
stroutput+="bit H:Network discard indicator";
pCtrl->AddString(stroutput);
stroutput=strtranhead;
ltemp=(lpar&1);
switch (ltemp)
{
case 0:
stroutput+="0__no information";
break;
case 1:
stroutput+="1__user-to-user information discarded by the network";
break;
}
pCtrl->AddString(stroutput);
}
}
void CSs7tranDlg:: tranpar_User_to_user_information(CString str)
{
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -