os/boardsupport/haitest/bspsvs/suite/e32/src/T_TCommCapsV01Data.cpp
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
sl@0
     1
/*
sl@0
     2
* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). 
sl@0
     3
* All rights reserved.
sl@0
     4
* This component and the accompanying materials are made available
sl@0
     5
* under the terms of "Eclipse Public License v1.0"
sl@0
     6
* which accompanies this distribution, and is available
sl@0
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
sl@0
     8
*
sl@0
     9
* Initial Contributors:
sl@0
    10
* Nokia Corporation - initial contribution.
sl@0
    11
*
sl@0
    12
* Contributors:
sl@0
    13
*
sl@0
    14
* Description:
sl@0
    15
*
sl@0
    16
*/
sl@0
    17
sl@0
    18
#include "T_TCommCapsV01Data.h"
sl@0
    19
sl@0
    20
/*@{*/
sl@0
    21
_LIT(KStrNull,								" ");
sl@0
    22
sl@0
    23
_LIT(KCmdConstructor,						"new");
sl@0
    24
_LIT(KCmdDestructor,						"~");
sl@0
    25
_LIT(KCmdiDataBits,							"iDataBits");
sl@0
    26
_LIT(KCmdiFifo,								"iFifo");
sl@0
    27
_LIT(KCmdiHandshake,						"iHandshake");
sl@0
    28
_LIT(KCmdiParity,							"iParity");
sl@0
    29
_LIT(KCmdiRate,								"iRate");
sl@0
    30
_LIT(KCmdiSIR,								"iSIR");
sl@0
    31
_LIT(KCmdiSignals,							"iSignals");
sl@0
    32
_LIT(KCmdiStopBits,							"iStopBits");
sl@0
    33
sl@0
    34
_LIT(KFldExpected,							"expected");
sl@0
    35
sl@0
    36
_LIT(KLogError,								"Error=%d");
sl@0
    37
/*@}*/
sl@0
    38
sl@0
    39
_LIT(KStrKCapsData5,						"KCapsData5");
sl@0
    40
_LIT(KStrKCapsData6,						"KCapsData6");
sl@0
    41
_LIT(KStrKCapsData7,						"KCapsData7");
sl@0
    42
_LIT(KStrKCapsData8,						"KCapsData8");
sl@0
    43
const CDataWrapperBase::TEnumEntryTable	CT_TCommCapsV01Data::iEnumTableDataBits[] =
sl@0
    44
	{
sl@0
    45
//	Enum as a descriptor					Enum
sl@0
    46
	KStrKCapsData5,							KCapsData5,
sl@0
    47
	KStrKCapsData6,							KCapsData6,
sl@0
    48
	KStrKCapsData7,							KCapsData7,
sl@0
    49
	KStrKCapsData8,							KCapsData8,
sl@0
    50
	KStrNull,								-1
sl@0
    51
	};
sl@0
    52
sl@0
    53
_LIT(KStrKCapsHasFifo,						"KCapsHasFifo");
sl@0
    54
const CDataWrapperBase::TEnumEntryTable	CT_TCommCapsV01Data::iEnumTableFifo[] =
sl@0
    55
	{
sl@0
    56
//	Enum as a descriptor					Enum
sl@0
    57
	KStrKCapsHasFifo,						KCapsHasFifo,
sl@0
    58
	KStrNull,								-1
sl@0
    59
	};
sl@0
    60
sl@0
    61
_LIT(KStrKCapsObeyXoffSupported,			"KCapsObeyXoffSupported");
sl@0
    62
_LIT(KStrKCapsSendXoffSupported,			"KCapsSendXoffSupported");
sl@0
    63
_LIT(KStrKCapsObeyCTSSupported,				"KCapsObeyCTSSupported");
sl@0
    64
_LIT(KStrKCapsFailCTSSupported,				"KCapsFailCTSSupported");
sl@0
    65
_LIT(KStrKCapsObeyDSRSupported,				"KCapsObeyDSRSupported");
sl@0
    66
_LIT(KStrKCapsFailDSRSupported,				"KCapsFailDSRSupported");
sl@0
    67
