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

📄 tasn.cpp

📁 李刚 请赶快放开我的权限 我上载的源码都是很精湛的,请查阅,qing请加我 li_xue_ming@msn.com必要的话可以和我在线沟通
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	CAsnGraphicString cString2;

	CAsnBuffer b;
	if ( cString.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cString2.Serialize( b, FALSE ) )
		cout << "string2 is : " << (LPASNCHARTYPE)cString2 << endl;

	WaitForNextTest( "CAsnGraphicString has been tested ! " );
}

void CTestAsn::TestAsnIa5String()
{
	cout << "Test CAsnIa5String *************************************" << endl;

	CAsnIa5String cString("asdfasdfasdf"), cString2;
	cout << "string is : " << (LPASNCHARTYPE)cString << endl;

	CAsnBuffer b;
	if ( cString.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cString2.Serialize( b, FALSE ) )
		cout << "string2 is : " << (LPASNCHARTYPE)cString2 << endl;

	WaitForNextTest( "CAsnIa5String has been tested ! " );
}

void CTestAsn::TestAsnInteger()
{
	cout << "Test CAsnInteger *************************************" << endl;

	CAsnInteger cInt;
	cInt = 2;
	cout << "int1 is : " << (ASNINTEGERTYPE)cInt << endl;

	CAsnInteger cInt2( cInt );
	cout << "int2 is : " << (ASNINTEGERTYPE)cInt2 << endl;

	CAsnInteger cInt3( 3 );
	ASNINTEGERTYPE tInt3;
	cInt3.Get( tInt3 );
	cout << "int3 is : " << tInt3 << endl;

	CAsnInteger cInt4;
    cInt4.InstallLimitedValues( 3, 1, 2, 3 );
	cInt4 = 1;
	cout << "int4 is : " << cInt4.Get() << endl;

	CAsnInteger cInt5(5);
	cout << "int5 is : " << cInt5.Get() << endl;

	cInt5 = cInt4;
	cout << "int5 = int4, int5 is : " << cInt5.Get() << endl;

	cInt4 = cInt3;
	cout << "int4 = int3, int4 is : " << cInt4.Get() << endl;

	cout << "int1 == int3 : " << (cInt == cInt3) << endl;
	cout << "int1 != int3 : " << (cInt != cInt3) << endl;
	cout << "int1 < int3 : " << (cInt < (ASNINTEGERTYPE)cInt3) << endl;
	cout << "int1 > int3 : " << ((ASNINTEGERTYPE)cInt > (ASNINTEGERTYPE)cInt3) << endl;
	cout << "int1 >= int3 : " << (cInt >= cInt3) << endl;
	cout << "int1 <= int3 : " << (cInt <= cInt3) << endl;

	cInt += cInt3;
	cout << "int1 += int3, int1 is : " << (ASNINTEGERTYPE)cInt << endl;

	cInt -= cInt5;
	cout << "int1 -= int5, int1 is : " << (ASNINTEGERTYPE)cInt << endl;

	CAsnBuffer b;
	if ( cInt4.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cInt5.Serialize( b, FALSE ) )
		cout << "int5 is : " << (ASNINTEGERTYPE)cInt5 << endl;

	WaitForNextTest( "CAsnInteger has been tested ! " );
}

void CTestAsn::TestAsnNull()
{
	cout << "Test CAsnNull *************************************" << endl;

	CAsnNull cNull, cNull2;
	CAsnBuffer b;
	if ( cNull.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cNull2.Serialize( b, FALSE ) )
		cout << "null2 is decoded " << endl;

	WaitForNextTest( "CAsnIa5String has been tested ! " );
}

void CTestAsn::TestAsnNumericString()
{
	cout << "Test CAsnNumericString *************************************" << endl;

	CAsnNumericString cString("asdfasdfasdf"), cString2;
	cout << "string is : " << (LPASNCHARTYPE)cString << endl;

	CAsnBuffer b;
	if ( cString.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cString2.Serialize( b, FALSE ) )
		cout << "string2 is : " << (LPASNCHARTYPE)cString2 << endl;

	WaitForNextTest( "CAsnNumericString has been tested ! " );
}

void CTestAsn::TestAsnObjectDescriptor()
{
	cout << "Test CAsnObjectDescriptor *************************************" << endl;

	CAsnObjectDescriptor cString("asdfasdfasdf"), cString2;
	cout << "string is : " << (LPASNCHARTYPE)cString << endl;

	CAsnBuffer b;
	if ( cString.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cString2.Serialize( b, FALSE ) )
		cout << "string2 is : " << (LPASNCHARTYPE)cString2 << endl;

	WaitForNextTest( "CAsnObjectDescriptor has been tested ! " );
}

void CTestAsn::TestAsnObjectIdentifier()
{
	cout << "Test CAsnObjectIdentifier *************************************" << endl;

	CString sStr;
	ASNOIDTYPE oid[] = { 2, 1, 3933, 222, 3 };
	CHAR str[] = "0:1:34:333";
 
	CAsnObjectIdentifier cOid1;
	cOid1.Set( 4, 1, 0, 234, 5 );
	cOid1.Get( sStr );
	cout << "oid1 is : " << sStr << endl;

	CAsnObjectIdentifier cOid2( oid, 5 );
	cOid2.Get( sStr );
	cout << "oid2 is : " << sStr << endl;

	CAsnObjectIdentifier cOid3( str );
	cout << "oid3 is : " << cOid3[0] << ':' << cOid3[1] << ':' 
		<< cOid3[2] << ':' << cOid3[3] << endl;

	cOid3[2] = 123;
	cout << "oid3[2] = 123, now oid3 is : " << cOid3[0] << ':' 
		<< cOid3[1] << ':' << cOid3[2] << ':' << cOid3[3] << endl;

	CAsnObjectIdentifier cOid4;
	cOid4.Set( sStr );
	cOid4.Get( oid, cOid4.GetSize() );
	cout << "oid4 is : ";
	for ( INT i = 0; i < cOid4.GetSize()-1; i ++ )
		cout << cOid4[i] << ':';
	cout << cOid4[cOid4.GetSize()-1] << endl;

	cOid3.Get( str, strlen( str ) );
	cout << "oid3 is : " << str << endl;

	cout << "oid1 == oid2 : " << ( cOid1 == cOid2 ) << endl;
	cout << "oid1 != oid3 : " << ( cOid1 != cOid3 ) << endl;
	cout << "oid1 < oid4 : " << ( cOid1 < cOid4 ) << endl;
	cout << "oid2 > oid3 : " << ( cOid2 > cOid3 ) << endl;
	cout << "oid3 >= oid4 : " << ( cOid3 >= cOid4 ) << endl;
	cout << "oid3 <= oid4 : " << ( cOid3 <= cOid4 ) << endl;

	cout << "oid1 == str : " << ( cOid1 == str ) << endl;
	cout << "oid1 != str : " << ( cOid1 != str ) << endl;
	cout << "oid1 < str : " << ( cOid1 < str ) << endl;
	cout << "oid2 > str : " << ( cOid2 > str ) << endl;
	cout << "oid3 >= str : " << ( cOid3 >= str ) << endl;
	cout << "oid3 <= str : " << ( cOid3 <= str ) << endl;

	CAsnBuffer b;
	cout << "oid1 Encode : ";
	if ( cOid1.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	cout << "oid2 Decode : ";
	if ( cOid2.Serialize( b, FALSE ) )
	{
		cOid2.Get( sStr );
		cout << sStr << endl;
        cOid2.Dump( g_OmcDump );
	}

	WaitForNextTest( "CAsnObjectIdentifier has been tested ! " );
}

void CTestAsn::TestAsnOctetString()
{
	cout << "Test CAsnOctetString *************************************" << endl;

	ASNOCTETTYPE octet[] = { 12, 34, 45, 67, 89 };
	ASNOCTETTYPE octetstr[5];

	CAsnOctetString cOctet1( octet, 5 );
	cout << "octet1 is : " << (UINT)cOctet1[0] << ' ' 
		<< (UINT)cOctet1[1] << ' ' << (UINT)cOctet1[2] << ' ' 
		<< (UINT)cOctet1[3] << ' ' << (UINT)cOctet1[4] << endl;

	CAsnOctetString cOctet2( cOctet1 );
	cout << "octet2 is : " << (UINT)cOctet2[0] << ' ' 
		<< (UINT)cOctet2[1] << ' ' << (UINT)cOctet2[2] << ' ' 
		<< (UINT)cOctet2[3] << ' ' << (UINT)cOctet2[4] << endl;

	cOctet2[3] = 10;
	cout << "octet2[3] = 10, octet2 is : " << (UINT)cOctet2[0] << ' ' 
		<< (UINT)cOctet2[1] << ' ' << (UINT)cOctet2[2] << ' ' 
		<< (UINT)cOctet2[3] << ' ' << (UINT)cOctet2[4] << endl;

	cOctet2.Get( octetstr, 5 );
	cout << "octetstr is : ";
	for ( INT i = 0; i < 4; i ++ )
		cout << (UINT)cOctet2[i] << ' ';
	cout << (UINT)cOctet2[4] << endl;

	cout << "octet1 == octet2 : " << ( cOctet1 == cOctet2 ) << endl;

	CString cString("asdfasdfasdfasdf");
	cout << cString << endl;
	cOctet1.Set( cString );
	cOctet1.Dump( g_OmcDump );
	CString cString2;
	cOctet1.Get( cString2 );
	cout << cString2 << endl;

	CAsnBuffer b;
	if ( cOctet1.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cOctet2.Serialize( b, FALSE ) )
		cout << "octet2 is : " << (UINT)cOctet2[0] << ' ' 
		<< (UINT)cOctet2[1] << ' ' << (UINT)cOctet2[2] << ' ' 
		<< (UINT)cOctet2[3] << ' ' << (UINT)cOctet2[4] << endl;

	WaitForNextTest( "CAsnObjectIdentifier has been tested ! " );
}

void CTestAsn::TestPrintableString()
{
	cout << "Test CAsnPrintableString *************************************" << endl;

	CAsnPrintableString cString("asdfasdfasdf"), cString2;
	cout << "string is : " << (LPASNCHARTYPE)cString << endl;

	CAsnBuffer b;
	if ( cString.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cString2.Serialize( b, FALSE ) )
		cout << "string2 is : " << (LPASNCHARTYPE)cString2 << endl;

	WaitForNextTest( "CAsnPrintableString has been tested ! " );
}

void CTestAsn::TestAsnReal()
{
	cout << "Test CAsnReal *************************************" << endl;
	
    CAsnReal r1, r2;
    r1.Set( 23.345f );
    r2 = r1;
    cout << "r1 : " << r1.Get() << endl;
    cout << "r2 : " << (ASNREALTYPE)r2 << endl;
    cout << "r1 == r2 : " << ( r1 == r2 ) << endl;

    CAsnReal r3( -23.045f );
    ASNREALTYPE tr3;
    r3.Get( tr3 );
    cout << "r3 : " << tr3 << endl;

    CAsnBuffer b;
    cout << "r1 Encode : " << endl;
    if ( r1.Serialize( b, TRUE ) )
    {
        b.Dump( g_OmcDump );
    }
    cout << "r4 Decode : " << endl;
    CAsnReal r4;
    if ( r4.Serialize( b, FALSE ) )
    {
        cout << "r4 : " << r4.Get() << endl;
        r4.Dump( g_OmcDump );
    }

    WaitForNextTest( "CAsnReal has been tested ! " );
}

void CTestAsn::TestTeletexString()
{
	cout << "Test CAsnTeletexString *************************************" << endl;

	CAsnTeletexString cString("asdfasdfasdf"), cString2;
	cout << "string is : " << (LPASNCHARTYPE)cString << endl;

	CAsnBuffer b;
	if ( cString.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cString2.Serialize( b, FALSE ) )
		cout << "string2 is : " << (LPASNCHARTYPE)cString2 << endl;

	WaitForNextTest( "CAsnTeletexString has been tested ! " );
}

void CTestAsn::TestUtcTime()
{
}

void CTestAsn::TestAsnVideotexString()
{
	cout << "Test CAsnVideotexString *************************************" << endl;

	CAsnVideotexString cString("asdfasdfasdf"), cString2;
	cout << "string is : " << (LPASNCHARTYPE)cString << endl;

	CAsnBuffer b;
	if ( cString.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cString2.Serialize( b, FALSE ) )
		cout << "string2 is : " << (LPASNCHARTYPE)cString2 << endl;

	WaitForNextTest( "CAsnVideotexString has been tested ! " );
}

void CTestAsn::TestVisibleString()
{
	cout << "Test CAsnVisibleString *************************************" << endl;

	CAsnVisibleString cString("asdfasdfasdf"), cString2;
	cout << "string is : " << (LPASNCHARTYPE)cString << endl;

	CAsnBuffer b;
	if ( cString.Serialize( b, TRUE ) )
    {
		b.Dump( g_OmcDump );
    }
	if ( cString2.Serialize( b, FALSE ) )
		cout << "string2 is : " << (LPASNCHARTYPE)cString2 << endl;

	WaitForNextTest( "CAsnVisibleString has been tested ! " );
}

void CTestAsn::TestAsnChoice()
{
}

void CTestAsn::TestAsnSequence()
{
}

void CTestAsn::TestAsnSequenceOf()
{
}

void CTestAsn::TestAsnSet()
{
}

void CTestAsn::TestAsnSetOf()
{
}

⌨️ 快捷键说明

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