_LIT(KStrKCapsObeyDCDSupported,				"KCapsObeyDCDSupported");
sl@0
    68
_LIT(KStrKCapsFailDCDSupported,				"KCapsFailDCDSupported");
sl@0
    69
_LIT(KStrKCapsFreeRTSSupported,				"KCapsFreeRTSSupported");
sl@0
    70
_LIT(KStrKCapsFreeDTRSupported,				"KCapsFreeDTRSupported");
sl@0
    71
_LIT(KStrKCapsObeyDTRSupported,				"KCapsObeyDTRSupported");
sl@0
    72
_LIT(KStrKCapsObeyRTSSupported,				"KCapsObeyRTSSupported");
sl@0
    73
const CDataWrapperBase::TEnumEntryTable	CT_TCommCapsV01Data::iEnumTableHandshake[] =
sl@0
    74
	{
sl@0
    75
//	Enum as a descriptor					Enum
sl@0
    76
	KStrKCapsObeyXoffSupported,				KCapsObeyXoffSupported,
sl@0
    77
	KStrKCapsSendXoffSupported,				KCapsSendXoffSupported,
sl@0
    78
	KStrKCapsObeyCTSSupported,				KCapsObeyCTSSupported,
sl@0
    79
	KStrKCapsFailCTSSupported,				KCapsFailCTSSupported,
sl@0
    80
	KStrKCapsObeyDSRSupported,				KCapsObeyDSRSupported,
sl@0
    81
	KStrKCapsFailDSRSupported,				KCapsFailDSRSupported,
sl@0
    82
	KStrKCapsObeyDCDSupported,				KCapsObeyDCDSupported,
sl@0
    83
	KStrKCapsFailDCDSupported,				KCapsFailDCDSupported,
sl@0
    84
	KStrKCapsFreeRTSSupported,				KCapsFreeRTSSupported,
sl@0
    85
	KStrKCapsFreeDTRSupported,				KCapsFreeDTRSupported,
sl@0
    86
	KStrKCapsObeyDTRSupported,				KCapsObeyDTRSupported,
sl@0
    87
	KStrKCapsObeyRTSSupported,				KCapsObeyRTSSupported,
sl@0
    88
	KStrNull,								-1
sl@0
    89
	};
sl@0
    90
sl@0
    91
_LIT(KStrKCapsParityNone,					"KCapsParityNone");
sl@0
    92
_LIT(KStrKCapsParityEven,					"KCapsParityEven");
sl@0
    93
_LIT(KStrKCapsParityOdd,					"KCapsParityOdd");
sl@0
    94
_LIT(KStrKCapsParityMark,					"KCapsParityMark");
sl@0
    95
_LIT(KStrKCapsParitySpace,					"KCapsParitySpace");
sl@0
    96
const CDataWrapperBase::TEnumEntryTable	CT_TCommCapsV01Data::iEnumTableParity[] =
sl@0
    97
	{
sl@0
    98
//	Enum as a descriptor					Enum
sl@0
    99
	KStrKCapsParityNone,					KCapsParityNone,
sl@0
   100
	KStrKCapsParityEven,					KCapsParityEven,
sl@0
   101
	KStrKCapsParityOdd,						KCapsParityOdd,
sl@0
   102
	KStrKCapsParityMark,					KCapsParityMark,
sl@0
   103
	KStrKCapsParitySpace,					KCapsParitySpace,
sl@0
   104
	KStrNull,								-1
sl@0
   105
	};
sl@0
   106
sl@0
   107
_LIT(KStrKCapsBps50,						"KCapsBps50");
sl@0
   108
_LIT(KStrKCapsBps75,						"KCapsBps75");
sl@0
   109
_LIT(KStrKCapsBps110,						"KCapsBps110");
sl@0
   110
_LIT(KStrKCapsBps134,						"KCapsBps134");
sl@0
   111
_LIT(KStrKCapsBps150,						"KCapsBps150");
sl@0
   112
_LIT(KStrKCapsBps300,						"KCapsBps300");
sl@0
   113
_LIT(KStrKCapsBps600,						"KCapsBps600");
sl@0
   114
_LIT(KStrKCapsBps1200,						"KCapsBps1200");
sl@0
   115
_LIT(KStrKCapsBps1800,						"KCapsBps1800");
sl@0
   116
_LIT(KStrKCapsBps2000,						"KCapsBps2000");
sl@0
   117
_LIT(KStrKCapsBps2400,						"KCapsBps2400");
sl@0
   118
_LIT(KStrKCapsBps3600,						"KCapsBps3600");
sl@0
   119
_LIT(KStrKCapsBps4800,						"KCapsBps4800");
sl@0
   120
_LIT(KStrKCapsBps7200,						"KCapsBps7200");
sl@0
   121
_LIT(KStrKCapsBps9600,						"KCapsBps9600");
sl@0
   122
_LIT(KStrKCapsBps19200,						"KCapsBps19200");
sl@0
   123
_LIT(KStrKCapsBps38400,						"KCapsBps38400");
sl@0
   124
_LIT(KStrKCapsBps57600,						"KCapsBps57600");
sl@0
   125
_LIT(KStrKCapsBps115200,					"KCapsBps115200");
sl@0
   126
_LIT(KStrKCapsBps230400,					"KCapsBps230400");
sl@0
   127
_LIT(KStrKCapsBps460800,					"KCapsBps460800");
sl@0
   128
_LIT(KStrKCapsBps576000,					"KCapsBps576000");
sl@0
   129
_LIT(KStrKCapsBps1152000,					"KCapsBps1152000");
sl@0
   130
_LIT(KStrKCapsBps4000000,					"KCapsBps4000000");
sl@0
   131
_LIT(KStrKCapsBps921600,					"KCapsBps921600");
sl@0
   132
_LIT(KStrKCapsBpsAutobaud,					"KCapsBpsAutobaud");
sl@0
   133
_LIT(KStrKCapsBpsSpecial,					"KCapsBpsSpecial");
sl@0
   134
const CDataWrapperBase::TEnumEntryTable	CT_TCommCapsV01Data::iEnumTableRate[] =
sl@0
   135
	{
sl@0
   136
//	Enum as a descriptor					Enum
sl@0
   137
	KStrKCapsBps50,							KCapsBps50,
sl@0
   138
	KStrKCapsBps75,							KCapsBps75,
sl@0
   139
	KStrKCapsBps110,						KCapsBps110,
sl@0
   140
	KStrKCapsBps134,						KCapsBps134,
sl@0
   141
	KStrKCapsBps150,						KCapsBps150,
sl@0
   142
	KStrKCapsBps300,						KCapsBps300,
sl@0
   143
	KStrKCapsBps600,						KCapsBps600,
sl@0
   144
	KStrKCapsBps1200,						KCapsBps1200,
sl@0
   145
	KStrKCapsBps1800,						KCapsBps1800,
sl@0
   146
	KStrKCapsBps2000,						KCapsBps2000,
sl@0
   147
	KStrKCapsBps2400,						KCapsBps2400,
sl@0
   148
	KStrKCapsBps3600,						KCapsBps3600,
sl@0
   149
	KStrKCapsBps4800,						KCapsBps4800,
sl@0
   150
	KStrKCapsBps7200,						KCapsBps7200,
sl@0
   151
	KStrKCapsBps9600,						KCapsBps9600,
sl@0
   152
	KStrKCapsBps19200,						KCapsBps19200,
sl@0
   153
	KStrKCapsBps38400,						KCapsBps38400,
sl@0
   154
	KStrKCapsBps57600,						KCapsBps57600,
sl@0
   155
	KStrKCapsBps115200,						KCapsBps115200,
sl@0
   156
	KStrKCapsBps230400,						KCapsBps230400,
sl@0
   157
	KStrKCapsBps460800,						KCapsBps460800,
sl@0
   158
	KStrKCapsBps576000,						KCapsBps576000,
sl@0
   159
	KStrKCapsBps1152000,					KCapsBps1152000,
sl@0
   160
	KStrKCapsBps4000000,					KCapsBps4000000,
sl@0
   161
	KStrKCapsBps921600,						KCapsBps921600,
sl@0
   162
	KStrKCapsBpsAutobaud,					KCapsBpsAutobaud,
sl@0
   163
	KStrKCapsBpsSpecial,					KCapsBpsSpecial,
sl@0
   164
	KStrNull,								-1
sl@0
   165
	};
sl@0
   166
sl@0
   167
_LIT(KStrKCapsSIR115kbps,					"KCapsSIR115kbps");
sl@0
   168
_LIT(KStrKCapsSIR2400bpsOnly,				"KCapsSIR2400bpsOnly");
sl@0
   169
_LIT(KStrKCapsSIR4Mbs,						"KCapsSIR4Mbs");
sl@0
   170
const CDataWrapperBase::TEnumEntryTable	CT_TCommCapsV01Data::iEnumTableSir[] =
sl@0
   171
	{
sl@0
   172
//	Enum as a descriptor					Enum
sl@0
   173
	KStrKCapsSIR115kbps,					KCapsSIR115kbps,
sl@0
   174
	KStrKCapsSIR2400bpsOnly,				KCapsSIR2400bpsOnly,
sl@0
   175
	KStrKCapsSIR4Mbs,						KCapsSIR4Mbs,
sl@0
   176
	KStrNull,								-1
sl@0
   177
	};
sl@0
   178
sl@0
   179
_LIT(KStrKCapsSignalCTSSupported,			"KCapsSignalCTSSupported");
sl@0
   180
_LIT(KStrKCapsSignalDSRSupported,			"KCapsSignalDSRSupported");
sl@0
   181
_LIT(KStrKCapsSignalDCDSupported,			"KCapsSignalDCDSupported");
sl@0
   182
_LIT(KStrKCapsSignalRNGSupported,			"KCapsSignalRNGSupported");
sl@0
   183
_LIT(KStrKCapsSignalRTSSupported,			"KCapsSignalRTSSupported");
sl@0
   184
_LIT(KStrKCapsSignalDTRSupported,			"KCapsSignalDTRSupported");
sl@0
   185
const CDataWrapperBase::TEnumEntryTable	CT_TCommCapsV01Data::iEnumTableSignals[] =
sl@0
   186
	{
sl@0
   187
//	Enum as a descriptor					Enum
sl@0
   188
	KStrKCapsSignalCTSSupported,			KCapsSignalCTSSupported,
sl@0
   189
	KStrKCapsSignalDSRSupported,			KCapsSignalDSRSupported,
sl@0
   190
	KStrKCapsSignalDCDSupported,			KCapsSignalDCDSupported,
sl@0
   191
	KStrKCapsSignalRNGSupported,			KCapsSignalRNGSupported,
sl@0
   192
	KStrKCapsSignalRTSSupported,			KCapsSignalRTSSupported,
sl@0
   193
	KStrKCapsSignalDTRSupported,			KCapsSignalDTRSupported,
sl@0
   194
	KStrNull,								-1
sl@0
   195
	};
sl@0
   196
sl@0
   197
_LIT(KStrKCapsStop1,						"KCapsStop1");
sl@0
   198
_LIT(KStrKCapsStop2,						"KCapsStop2");
sl@0
   199
const CDataWrapperBase::TEnumEntryTable	CT_TCommCapsV01Data::iEnumTableStopBits[] =
sl@0
   200
	{
sl@0
   201
//	Enum as a descriptor					Enum
sl@0
   202
	KStrKCapsStop1,							KCapsStop1,
sl@0
   203
	KStrKCapsStop2,							KCapsStop2,
sl@0
   204
	KStrNull,								-1
sl@0
   205
	};
sl@0
   206
sl@0
   207
//////////////////////////////////////////////////////////////////////
sl@0
   208
// Construction/Destruction
sl@0
   209
//////////////////////////////////////////////////////////////////////
sl@0
   210
sl@0
   211
CT_TCommCapsV01Data::CT_TCommCapsV01Data()
sl@0
   212
:	CDataWrapperBase()
sl@0
   213
,	iCommCaps(NULL)
sl@0
   214
	{
sl@0
   215
	}
sl@0
   216
sl@0
   217
CT_TCommCapsV01Data::~CT_TCommCapsV01Data()
sl@0
   218
/**
sl@0
   219
 * Public destructor
sl@0
   220
 */
sl@0
   221
	{
sl@0
   222
	DestroyData();
sl@0
   223
	}
sl@0
   224
sl@0
   225
void CT_TCommCapsV01Data::DestroyData()
sl@0
   226
	{
sl@0
   227
	delete iCommCaps;
sl@0
   228
	iCommCaps=NULL;
sl@0
   229
	}
sl@0
   230
sl@0
   231
TDes8* CT_TCommCapsV01Data::Descriptor()
sl@0
   232
/**
sl@0
   233
 * Return a pointer to the buffer
sl@0
   234
 *
sl@0
   235
 * @return	pointer to the buffer
sl@0
   236
 */
sl@0
   237
	{
sl@0
   238
	return iCommCaps;
sl@0
   239
	}
sl@0
   240
sl@0
   241
TAny* CT_TCommCapsV01Data::GetObject()
sl@0
   242
/**
sl@0
   243
 * Return a pointer to the object that the data wraps
sl@0
   244
 *
sl@0
   245
 * @return	pointer to the object that the data wraps
sl@0
   246
 */
sl@0
   247
	{
sl@0
   248
	return iCommCaps;
sl@0
   249
	}
sl@0
   250
sl@0
   251
TBool CT_TCommCapsV01Data::DoCommandL(const TTEFFunction& aCommand, const TTEFSectionName& aSection, const TInt aAsyncErrorIndex)
sl@0
   252
/**
sl@0
   253
 * Process a command read from the ini file
sl@0
   254
 *
sl@0
   255
 * @param aCommand			The command to process
sl@0
   256
 * @param aSection			The section in the ini containing data for the command
sl@0
   257
 * @param aAsyncErrorIndex	Command index for async calls to return errors to
sl@0
   258
 *
sl@0
   259
 * @return					ETrue if the command is processed
sl@0
   260
 *
sl@0
   261
 * @leave					System wide error
sl@0
   262
 */
sl@0
   263
	{
sl@0
   264
	TBool	ret=ETrue;
sl@0
   265
	TInt	err=KErrNone;
sl@0
   266
sl@0
   267
	if ( aCommand==KCmdConstructor )
sl@0
   268
		{
sl@0
   269
		err=DoCmdConstructor();
sl@0
   270
		}
sl@0
   271
	else if ( aCommand==KCmdDestructor )
sl@0
   272
		{
sl@0
   273
		DoCmdDestructor();
sl@0
   274
		}
sl@0
   275
	else if ( aCommand==KCmdiDataBits )
sl@0
   276
		{
sl@0
   277
		DoCmdiDataBits(aSection);
sl@0
   278
		}
sl@0
   279
	else if ( aCommand==KCmdiFifo )
sl@0
   280
		{
sl@0
   281
		DoCmdiFifo(aSection);
sl@0
   282
		}
sl@0
   283
	else if ( aCommand==KCmdiHandshake )
sl@0
   284
		{
sl@0
   285
		DoCmdiHandshake(aSection);
sl@0
   286
		}
sl@0
   287
	else if ( aCommand==KCmdiParity )
sl@0
   288
		{
sl@0
   289
		DoCmdiParity(aSection);
sl@0
   290
		}
sl@0
   291
	else if ( aCommand==KCmdiRate )
sl@0
   292
		{
sl@0
   293
		DoCmdiRate(aSection);
sl@0
   294
		}
sl@0
   295
	else if ( aCommand==KCmdiSIR )
sl@0
   296
		{
sl@0
   297
		DoCmdiSIR(aSection);
sl@0
   298
		}
sl@0
   299
	else if ( aCommand==KCmdiSignals )
sl@0
   300
		{
sl@0
   301
		DoCmdiSignals(aSection);
sl@0
   302
		}
sl@0
   303
	else if ( aCommand==KCmdiStopBits )
sl@0
   304
		{
sl@0
   305
		DoCmdiStopBits(aSection);
sl@0
   306
		}
sl@0
   307
	else
sl@0
   308
		{
sl@0
   309
		ret=CDataWrapperBase::DoCommandL(aCommand, aSection, aAsyncErrorIndex);
sl@0
   310
		}
sl@0
   311
sl@0
   312
	if ( err!=KErrNone )
sl@0
   313
		{
sl@0
   314
		ERR_PRINTF2(KLogError, err);
sl@0
   315
		SetError(err);
sl@0
   316
		}
sl@0
   317
sl@0
   318
	return ret;
sl@0
   319
	}
sl@0
   320
sl@0
   321
TCommCapsV01& CT_TCommCapsV01Data::GetCommCapsV01()
sl@0
   322
	{
sl@0
   323
	return (*iCommCaps)();
sl@0
   324
	}
sl@0
   325
sl@0
   326
TInt CT_TCommCapsV01Data::DoCmdConstructor()
sl@0
   327
	{
sl@0
   328
	DestroyData();
sl@0
   329
	TRAPD(err, iCommCaps=new (ELeave) TCommCaps());
sl@0
   330
	iCommCaps->FillZ();
sl@0
   331
	return err;
sl@0
   332
	}
sl@0
   333
sl@0
   334
void CT_TCommCapsV01Data::DoCmdDestructor()
sl@0
   335
	{
sl@0
   336
	DestroyData();
sl@0
   337
	}
sl@0
   338
sl@0
   339
void CT_TCommCapsV01Data::DoCmdiDataBits(const TDesC& aSection)
sl@0
   340
	{
sl@0
   341
	TUint	actual=GetCommCapsV01().iDataBits;
sl@0
   342
	INFO_PRINTF2(_L("iDataBits : 0x%X"), actual);
sl@0
   343
sl@0
   344
	TUint	expected;
sl@0
   345
	if ( GetOrFromConfig(aSection, KFldExpected(), iEnumTableDataBits, expected) )
sl@0
   346
		{
sl@0
   347
		if ( expected!=actual )
sl@0
   348
			{
sl@0
   349
			ERR_PRINTF1(_L("Expected Value does not match actual"));
sl@0
   350
			SetBlockResult(EFail);
sl@0
   351
			}
sl@0
   352
		}
sl@0
   353
	}
sl@0
   354
sl@0
   355
void CT_TCommCapsV01Data::DoCmdiFifo(const TDesC& aSection)
sl@0
   356
	{
sl@0
   357
	TUint	actual=GetCommCapsV01().iFifo;
sl@0
   358
	INFO_PRINTF2(_L("iFifo : 0x%X"), actual);
sl@0
   359
sl@0
   360
	TUint	expected;
sl@0
   361
	if ( GetOrFromConfig(aSection, KFldExpected(), iEnumTableFifo, expected) )
sl@0
   362
		{
sl@0
   363
		if ( expected!=actual )
sl@0
   364
			{
sl@0
   365
			ERR_PRINTF1(_L("Expected Value does not match actual"));
sl@0
   366
			SetBlockResult(EFail);
sl@0
   367
			}
sl@0
   368
		}
sl@0
   369
	}
sl@0
   370
sl@0
   371
void CT_TCommCapsV01Data::DoCmdiHandshake(const TDesC& aSection)
sl@0
   372
	{
sl@0
   373
	TUint	actual=GetCommCapsV01().iHandshake;
sl@0
   374
	INFO_PRINTF2(_L("iHandshake : 0x%X"), actual);
sl@0
   375
sl@0
   376
	TUint	expected;
sl@0
   377
	if ( GetOrFromConfig(aSection, KFldExpected(), iEnumTableHandshake, expected) )
sl@0
   378
		{
sl@0
   379
		if ( expected!=actual )
sl@0
   380
			{
sl@0
   381
			ERR_PRINTF1(_L("Expected Value does not match actual"));
sl@0
   382
			SetBlockResult(EFail);
sl@0
   383
			}
sl@0
   384
		}
sl@0
   385
	}
sl@0
   386
sl@0
   387
void CT_TCommCapsV01Data::DoCmdiParity(const TDesC& aSection)
sl@0
   388
	{
sl@0
   389
	TUint	actual=GetCommCapsV01().iParity;
sl@0
   390
	INFO_PRINTF2(_L("iParity : 0x%X"), actual);
sl@0
   391
sl@0
   392
	TUint	expected;
sl@0
   393
	if ( GetOrFromConfig(aSection, KFldExpected(), iEnumTableParity, expected) )
sl@0
   394
		{
sl@0
   395
		if ( expected!=actual )
sl@0
   396
			{
sl@0
   397
			ERR_PRINTF1(_L("Expected Value does not match actual"));
sl@0
   398
			SetBlockResult(EFail);
sl@0
   399
			}
sl@0
   400
		}
sl@0
   401
	}
sl@0
   402
sl@0
   403
void CT_TCommCapsV01Data::DoCmdiRate(const TDesC& aSection)
sl@0
   404
	{
sl@0
   405
	TUint	actual=GetCommCapsV01().iRate;
sl@0
   406
	INFO_PRINTF2(_L("iRate : 0x%X"), actual);
sl@0
   407
sl@0
   408
	TUint	expected;
sl@0
   409
	if ( GetOrFromConfig(aSection, KFldExpected(), iEnumTableRate, expected) )
sl@0
   410
		{
sl@0
   411
		if ( expected!=actual )
sl@0
   412
			{
sl@0
   413
			ERR_PRINTF1(_L("Expected Value does not match actual"));
sl@0
   414
			SetBlockResult(EFail);
sl@0
   415
			}
sl@0
   416
		}
sl@0
   417
	}
sl@0
   418
sl@0
   419
void CT_TCommCapsV01Data::DoCmdiSIR(const TDesC& aSection)
sl@0
   420
	{
sl@0
   421
	TUint	actual=GetCommCapsV01().iSIR;
sl@0
   422
	INFO_PRINTF2(_L("iSIR : 0x%X"), actual);
sl@0
   423
sl@0
   424
	TUint	expected;
sl@0
   425
	if ( GetOrFromConfig(aSection, KFldExpected(), iEnumTableSir, expected) )
sl@0
   426
		{
sl@0
   427
		if ( expected!=actual )
sl@0
   428
			{
sl@0
   429
			ERR_PRINTF1(_L("Expected Value does not match actual"));
sl@0
   430
			SetBlockResult(EFail);
sl@0
   431
			}
sl@0
   432
		}
sl@0
   433
	}
sl@0
   434
sl@0
   435
void CT_TCommCapsV01Data::DoCmdiSignals(const TDesC& aSection)
sl@0
   436
	{
sl@0
   437
	TUint	actual=GetCommCapsV01().iSignals;
sl@0
   438
	INFO_PRINTF2(_L("iSignals : 0x%X"), actual);
sl@0
   439
sl@0
   440
	TUint	expected;
sl@0
   441
	if ( GetOrFromConfig(aSection, KFldExpected(), iEnumTableSignals, expected) )
sl@0
   442
		{
sl@0
   443
		if ( expected!=actual )
sl@0
   444
			{
sl@0
   445
			ERR_PRINTF1(_L("Expected Value does not match actual"));
sl@0
   446
			SetBlockResult(EFail);
sl@0
   447
			}
sl@0
   448
		}
sl@0
   449
	}
sl@0
   450
sl@0
   451
void CT_TCommCapsV01Data::DoCmdiStopBits(const TDesC& aSection)
sl@0
   452
	{
sl@0
   453
	TUint	actual=GetCommCapsV01().iStopBits;
sl@0
   454
	INFO_PRINTF2(_L("iStopBits : 0x%X"), actual);
sl@0
   455
sl@0
   456
	TUint	expected;
sl@0
   457
	if ( GetOrFromConfig(aSection, KFldExpected(), iEnumTableStopBits, expected) )
sl@0
   458
		{
sl@0
   459
		if ( expected!=actual )
sl@0
   460
			{
sl@0
   461
			ERR_PRINTF1(_L("Expected Value does not match actual"));
sl@0
   462
			SetBlockResult(EFail);
sl@0
   463
			}
sl@0
   464
		}
sl@0
   465
	}