os/mm/devsound/a3fcharacterisationtest/src/char_a3f_devsound_tonetest.h
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
// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
sl@0
     2
// All rights reserved.
sl@0
     3
// This component and the accompanying materials are made available
sl@0
     4
// under the terms of "Eclipse Public License v1.0"
sl@0
     5
// which accompanies this distribution, and is available
sl@0
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
sl@0
     7
//
sl@0
     8
// Initial Contributors:
sl@0
     9
// Nokia Corporation - initial contribution.
sl@0
    10
//
sl@0
    11
// Contributors:
sl@0
    12
//
sl@0
    13
// Description:
sl@0
    14
//
sl@0
    15
sl@0
    16
#ifndef CHAR_A3F_DEVSOUND_TONETEST_H
sl@0
    17
#define CHAR_A3F_DEVSOUND_TONETEST_H
sl@0
    18
sl@0
    19
// system includes
sl@0
    20
#include "char_a3f_devsound_testbase.h"
sl@0
    21
#include "char_a3f_devsound_toneclient.h"
sl@0
    22
#include "char_a3f_devsound_playrecordclients.h"
sl@0
    23
sl@0
    24
/*
sl@0
    25
 *========================================================================================================
sl@0
    26
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0001
sl@0
    27
 */
sl@0
    28
class RA3FDevSoundToneSetConfigTest : public RA3FDevSoundTestBase
sl@0
    29
	{
sl@0
    30
public:
sl@0
    31
	static RA3FDevSoundToneSetConfigTest* NewL(const TDesC& aTestName);
sl@0
    32
sl@0
    33
private:
sl@0
    34
	RA3FDevSoundToneSetConfigTest(const TDesC& aTestName);
sl@0
    35
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
    36
	void DoKickoffTestL();
sl@0
    37
sl@0
    38
private:
sl@0
    39
	TInt iSampleRate;
sl@0
    40
	TInt iChannels;	
sl@0
    41
	};
sl@0
    42
sl@0
    43
/*
sl@0
    44
 *========================================================================================================
sl@0
    45
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0002
sl@0
    46
 */
sl@0
    47
class RA3FDevSoundToneSetPrioritySettingsTest : public RA3FDevSoundTestBase
sl@0
    48
	{
sl@0
    49
public:
sl@0
    50
	static RA3FDevSoundToneSetPrioritySettingsTest* NewL(const TDesC& aTestName);
sl@0
    51
sl@0
    52
private:
sl@0
    53
	RA3FDevSoundToneSetPrioritySettingsTest(const TDesC& aTestName);
sl@0
    54
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
    55
	void DoKickoffTestL();
sl@0
    56
sl@0
    57
private:
sl@0
    58
	TInt iPriority;
sl@0
    59
	};
sl@0
    60
sl@0
    61
/*
sl@0
    62
 *========================================================================================================
sl@0
    63
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0003
sl@0
    64
 */
sl@0
    65
class RA3FDevSoundToneSetVolumeTest : public RA3FDevSoundTestBase
sl@0
    66
	{
sl@0
    67
public:
sl@0
    68
	static RA3FDevSoundToneSetVolumeTest* NewL(const TDesC& aTestName);
sl@0
    69
sl@0
    70
private:
sl@0
    71
	RA3FDevSoundToneSetVolumeTest(const TDesC& aTestName);
sl@0
    72
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
    73
	void DoKickoffTestL();
sl@0
    74
	
sl@0
    75
private:
sl@0
    76
	TInt iVolume;
sl@0
    77
	};
sl@0
    78
sl@0
    79
/*
sl@0
    80
 *========================================================================================================
sl@0
    81
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0004
sl@0
    82
 */
sl@0
    83
class RA3FDevSoundToneVolumeRampTest : public RA3FDevSoundTestBase
sl@0
    84
	{
sl@0
    85
public:
sl@0
    86
	static RA3FDevSoundToneVolumeRampTest* NewL(const TDesC& aTestName);
sl@0
    87
private:
sl@0
    88
	RA3FDevSoundToneVolumeRampTest(const TDesC& aTestName);
sl@0
    89
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
    90
	void DoKickoffTestL();
sl@0
    91
	void ToneFinished(TInt aError);
sl@0
    92
private:
sl@0
    93
	TInt iVolumeRamp;
sl@0
    94
	TInt iDuration; 
sl@0
    95
	TInt iFrequencyTone1;
sl@0
    96
	TTime iStartTime;
sl@0
    97
	TTime iEndTime;
sl@0
    98
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
    99
	};
sl@0
   100
sl@0
   101
/*
sl@0
   102
 *========================================================================================================
sl@0
   103
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0005
sl@0
   104
 */
sl@0
   105
class RA3FDevSoundToneSetToneRepeatsTest : public RA3FDevSoundTestBase
sl@0
   106
	{
sl@0
   107
public:
sl@0
   108
	static RA3FDevSoundToneSetToneRepeatsTest* NewL(const TDesC& aTestName);
sl@0
   109
private:
sl@0
   110
	RA3FDevSoundToneSetToneRepeatsTest(const TDesC& aTestName);
sl@0
   111
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   112
	void DoKickoffTestL();
sl@0
   113
	void ToneFinished(TInt aError);
sl@0
   114
private:
sl@0
   115
	TInt iDuration; 
sl@0
   116
	TInt iFrequencyTone1;
sl@0
   117
	TInt iRepeatTrailingSilence;
sl@0
   118
	TInt iRepeatCount;
sl@0
   119
	TTime iStartTime;
sl@0
   120
	TTime iEndTime;
sl@0
   121
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   122
	};
sl@0
   123
sl@0
   124
/*
sl@0
   125
 *========================================================================================================
sl@0
   126
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0006
sl@0
   127
 */
sl@0
   128
class RA3FDevSoundToneSetDTMFLengthsTest : public RA3FDevSoundTestBase
sl@0
   129
	{
sl@0
   130
public:
sl@0
   131
	static RA3FDevSoundToneSetDTMFLengthsTest* NewL(const TDesC& aTestName);
sl@0
   132
private:
sl@0
   133
	RA3FDevSoundToneSetDTMFLengthsTest(const TDesC& aTestName);
sl@0
   134
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   135
	void DoKickoffTestL();
sl@0
   136
	void ToneFinished(TInt aError);
sl@0
   137
	
sl@0
   138
private:
sl@0
   139
	TBool iFirstToneFinishedCall;
sl@0
   140
	TInt iToneOnLength;
sl@0
   141
	TInt iToneOffLength;
sl@0
   142
	TInt iPauseLength;
sl@0
   143
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
   144
	TTime iStartTime;
sl@0
   145
	TTime iEndTime;
sl@0
   146
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   147
	TInt iDTMFPauses;
sl@0
   148
	TInt iDTMFTones;
sl@0
   149
	};
sl@0
   150
sl@0
   151
/*
sl@0
   152
 *========================================================================================================
sl@0
   153
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0007
sl@0
   154
 */
sl@0
   155
class RA3FDevSoundToneSetVolumeWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   156
	{
sl@0
   157
public:
sl@0
   158
	static RA3FDevSoundToneSetVolumeWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   159
private:
sl@0
   160
	RA3FDevSoundToneSetVolumeWhilePlayingTest(const TDesC& aTestName);
sl@0
   161
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   162
	void DoKickoffTestL();
sl@0
   163
	void DoTimerCallback();
sl@0
   164
	void ToneFinished(TInt aError);
sl@0
   165
private:
sl@0
   166
	TInt iDuration; 
sl@0
   167
	TInt iVolume;
sl@0
   168
	TInt iFrequencyTone1;
sl@0
   169
	TTime iStartTime;
sl@0
   170
	TTime iEndTime;
sl@0
   171
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   172
	};
sl@0
   173
sl@0
   174
/*
sl@0
   175
 *========================================================================================================
sl@0
   176
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0008
sl@0
   177
 */
sl@0
   178
class RA3FDevSoundToneSetPlayBalanceWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   179
	{
sl@0
   180
public:
sl@0
   181
	static RA3FDevSoundToneSetPlayBalanceWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   182
private:
sl@0
   183
	RA3FDevSoundToneSetPlayBalanceWhilePlayingTest(const TDesC& aTestName);
sl@0
   184
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   185
	void DoKickoffTestL();
sl@0
   186
	void DoTimerCallback();
sl@0
   187
	void ToneFinished(TInt aError);
sl@0
   188
	
sl@0
   189
private:
sl@0
   190
	TInt iDuration; 
sl@0
   191
	TInt iVolume;
sl@0
   192
	TInt iFrequencyTone1;
sl@0
   193
	TInt  iLSpeakerBalance;
sl@0
   194
	TInt  iRSpeakerBalance;
sl@0
   195
	TTime iStartTime;
sl@0
   196
	TTime iEndTime;
sl@0
   197
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   198
	};
sl@0
   199
sl@0
   200
/*
sl@0
   201
 *========================================================================================================
sl@0
   202
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0009
sl@0
   203
 */
sl@0
   204
class RA3FDevSoundToneSetVolumeWhilePausePlayingTest : public RA3FDevSoundTestBase
sl@0
   205
	{
sl@0
   206
public:
sl@0
   207
	static RA3FDevSoundToneSetVolumeWhilePausePlayingTest* NewL(const TDesC& aTestName);
sl@0
   208
private:
sl@0
   209
	RA3FDevSoundToneSetVolumeWhilePausePlayingTest(const TDesC& aTestName);
sl@0
   210
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   211
	void DoKickoffTestL();
sl@0
   212
	void DoTimerCallback();
sl@0
   213
	void ToneFinished(TInt aError);
sl@0
   214
private:
sl@0
   215
	TInt  iDuration; 
sl@0
   216
	TInt  iVolume;
sl@0
   217
	TInt  iFrequencyTone1;
sl@0
   218
	TBool iTimeToEnterPauseElapsed;
sl@0
   219
	};
sl@0
   220
sl@0
   221
/*
sl@0
   222
 *========================================================================================================
sl@0
   223
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0010
sl@0
   224
 */
sl@0
   225
class RA3FDevSoundToneSetVolumeThenInitializeToPlayAudioTest : public RA3FDevSoundTestBase
sl@0
   226
	{
sl@0
   227
public:
sl@0
   228
	static RA3FDevSoundToneSetVolumeThenInitializeToPlayAudioTest* NewL(const TDesC& aTestName);
sl@0
   229
private:
sl@0
   230
	RA3FDevSoundToneSetVolumeThenInitializeToPlayAudioTest(const TDesC& aTestName);
sl@0
   231
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   232
	void DoKickoffTestL();
sl@0
   233
	
sl@0
   234
private:
sl@0
   235
	TInt iVolume;
sl@0
   236
	TBool iReinitialized;
sl@0
   237
	};
sl@0
   238
sl@0
   239
/*
sl@0
   240
 *========================================================================================================
sl@0
   241
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0011
sl@0
   242
 */
sl@0
   243
class RA3FDevSoundToneSetVolumeRampWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   244
	{
sl@0
   245
public:
sl@0
   246
	static RA3FDevSoundToneSetVolumeRampWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   247
private:
sl@0
   248
	RA3FDevSoundToneSetVolumeRampWhilePlayingTest(const TDesC& aTestName);
sl@0
   249
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   250
	void DoKickoffTestL();
sl@0
   251
	void DoTimerCallback();
sl@0
   252
	void ToneFinished(TInt aError);
sl@0
   253
sl@0
   254
private:
sl@0
   255
	TInt iDuration; 
sl@0
   256
	TInt iVolume;
sl@0
   257
	TInt iFrequencyTone1;
sl@0
   258
	TInt iVolumeRamp;
sl@0
   259
	TBool iTonePlayedTwice;
sl@0
   260
	TTime iStartTime;
sl@0
   261
	TTime iEndTime;
sl@0
   262
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   263
	TInt iTimesToneFinishedCalled;
sl@0
   264
	};
sl@0
   265
sl@0
   266
/*
sl@0
   267
 *========================================================================================================
sl@0
   268
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0012
sl@0
   269
 */
sl@0
   270
class RA3FDevSoundToneSetToneRepetitionsWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   271
	{
sl@0
   272
public:
sl@0
   273
	static RA3FDevSoundToneSetToneRepetitionsWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   274
private:
sl@0
   275
	RA3FDevSoundToneSetToneRepetitionsWhilePlayingTest(const TDesC& aTestName);
sl@0
   276
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   277
	void DoKickoffTestL();
sl@0
   278
	void DoTimerCallback();
sl@0
   279
	void ToneFinished(TInt aError);
sl@0
   280
	
sl@0
   281
private:
sl@0
   282
	TInt iDuration; 
sl@0
   283
	TInt iFrequencyTone1;
sl@0
   284
	TInt iRepeatTrailingSilence;
sl@0
   285
	TInt iRepeatCount;
sl@0
   286
	TTime iStartTime;
sl@0
   287
	TTime iEndTime;
sl@0
   288
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   289
	};
sl@0
   290
sl@0
   291
/*
sl@0
   292
 *========================================================================================================
sl@0
   293
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0013
sl@0
   294
 */
sl@0
   295
class RA3FDevSoundToneSetDTMFLengthsWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   296
	{
sl@0
   297
public:
sl@0
   298
	static RA3FDevSoundToneSetDTMFLengthsWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   299
private:
sl@0
   300
	RA3FDevSoundToneSetDTMFLengthsWhilePlayingTest(const TDesC& aTestName);
sl@0
   301
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   302
	void DoKickoffTestL();
sl@0
   303
	void DoTimerCallback();
sl@0
   304
	void ToneFinished(TInt aError);
sl@0
   305
sl@0
   306
private:
sl@0
   307
	TBool iFirstToneFinishedCall;
sl@0
   308
	TInt iToneOnLength;
sl@0
   309
	TInt iToneOffLength;
sl@0
   310
	TInt iPauseLength;
sl@0
   311
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
   312
	TTime iStartTime;
sl@0
   313
	TTime iEndTime;
sl@0
   314
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   315
	TInt iDTMFPauses;
sl@0
   316
	TInt iDTMFTones;
sl@0
   317
	TInt iTotalExpectedPlayToneTime;
sl@0
   318
	};
sl@0
   319
sl@0
   320
/*
sl@0
   321
 *========================================================================================================
sl@0
   322
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0014
sl@0
   323
 */
sl@0
   324
class RA3FDevSoundToneSetToneRepetitionsNotPlayingTonesModeTest : public RA3FDevSoundTestBase
sl@0
   325
	{
sl@0
   326
public:
sl@0
   327
	static RA3FDevSoundToneSetToneRepetitionsNotPlayingTonesModeTest* NewL(const TDesC& aTestName);
sl@0
   328
private:
sl@0
   329
	RA3FDevSoundToneSetToneRepetitionsNotPlayingTonesModeTest(const TDesC& aTestName);
sl@0
   330
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   331
	void DoKickoffTestL();
sl@0
   332
	void ToneFinished(TInt aError);
sl@0
   333
	
sl@0
   334
private:
sl@0
   335
	TInt iDuration; 
sl@0
   336
	TInt iFrequencyTone1;
sl@0
   337
	TInt iRepeatTrailingSilence;
sl@0
   338
	TInt iRepeatCount;	
sl@0
   339
	TTime iStartTime;
sl@0
   340
	TTime iEndTime;
sl@0
   341
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   342
	TBool iInitializedToPlayTones;
sl@0
   343
	};
sl@0
   344
	
sl@0
   345
/*
sl@0
   346
 *========================================================================================================
sl@0
   347
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0015
sl@0
   348
 */
sl@0
   349
class RA3FDevSoundToneSetDTMFLengthsNotPlayingTonesModeTest : public RA3FDevSoundTestBase
sl@0
   350
	{
sl@0
   351
public:
sl@0
   352
	static RA3FDevSoundToneSetDTMFLengthsNotPlayingTonesModeTest* NewL(const TDesC& aTestName);
sl@0
   353
sl@0
   354
private:
sl@0
   355
	RA3FDevSoundToneSetDTMFLengthsNotPlayingTonesModeTest(const TDesC& aTestName);
sl@0
   356
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   357
	void DoKickoffTestL();
sl@0
   358
	void ToneFinished(TInt aError);
sl@0
   359
	
sl@0
   360
private:
sl@0
   361
	TBool iInitializedToPlayTones;
sl@0
   362
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
   363
	TInt iToneOnLength;
sl@0
   364
	TInt iToneOffLength;
sl@0
   365
	TInt iPauseLength;
sl@0
   366
	TTime iStartTime;
sl@0
   367
	TTime iEndTime;
sl@0
   368
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   369
	TInt iDTMFPauses;
sl@0
   370
	TInt iDTMFTones;
sl@0
   371
	};
sl@0
   372
sl@0
   373
/*
sl@0
   374
 *========================================================================================================
sl@0
   375
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0016
sl@0
   376
 */
sl@0
   377
class RA3FDevSoundToneSetConfigWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   378
	{
sl@0
   379
public:
sl@0
   380
	static RA3FDevSoundToneSetConfigWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   381
private:
sl@0
   382
	RA3FDevSoundToneSetConfigWhilePlayingTest(const TDesC& aTestName);
sl@0
   383
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   384
	void DoKickoffTestL();
sl@0
   385
	void DoTimerCallback();
sl@0
   386
	
sl@0
   387
private:
sl@0
   388
	TInt iDuration;
sl@0
   389
	TInt iVolume;
sl@0
   390
	TInt iFrequencyTone1;
sl@0
   391
	TInt iSampleRate;
sl@0
   392
	TInt iChannels;
sl@0
   393
	};
sl@0
   394
sl@0
   395
/*
sl@0
   396
 *========================================================================================================
sl@0
   397
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0017
sl@0
   398
 */
sl@0
   399
class RA3FDevSoundToneSetPriorityWhilePlayingTest : public RA3FDevSoundTestBase, public MA3FDevsoundToneClientObserver
sl@0
   400
	{
sl@0
   401
public:
sl@0
   402
	static RA3FDevSoundToneSetPriorityWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   403
private:
sl@0
   404
	RA3FDevSoundToneSetPriorityWhilePlayingTest(const TDesC& aTestName);
sl@0
   405
	void ClientInitializeCompleteCallback(TInt aError);
sl@0
   406
	void ClientToneFinishedCallback(TInt aError);
sl@0
   407
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   408
	void DoKickoffTestL();
sl@0
   409
	void DoTimerCallback();
sl@0
   410
	void ToneFinished(TInt aError);
sl@0
   411
private:
sl@0
   412
	
sl@0
   413
	TInt iDuration;
sl@0
   414
	TInt iFrequencyTone1;
sl@0
   415
	};
sl@0
   416
sl@0
   417
/*
sl@0
   418
 *========================================================================================================
sl@0
   419
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0018
sl@0
   420
 */
sl@0
   421
class RA3FDevSoundToneSetConfigTestToInvalidSampleRateValue : public RA3FDevSoundTestBase
sl@0
   422
	{
sl@0
   423
public:
sl@0
   424
	static RA3FDevSoundToneSetConfigTestToInvalidSampleRateValue* NewL(const TDesC& aTestName);
sl@0
   425
sl@0
   426
private:
sl@0
   427
	RA3FDevSoundToneSetConfigTestToInvalidSampleRateValue(const TDesC& aTestName);
sl@0
   428
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   429
	void DoKickoffTestL();
sl@0
   430
sl@0
   431
private:
sl@0
   432
	TInt iSampleRate;
sl@0
   433
	TInt iChannels;	
sl@0
   434
	};
sl@0
   435
sl@0
   436
/*
sl@0
   437
 *========================================================================================================
sl@0
   438
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0019
sl@0
   439
 */
sl@0
   440
class RA3FDevSoundToneSetConfigTestToInvalidChannelValueTest : public RA3FDevSoundTestBase
sl@0
   441
	{
sl@0
   442
public:
sl@0
   443
	static RA3FDevSoundToneSetConfigTestToInvalidChannelValueTest* NewL(const TDesC& aTestName);
sl@0
   444
sl@0
   445
private:
sl@0
   446
	RA3FDevSoundToneSetConfigTestToInvalidChannelValueTest(const TDesC& aTestName);
sl@0
   447
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   448
	void DoKickoffTestL();
sl@0
   449
sl@0
   450
private:
sl@0
   451
	TInt iSampleRate;
sl@0
   452
	TInt iChannels;	
sl@0
   453
	};
sl@0
   454
sl@0
   455
/*
sl@0
   456
 *========================================================================================================
sl@0
   457
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0020
sl@0
   458
 */
sl@0
   459
class RA3FDevSoundToneSetDTMFLengthsToNegativeTest : public RA3FDevSoundTestBase
sl@0
   460
	{
sl@0
   461
public:
sl@0
   462
	static RA3FDevSoundToneSetDTMFLengthsToNegativeTest* NewL(const TDesC& aTestName);
sl@0
   463
private:
sl@0
   464
	RA3FDevSoundToneSetDTMFLengthsToNegativeTest(const TDesC& aTestName);
sl@0
   465
	void ToneFinished(TInt aError);
sl@0
   466
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   467
	void DoKickoffTestL();
sl@0
   468
	
sl@0
   469
private:
sl@0
   470
	TInt iToneOnLength;
sl@0
   471
	TInt iToneOffLength;
sl@0
   472
	TInt iPauseLength;
sl@0
   473
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
   474
	TTime iStartTime;
sl@0
   475
	TTime iEndTime;
sl@0
   476
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   477
	};
sl@0
   478
	
sl@0
   479
/*
sl@0
   480
 *========================================================================================================
sl@0
   481
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0021
sl@0
   482
 */
sl@0
   483
class RA3FDevSoundToneSetDTMFToneOnLengthToMinusOneTest : public RA3FDevSoundTestBase
sl@0
   484
	{
sl@0
   485
public:
sl@0
   486
	static RA3FDevSoundToneSetDTMFToneOnLengthToMinusOneTest* NewL(const TDesC& aTestName);
sl@0
   487
private:
sl@0
   488
	RA3FDevSoundToneSetDTMFToneOnLengthToMinusOneTest(const TDesC& aTestName);
sl@0
   489
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   490
	void DoKickoffTestL();
sl@0
   491
	void DoTimerCallback();
sl@0
   492
	void ToneFinished(TInt aError);
sl@0
   493
	
sl@0
   494
private:
sl@0
   495
	TBool iFirstToneFinishedCall;
sl@0
   496
	TInt iToneOnLength;
sl@0
   497
	TInt iToneOffLength;
sl@0
   498
	TInt iPauseLength;
sl@0
   499
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
   500
	TTime iStartTime;
sl@0
   501
	TTime iEndTime;
sl@0
   502
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   503
	};
sl@0
   504
sl@0
   505
/*
sl@0
   506
 *========================================================================================================
sl@0
   507
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0022
sl@0
   508
 */
sl@0
   509
class RA3FDevSoundToneSetToneRepetitionsRepeatTrailingSilenceToNegativeTest : public RA3FDevSoundTestBase
sl@0
   510
	{
sl@0
   511
public:
sl@0
   512
	static RA3FDevSoundToneSetToneRepetitionsRepeatTrailingSilenceToNegativeTest* NewL(const TDesC& aTestName);
sl@0
   513
private:
sl@0
   514
	RA3FDevSoundToneSetToneRepetitionsRepeatTrailingSilenceToNegativeTest(const TDesC& aTestName);
sl@0
   515
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   516
	void DoKickoffTestL();
sl@0
   517
	void ToneFinished(TInt aError);
sl@0
   518
	
sl@0
   519
private:
sl@0
   520
	TInt iDuration; 
sl@0
   521
	TInt iFrequencyTone1;
sl@0
   522
	TInt iRepeatTrailingSilence;
sl@0
   523
	TInt iRepeatCount;	
sl@0
   524
	TTime iStartTime;
sl@0
   525
	TTime iEndTime;
sl@0
   526
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   527
	TBool iInitializedToPlayTones;
sl@0
   528
	};
sl@0
   529
sl@0
   530
/*
sl@0
   531
 *========================================================================================================
sl@0
   532
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0023
sl@0
   533
 */
sl@0
   534
class RA3FDevSoundToneSetToneRepetitionsRepeatCountToKMdaRepeatForeverTest : public RA3FDevSoundTestBase
sl@0
   535
	{
sl@0
   536
public:
sl@0
   537
	static RA3FDevSoundToneSetToneRepetitionsRepeatCountToKMdaRepeatForeverTest* NewL(const TDesC& aTestName);
sl@0
   538
private:
sl@0
   539
	RA3FDevSoundToneSetToneRepetitionsRepeatCountToKMdaRepeatForeverTest(const TDesC& aTestName);
sl@0
   540
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   541
	void DoKickoffTestL();
sl@0
   542
	void ToneFinished(TInt aError);
sl@0
   543
	void DoTimerCallback();
sl@0
   544
	
sl@0
   545
private:
sl@0
   546
	TInt iDuration; 
sl@0
   547
	TInt iFrequencyTone1;
sl@0
   548
	TInt iRepeatTrailingSilence;
sl@0
   549
	TInt iRepeatCount;	
sl@0
   550
	TTime iStartTime;
sl@0
   551
	TTime iEndTime;
sl@0
   552
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   553
	TBool iInitializedToPlayTones;
sl@0
   554
	};
sl@0
   555
sl@0
   556
/*
sl@0
   557
 *========================================================================================================
sl@0
   558
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0024
sl@0
   559
 */
sl@0
   560
class RA3FDevSoundToneCapsTest : public RA3FDevSoundTestBase
sl@0
   561
	{
sl@0
   562
public:
sl@0
   563
	static RA3FDevSoundToneCapsTest* NewL(const TDesC& aTestName);
sl@0
   564
private:
sl@0
   565
	RA3FDevSoundToneCapsTest(const TDesC& aTestName);
sl@0
   566
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   567
	void DoKickoffTestL();
sl@0
   568
sl@0
   569
private:
sl@0
   570
	TInt iExCapRate;
sl@0
   571
	TInt iExCapChannels;
sl@0
   572
	};
sl@0
   573
sl@0
   574
/*
sl@0
   575
 *========================================================================================================
sl@0
   576
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0025
sl@0
   577
 */
sl@0
   578
class RA3FDevSoundToneConfigDefaultTest : public RA3FDevSoundTestBase
sl@0
   579
	{
sl@0
   580
public:
sl@0
   581
	static RA3FDevSoundToneConfigDefaultTest* NewL(const TDesC& aTestName);
sl@0
   582
private:
sl@0
   583
	RA3FDevSoundToneConfigDefaultTest(const TDesC& aTestName);
sl@0
   584
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   585
	void DoKickoffTestL();
sl@0
   586
	
sl@0
   587
private:
sl@0
   588
	TMMFSampleRate iExSampleRate;
sl@0
   589
	TInt iExCapRate;
sl@0
   590
	TInt iExCapChannels;
sl@0
   591
	};
sl@0
   592
	
sl@0
   593
/*
sl@0
   594
 *========================================================================================================
sl@0
   595
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0026
sl@0
   596
 */
sl@0
   597
class RA3FDevSoundToneMaxVolumeTest : public RA3FDevSoundTestBase
sl@0
   598
	{
sl@0
   599
public:
sl@0
   600
	static RA3FDevSoundToneMaxVolumeTest* NewL(const TDesC& aTestName);
sl@0
   601
private:
sl@0
   602
	RA3FDevSoundToneMaxVolumeTest(const TDesC& aTestName);
sl@0
   603
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   604
	void DoKickoffTestL();
sl@0
   605
sl@0
   606
private:
sl@0
   607
	TInt iExVolume;
sl@0
   608
	};
sl@0
   609
sl@0
   610
/*
sl@0
   611
 *========================================================================================================
sl@0
   612
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0027
sl@0
   613
 */
sl@0
   614
class RA3FDevSoundToneVolumeTest : public RA3FDevSoundTestBase
sl@0
   615
	{
sl@0
   616
public:
sl@0
   617
	static RA3FDevSoundToneVolumeTest* NewL(const TDesC& aTestName);
sl@0
   618
private:
sl@0
   619
	RA3FDevSoundToneVolumeTest(const TDesC& aTestName);
sl@0
   620
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   621
	void DoKickoffTestL();
sl@0
   622
	
sl@0
   623
private:
sl@0
   624
	TInt iExVolume;
sl@0
   625
	};
sl@0
   626
	
sl@0
   627
/*
sl@0
   628
 *========================================================================================================
sl@0
   629
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0028
sl@0
   630
 */
sl@0
   631
class RA3FDevSoundToneQueryCapsWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   632
	{
sl@0
   633
public:
sl@0
   634
	static RA3FDevSoundToneQueryCapsWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   635
private:
sl@0
   636
	RA3FDevSoundToneQueryCapsWhilePlayingTest(const TDesC& aTestName);
sl@0
   637
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   638
	void DoKickoffTestL();
sl@0
   639
	void DoTimerCallback();
sl@0
   640
	
sl@0
   641
private:
sl@0
   642
	TInt iDuration;
sl@0
   643
	TInt iFrequencyTone1;
sl@0
   644
	TInt iExCapRate;
sl@0
   645
	TInt iExCapChannels;
sl@0
   646
	};
sl@0
   647
	
sl@0
   648
/*
sl@0
   649
 *========================================================================================================
sl@0
   650
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0029
sl@0
   651
 */
sl@0
   652
class RA3FDevSoundToneConfigWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   653
	{
sl@0
   654
public:
sl@0
   655
	static RA3FDevSoundToneConfigWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   656
private:
sl@0
   657
	RA3FDevSoundToneConfigWhilePlayingTest(const TDesC& aTestName);
sl@0
   658
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   659
	void DoKickoffTestL();
sl@0
   660
	void DoTimerCallback();
sl@0
   661
	void ToneFinished(TInt aError);
sl@0
   662
	
sl@0
   663
private:
sl@0
   664
	TInt iDuration;
sl@0
   665
	TInt iFrequencyTone1;
sl@0
   666
	TInt iExCapRate;
sl@0
   667
	TInt iExCapChannels;
sl@0
   668
	TMMFSampleRate iExSampleRate;
sl@0
   669
	TTime iStartTime;
sl@0
   670
	TTime iEndTime;
sl@0
   671
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   672
	};
sl@0
   673
sl@0
   674
/*
sl@0
   675
 *========================================================================================================
sl@0
   676
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0030
sl@0
   677
 */
sl@0
   678
class RA3FDevSoundToneMaxVolumeWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   679
	{
sl@0
   680
public:
sl@0
   681
	static RA3FDevSoundToneMaxVolumeWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   682
private:
sl@0
   683
	RA3FDevSoundToneMaxVolumeWhilePlayingTest(const TDesC& aTestName);
sl@0
   684
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   685
	void DoKickoffTestL();
sl@0
   686
	void DoTimerCallback();
sl@0
   687
	void ToneFinished(TInt aError);
sl@0
   688
private:
sl@0
   689
	TInt iDuration;
sl@0
   690
	TInt iFrequencyTone1;
sl@0
   691
	TInt iExVolume;
sl@0
   692
	TTime iStartTime;
sl@0
   693
	TTime iEndTime;
sl@0
   694
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   695
	};
sl@0
   696
sl@0
   697
/*
sl@0
   698
 *========================================================================================================
sl@0
   699
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0031
sl@0
   700
 */
sl@0
   701
class RA3FDevSoundToneVolumeWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   702
	{
sl@0
   703
public:
sl@0
   704
	static RA3FDevSoundToneVolumeWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   705
private:
sl@0
   706
	RA3FDevSoundToneVolumeWhilePlayingTest(const TDesC& aTestName);
sl@0
   707
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   708
	void DoKickoffTestL();
sl@0
   709
	void DoTimerCallback();
sl@0
   710
	void ToneFinished(TInt aError);
sl@0
   711
sl@0
   712
private:
sl@0
   713
	TInt iDuration;
sl@0
   714
	TInt iFrequencyTone1;
sl@0
   715
	TInt iExVolume;
sl@0
   716
	TTime iStartTime;
sl@0
   717
	TTime iEndTime;
sl@0
   718
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   719
	};
sl@0
   720
sl@0
   721
/*
sl@0
   722
 *========================================================================================================
sl@0
   723
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0032
sl@0
   724
 */
sl@0
   725
class RA3FDevSoundToneQueryCapsWhilePausePlayingTest : public RA3FDevSoundTestBase
sl@0
   726
	{
sl@0
   727
public:
sl@0
   728
	static RA3FDevSoundToneQueryCapsWhilePausePlayingTest* NewL(const TDesC& aTestName);
sl@0
   729
private:
sl@0
   730
	RA3FDevSoundToneQueryCapsWhilePausePlayingTest(const TDesC& aTestName);
sl@0
   731
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   732
	void DoKickoffTestL();
sl@0
   733
	void DoTimerCallback();
sl@0
   734
	void ToneFinished(TInt aError);
sl@0
   735
	
sl@0
   736
private:
sl@0
   737
	TInt iDuration;
sl@0
   738
	TInt iFrequencyTone1;
sl@0
   739
	TInt iExCapRate;
sl@0
   740
	TInt iExCapChannels;
sl@0
   741
	TBool iTimeToEnterPauseElapsed;
sl@0
   742
	};
sl@0
   743
sl@0
   744
/*
sl@0
   745
 *========================================================================================================
sl@0
   746
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0033
sl@0
   747
 */
sl@0
   748
class RA3FDevSoundToneConfigWhilePausePlayingTest : public RA3FDevSoundTestBase
sl@0
   749
	{
sl@0
   750
public:
sl@0
   751
	static RA3FDevSoundToneConfigWhilePausePlayingTest* NewL(const TDesC& aTestName);
sl@0
   752
private:
sl@0
   753
	RA3FDevSoundToneConfigWhilePausePlayingTest(const TDesC& aTestName);
sl@0
   754
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   755
	void DoKickoffTestL();
sl@0
   756
	void DoTimerCallback();
sl@0
   757
	void ToneFinished(TInt aError);
sl@0
   758
	
sl@0
   759
private:
sl@0
   760
	TInt iDuration;
sl@0
   761
	TInt iFrequencyTone1;
sl@0
   762
	TBool iTimeToEnterPauseElapsed;
sl@0
   763
	TInt iExCapRate;
sl@0
   764
	TInt iExCapChannels;
sl@0
   765
	TMMFSampleRate iExSampleRate;
sl@0
   766
	};
sl@0
   767
sl@0
   768
/*
sl@0
   769
 *========================================================================================================
sl@0
   770
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0034
sl@0
   771
 */
sl@0
   772
class RA3FDevSoundToneMaxVolumeWhilePausePlayingTest : public RA3FDevSoundTestBase
sl@0
   773
	{
sl@0
   774
public:
sl@0
   775
	static RA3FDevSoundToneMaxVolumeWhilePausePlayingTest* NewL(const TDesC& aTestName);
sl@0
   776
private:
sl@0
   777
	RA3FDevSoundToneMaxVolumeWhilePausePlayingTest(const TDesC& aTestName);
sl@0
   778
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   779
	void DoKickoffTestL();
sl@0
   780
	void DoTimerCallback();
sl@0
   781
	void ToneFinished(TInt aError);
sl@0
   782
	
sl@0
   783
private:
sl@0
   784
	TInt iDuration;
sl@0
   785
	TInt iFrequencyTone1;
sl@0
   786
	TInt iExVolume;
sl@0
   787
	TBool iTimeToEnterPauseElapsed;
sl@0
   788
	};
sl@0
   789
sl@0
   790
/*
sl@0
   791
 *========================================================================================================
sl@0
   792
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0035
sl@0
   793
 */
sl@0
   794
class RA3FDevSoundToneVolumeWhilePausePlayingTest : public RA3FDevSoundTestBase
sl@0
   795
	{
sl@0
   796
public:
sl@0
   797
	static RA3FDevSoundToneVolumeWhilePausePlayingTest* NewL(const TDesC& aTestName);
sl@0
   798
private:
sl@0
   799
	RA3FDevSoundToneVolumeWhilePausePlayingTest(const TDesC& aTestName);
sl@0
   800
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   801
	void DoKickoffTestL();
sl@0
   802
	void DoTimerCallback();
sl@0
   803
	void ToneFinished(TInt aError);
sl@0
   804
sl@0
   805
private:
sl@0
   806
	TInt iDuration;
sl@0
   807
	TInt iFrequencyTone1;
sl@0
   808
	TInt iExVolume;
sl@0
   809
	TBool iTimeToEnterPauseElapsed;
sl@0
   810
	};
sl@0
   811
sl@0
   812
/*
sl@0
   813
 *========================================================================================================
sl@0
   814
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0036
sl@0
   815
 */
sl@0
   816
class RA3FDevSoundTonePlayToneOnceTest : public RA3FDevSoundTestBase
sl@0
   817
	{
sl@0
   818
public:
sl@0
   819
	static RA3FDevSoundTonePlayToneOnceTest* NewL(const TDesC& aTestName);
sl@0
   820
private:
sl@0
   821
	RA3FDevSoundTonePlayToneOnceTest(const TDesC& aTestName);
sl@0
   822
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   823
	void DoKickoffTestL();
sl@0
   824
	void ToneFinished(TInt aError);
sl@0
   825
private:
sl@0
   826
	TInt iDuration;
sl@0
   827
	TInt iFrequencyTone1;
sl@0
   828
	TTime iStartTime;
sl@0
   829
	TTime iEndTime;
sl@0
   830
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   831
	};
sl@0
   832
sl@0
   833
/*
sl@0
   834
 *========================================================================================================
sl@0
   835
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0037
sl@0
   836
 */
sl@0
   837
class RA3FDevSoundTonePlayDualToneTest : public RA3FDevSoundTestBase
sl@0
   838
	{
sl@0
   839
public:
sl@0
   840
	static RA3FDevSoundTonePlayDualToneTest* NewL(const TDesC& aTestName);
sl@0
   841
private:
sl@0
   842
	RA3FDevSoundTonePlayDualToneTest(const TDesC& aTestName);
sl@0
   843
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   844
	void DoKickoffTestL();
sl@0
   845
	void ToneFinished(TInt aError);
sl@0
   846
private:
sl@0
   847
	TInt iDuration;
sl@0
   848
	TInt iFrequencyTone1;
sl@0
   849
	TInt iFrequencyTone2;
sl@0
   850
	TTime iStartTime;
sl@0
   851
	TTime iEndTime;
sl@0
   852
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   853
	};
sl@0
   854
sl@0
   855
/*
sl@0
   856
 *========================================================================================================
sl@0
   857
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0038
sl@0
   858
 */
sl@0
   859
class RA3FDevSoundTonePlayDTMFToneTest : public RA3FDevSoundTestBase
sl@0
   860
	{
sl@0
   861
public:
sl@0
   862
	static RA3FDevSoundTonePlayDTMFToneTest* NewL(const TDesC& aTestName);
sl@0
   863
private:
sl@0
   864
	RA3FDevSoundTonePlayDTMFToneTest(const TDesC& aTestName);
sl@0
   865
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   866
	void DoKickoffTestL();
sl@0
   867
	void ToneFinished(TInt aError);
sl@0
   868
private:
sl@0
   869
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
   870
	TBool iToneStopped;
sl@0
   871
	TTime iStartTime;
sl@0
   872
	TTime iEndTime;
sl@0
   873
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   874
	TInt iDTMFPauses;
sl@0
   875
	TInt iDTMFTones;
sl@0
   876
	};
sl@0
   877
sl@0
   878
/*
sl@0
   879
 *========================================================================================================
sl@0
   880
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0039
sl@0
   881
 */
sl@0
   882
class RA3FDevSoundTonePlayToneSequenceTest : public RA3FDevSoundTestBase
sl@0
   883
	{
sl@0
   884
public:
sl@0
   885
	static RA3FDevSoundTonePlayToneSequenceTest* NewL(const TDesC& aTestName);
sl@0
   886
private:
sl@0
   887
	RA3FDevSoundTonePlayToneSequenceTest(const TDesC& aTestName);
sl@0
   888
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   889
	void DoKickoffTestL();
sl@0
   890
	};
sl@0
   891
sl@0
   892
/*
sl@0
   893
 *========================================================================================================
sl@0
   894
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0040
sl@0
   895
 */
sl@0
   896
class RA3FDevSoundToneNewToneRequestWhilePlayingTest : public RA3FDevSoundTestBase
sl@0
   897
	{
sl@0
   898
public:
sl@0
   899
	static RA3FDevSoundToneNewToneRequestWhilePlayingTest* NewL(const TDesC& aTestName);
sl@0
   900
sl@0
   901
private:
sl@0
   902
	RA3FDevSoundToneNewToneRequestWhilePlayingTest(const TDesC& aTestName);
sl@0
   903
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   904
	void DoKickoffTestL();
sl@0
   905
	void DoTimerCallback();
sl@0
   906
	void ToneFinished(TInt aError);
sl@0
   907
	
sl@0
   908
private:
sl@0
   909
	TInt iDuration;
sl@0
   910
	TInt iFrequencyTone1;
sl@0
   911
	TTime iStartTime;
sl@0
   912
	TTime iEndTime;
sl@0
   913
	TTimeIntervalMicroSeconds iPlayToneTime;
sl@0
   914
	};
sl@0
   915
sl@0
   916
/*
sl@0
   917
 *========================================================================================================
sl@0
   918
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0041
sl@0
   919
 */
sl@0
   920
class RA3FDevSoundTonePreemptionTest : public RA3FDevSoundTestBase, public MA3FDevsoundToneClientObserver
sl@0
   921
	{
sl@0
   922
public:
sl@0
   923
	static RA3FDevSoundTonePreemptionTest* NewL(const TDesC& aTestName);
sl@0
   924
sl@0
   925
private:
sl@0
   926
	RA3FDevSoundTonePreemptionTest(const TDesC& aTestName);
sl@0
   927
	void ClientInitializeCompleteCallback(TInt aError);
sl@0
   928
	void ClientToneFinishedCallback(TInt aError);
sl@0
   929
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   930
	void DoKickoffTestL();
sl@0
   931
	void DoTimerCallback();
sl@0
   932
	void ToneFinished(TInt aError);
sl@0
   933
	
sl@0
   934
private:
sl@0
   935
	TInt iDuration;
sl@0
   936
	TInt iFrequencyTone1;
sl@0
   937
	};
sl@0
   938
sl@0
   939
/*
sl@0
   940
 *========================================================================================================
sl@0
   941
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0042
sl@0
   942
 */
sl@0
   943
class RA3FDevSoundToneRejectionTest : public RA3FDevSoundTestBase, public MA3FDevsoundToneClientObserver
sl@0
   944
	{
sl@0
   945
public:
sl@0
   946
	static RA3FDevSoundToneRejectionTest* NewL(const TDesC& aTestName);
sl@0
   947
sl@0
   948
private:
sl@0
   949
	RA3FDevSoundToneRejectionTest(const TDesC& aTestName);
sl@0
   950
	void ClientInitializeCompleteCallback(TInt aError);
sl@0
   951
	void ClientToneFinishedCallback(TInt aError);
sl@0
   952
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   953
	void DoKickoffTestL();
sl@0
   954
	void DoTimerCallback();
sl@0
   955
	void ToneFinished(TInt aError);
sl@0
   956
	
sl@0
   957
private:
sl@0
   958
	TInt iDuration;
sl@0
   959
	TInt iFrequencyTone1;
sl@0
   960
	};
sl@0
   961
sl@0
   962
/*
sl@0
   963
 *========================================================================================================
sl@0
   964
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0043
sl@0
   965
 */
sl@0
   966
class RA3FDevSoundTonePlayToneOnceAndStopTest : public RA3FDevSoundTestBase
sl@0
   967
	{
sl@0
   968
public:
sl@0
   969
	static RA3FDevSoundTonePlayToneOnceAndStopTest* NewL(const TDesC& aTestName);
sl@0
   970
private:
sl@0
   971
	RA3FDevSoundTonePlayToneOnceAndStopTest(const TDesC& aTestName);
sl@0
   972
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   973
	void DoKickoffTestL();
sl@0
   974
	void DoTimerCallback();
sl@0
   975
	void ToneFinished(TInt aError);
sl@0
   976
	
sl@0
   977
private:
sl@0
   978
	TInt iDuration;
sl@0
   979
	TInt iFrequencyTone1;
sl@0
   980
	TBool iToneStopped;
sl@0
   981
	};
sl@0
   982
sl@0
   983
/*
sl@0
   984
 *========================================================================================================
sl@0
   985
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0044
sl@0
   986
 */
sl@0
   987
class RA3FDevSoundTonePlayDualToneOnceAndStopTest : public RA3FDevSoundTestBase
sl@0
   988
	{
sl@0
   989
public:
sl@0
   990
	static RA3FDevSoundTonePlayDualToneOnceAndStopTest* NewL(const TDesC& aTestName);
sl@0
   991
private:
sl@0
   992
	RA3FDevSoundTonePlayDualToneOnceAndStopTest(const TDesC& aTestName);
sl@0
   993
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
   994
	void DoKickoffTestL();
sl@0
   995
	void DoTimerCallback();
sl@0
   996
	void ToneFinished(TInt aError);
sl@0
   997
	
sl@0
   998
private:
sl@0
   999
	TInt iDuration;
sl@0
  1000
	TInt iFrequencyTone1;
sl@0
  1001
	TInt iFrequencyTone2;
sl@0
  1002
	TBool iToneStopped;
sl@0
  1003
	};
sl@0
  1004
	
sl@0
  1005
/*
sl@0
  1006
 *========================================================================================================
sl@0
  1007
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0045
sl@0
  1008
 */
sl@0
  1009
class RA3FDevSoundTonePlayDTMFStringOnceAndStopTest : public RA3FDevSoundTestBase
sl@0
  1010
	{
sl@0
  1011
public:
sl@0
  1012
	static RA3FDevSoundTonePlayDTMFStringOnceAndStopTest* NewL(const TDesC& aTestName);
sl@0
  1013
private:
sl@0
  1014
	RA3FDevSoundTonePlayDTMFStringOnceAndStopTest(const TDesC& aTestName);
sl@0
  1015
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1016
	void DoKickoffTestL();
sl@0
  1017
	void DoTimerCallback();
sl@0
  1018
	void ToneFinished(TInt aError);
sl@0
  1019
	
sl@0
  1020
private:
sl@0
  1021
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
  1022
	TBool iToneStopped;
sl@0
  1023
	};
sl@0
  1024
sl@0
  1025
/*
sl@0
  1026
 *========================================================================================================
sl@0
  1027
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0046
sl@0
  1028
 */
sl@0
  1029
class RA3FDevSoundTonePlayToneSequenceOnceAndStopTest : public RA3FDevSoundTestBase
sl@0
  1030
	{
sl@0
  1031
public:
sl@0
  1032
	static RA3FDevSoundTonePlayToneSequenceOnceAndStopTest* NewL(const TDesC& aTestName);
sl@0
  1033
private:
sl@0
  1034
	RA3FDevSoundTonePlayToneSequenceOnceAndStopTest(const TDesC& aTestName);
sl@0
  1035
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1036
	void DoKickoffTestL();
sl@0
  1037
	void DoTimerCallback();
sl@0
  1038
	void ToneFinished(TInt aError);
sl@0
  1039
private:
sl@0
  1040
	TBool iToneStopped;
sl@0
  1041
	};
sl@0
  1042
sl@0
  1043
/*
sl@0
  1044
 *========================================================================================================
sl@0
  1045
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0047
sl@0
  1046
 */
sl@0
  1047
class RA3FDevSoundTonePlayToneOncePauseTest : public RA3FDevSoundTestBase
sl@0
  1048
	{
sl@0
  1049
public:
sl@0
  1050
	static RA3FDevSoundTonePlayToneOncePauseTest* NewL(const TDesC& aTestName);
sl@0
  1051
private:
sl@0
  1052
	RA3FDevSoundTonePlayToneOncePauseTest(const TDesC& aTestName);
sl@0
  1053
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1054
	void DoKickoffTestL();
sl@0
  1055
	void DoTimerCallback();
sl@0
  1056
	void ToneFinished(TInt aError);
sl@0
  1057
	
sl@0
  1058
private:
sl@0
  1059
	TInt iDuration;
sl@0
  1060
	TInt iFrequencyTone1;
sl@0
  1061
	TBool iPaused;
sl@0
  1062
	TInt iSamplesPlayedPaused;
sl@0
  1063
	
sl@0
  1064
	};
sl@0
  1065
sl@0
  1066
/*
sl@0
  1067
 *========================================================================================================
sl@0
  1068
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0048
sl@0
  1069
 */
sl@0
  1070
class RA3FDevSoundTonePlayDualToneOncePauseTest : public RA3FDevSoundTestBase
sl@0
  1071
	{
sl@0
  1072
public:
sl@0
  1073
	static RA3FDevSoundTonePlayDualToneOncePauseTest* NewL(const TDesC& aTestName);
sl@0
  1074
private:
sl@0
  1075
	RA3FDevSoundTonePlayDualToneOncePauseTest(const TDesC& aTestName);
sl@0
  1076
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1077
	void DoKickoffTestL();
sl@0
  1078
	void DoTimerCallback();
sl@0
  1079
	void ToneFinished(TInt aError);
sl@0
  1080
	
sl@0
  1081
private:
sl@0
  1082
	TInt iDuration;
sl@0
  1083
	TInt iFrequencyTone1;
sl@0
  1084
	TInt iFrequencyTone2;
sl@0
  1085
	TBool iPaused;
sl@0
  1086
	TInt iSamplesPlayedPaused;
sl@0
  1087
	};
sl@0
  1088
sl@0
  1089
/*
sl@0
  1090
 *========================================================================================================
sl@0
  1091
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0049
sl@0
  1092
 */
sl@0
  1093
class RA3FDevSoundTonePlayDTMFStringOncePauseTest : public RA3FDevSoundTestBase
sl@0
  1094
	{
sl@0
  1095
public:
sl@0
  1096
	static RA3FDevSoundTonePlayDTMFStringOncePauseTest* NewL(const TDesC& aTestName);
sl@0
  1097
private:
sl@0
  1098
	RA3FDevSoundTonePlayDTMFStringOncePauseTest(const TDesC& aTestName);
sl@0
  1099
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1100
	void DoKickoffTestL();
sl@0
  1101
	void DoTimerCallback();
sl@0
  1102
	void ToneFinished(TInt aError);
sl@0
  1103
sl@0
  1104
private:
sl@0
  1105
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
  1106
	TBool iPaused;
sl@0
  1107
	TInt iSamplesPlayedPaused;
sl@0
  1108
	TInt iDTMFPauses;
sl@0
  1109
	TInt iDTMFTones;
sl@0
  1110
	};
sl@0
  1111
sl@0
  1112
/*
sl@0
  1113
 *========================================================================================================
sl@0
  1114
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0050
sl@0
  1115
 */
sl@0
  1116
class RA3FDevSoundTonePlayToneSequenceOncePauseTest : public RA3FDevSoundTestBase
sl@0
  1117
	{
sl@0
  1118
public:
sl@0
  1119
	static RA3FDevSoundTonePlayToneSequenceOncePauseTest* NewL(const TDesC& aTestName);
sl@0
  1120
private:
sl@0
  1121
	RA3FDevSoundTonePlayToneSequenceOncePauseTest(const TDesC& aTestName);
sl@0
  1122
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1123
	void DoKickoffTestL();
sl@0
  1124
	void DoTimerCallback();
sl@0
  1125
	void ToneFinished(TInt aError);
sl@0
  1126
private:
sl@0
  1127
	TBool iPaused;
sl@0
  1128
	TInt iSamplesPlayedPaused;
sl@0
  1129
	};
sl@0
  1130
sl@0
  1131
/*
sl@0
  1132
 *========================================================================================================
sl@0
  1133
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0051
sl@0
  1134
 */
sl@0
  1135
class RA3FDevSoundTonePlayToneOnceInitializedToPlayAudioTest : public RA3FDevSoundTestBase
sl@0
  1136
	{
sl@0
  1137
public:
sl@0
  1138
	static RA3FDevSoundTonePlayToneOnceInitializedToPlayAudioTest* NewL(const TDesC& aTestName);
sl@0
  1139
private:
sl@0
  1140
	RA3FDevSoundTonePlayToneOnceInitializedToPlayAudioTest(const TDesC& aTestName);
sl@0
  1141
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1142
	void DoKickoffTestL();
sl@0
  1143
	
sl@0
  1144
private:
sl@0
  1145
	TInt iDuration;
sl@0
  1146
	TInt iFrequencyTone1;
sl@0
  1147
	};
sl@0
  1148
sl@0
  1149
/*
sl@0
  1150
 *========================================================================================================
sl@0
  1151
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0052
sl@0
  1152
 */
sl@0
  1153
class RA3FDevSoundTonePlayDualToneOnceInitializedToPlayAudioTest : public RA3FDevSoundTestBase
sl@0
  1154
	{
sl@0
  1155
public:
sl@0
  1156
	static RA3FDevSoundTonePlayDualToneOnceInitializedToPlayAudioTest* NewL(const TDesC& aTestName);
sl@0
  1157
private:
sl@0
  1158
	RA3FDevSoundTonePlayDualToneOnceInitializedToPlayAudioTest(const TDesC& aTestName);
sl@0
  1159
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1160
	void DoKickoffTestL();
sl@0
  1161
		
sl@0
  1162
private:
sl@0
  1163
	TInt iDuration;
sl@0
  1164
	TInt iFrequencyTone1;
sl@0
  1165
	TInt iFrequencyTone2;
sl@0
  1166
	};
sl@0
  1167
sl@0
  1168
/*
sl@0
  1169
 *========================================================================================================
sl@0
  1170
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0053
sl@0
  1171
 */
sl@0
  1172
class RA3FDevSoundTonePlayDTMFStringOnceInitializedToPlayAudioTest : public RA3FDevSoundTestBase
sl@0
  1173
	{
sl@0
  1174
public:
sl@0
  1175
	static RA3FDevSoundTonePlayDTMFStringOnceInitializedToPlayAudioTest* NewL(const TDesC& aTestName);
sl@0
  1176
private:
sl@0
  1177
	RA3FDevSoundTonePlayDTMFStringOnceInitializedToPlayAudioTest(const TDesC& aTestName);
sl@0
  1178
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1179
	void DoKickoffTestL();
sl@0
  1180
sl@0
  1181
private:
sl@0
  1182
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
  1183
	};
sl@0
  1184
sl@0
  1185
/*
sl@0
  1186
 *========================================================================================================
sl@0
  1187
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0054
sl@0
  1188
 */
sl@0
  1189
class RA3FDevSoundTonePlayToneSequenceOnceInitializedToPlayAudioTest : public RA3FDevSoundTestBase
sl@0
  1190
	{
sl@0
  1191
public:
sl@0
  1192
	static RA3FDevSoundTonePlayToneSequenceOnceInitializedToPlayAudioTest* NewL(const TDesC& aTestName);
sl@0
  1193
private:
sl@0
  1194
	RA3FDevSoundTonePlayToneSequenceOnceInitializedToPlayAudioTest(const TDesC& aTestName);
sl@0
  1195
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1196
	void DoKickoffTestL();
sl@0
  1197
	};
sl@0
  1198
sl@0
  1199
/*
sl@0
  1200
 *========================================================================================================
sl@0
  1201
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0055
sl@0
  1202
 */
sl@0
  1203
class RA3FDevSoundTonePlayToneOnceInitializedToRecordAudioTest : public RA3FDevSoundTestBase
sl@0
  1204
	{
sl@0
  1205
public:
sl@0
  1206
	static RA3FDevSoundTonePlayToneOnceInitializedToRecordAudioTest* NewL(const TDesC& aTestName);
sl@0
  1207
private:
sl@0
  1208
	RA3FDevSoundTonePlayToneOnceInitializedToRecordAudioTest(const TDesC& aTestName);
sl@0
  1209
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1210
	void DoKickoffTestL();
sl@0
  1211
	
sl@0
  1212
private:
sl@0
  1213
	TInt iDuration;
sl@0
  1214
	TInt iFrequencyTone1;
sl@0
  1215
	};
sl@0
  1216
sl@0
  1217
/*
sl@0
  1218
 *========================================================================================================
sl@0
  1219
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0056
sl@0
  1220
 */
sl@0
  1221
class RA3FDevSoundTonePlayDualToneOnceInitializedToRecordAudioTest : public RA3FDevSoundTestBase
sl@0
  1222
	{
sl@0
  1223
public:
sl@0
  1224
	static RA3FDevSoundTonePlayDualToneOnceInitializedToRecordAudioTest* NewL(const TDesC& aTestName);
sl@0
  1225
private:
sl@0
  1226
	RA3FDevSoundTonePlayDualToneOnceInitializedToRecordAudioTest(const TDesC& aTestName);
sl@0
  1227
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1228
	void DoKickoffTestL();
sl@0
  1229
		
sl@0
  1230
private:
sl@0
  1231
	TInt iDuration;
sl@0
  1232
	TInt iFrequencyTone1;
sl@0
  1233
	TInt iFrequencyTone2;
sl@0
  1234
	};
sl@0
  1235
sl@0
  1236
/*
sl@0
  1237
 *========================================================================================================
sl@0
  1238
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0057
sl@0
  1239
 */
sl@0
  1240
class RA3FDevSoundTonePlayDTMFStringOnceInitializedToRecordAudioTest : public RA3FDevSoundTestBase
sl@0
  1241
	{
sl@0
  1242
public:
sl@0
  1243
	static RA3FDevSoundTonePlayDTMFStringOnceInitializedToRecordAudioTest* NewL(const TDesC& aTestName);
sl@0
  1244
private:
sl@0
  1245
	RA3FDevSoundTonePlayDTMFStringOnceInitializedToRecordAudioTest(const TDesC& aTestName);
sl@0
  1246
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1247
	void DoKickoffTestL();
sl@0
  1248
sl@0
  1249
private:
sl@0
  1250
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
  1251
	};
sl@0
  1252
sl@0
  1253
/*
sl@0
  1254
 *========================================================================================================
sl@0
  1255
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0058
sl@0
  1256
 */
sl@0
  1257
class RA3FDevSoundTonePlayToneSequenceOnceInitializedToRecordAudioTest : public RA3FDevSoundTestBase
sl@0
  1258
	{
sl@0
  1259
public:
sl@0
  1260
	static RA3FDevSoundTonePlayToneSequenceOnceInitializedToRecordAudioTest* NewL(const TDesC& aTestName);
sl@0
  1261
private:
sl@0
  1262
	RA3FDevSoundTonePlayToneSequenceOnceInitializedToRecordAudioTest(const TDesC& aTestName);
sl@0
  1263
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1264
	void DoKickoffTestL();
sl@0
  1265
	};
sl@0
  1266
sl@0
  1267
/*
sl@0
  1268
 *========================================================================================================
sl@0
  1269
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0059
sl@0
  1270
 */
sl@0
  1271
class RA3FDevSoundTonePlayToneWithoutCallingInitializeTest : public RA3FDevSoundTestBase
sl@0
  1272
	{
sl@0
  1273
public:
sl@0
  1274
	static RA3FDevSoundTonePlayToneWithoutCallingInitializeTest* NewL(const TDesC& aTestName);
sl@0
  1275
private:
sl@0
  1276
	RA3FDevSoundTonePlayToneWithoutCallingInitializeTest(const TDesC& aTestName);
sl@0
  1277
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1278
	void DoKickoffTestL();
sl@0
  1279
sl@0
  1280
private:
sl@0
  1281
	TInt iDuration;
sl@0
  1282
	TInt iFrequencyTone1;
sl@0
  1283
	};
sl@0
  1284
	
sl@0
  1285
/*
sl@0
  1286
 *========================================================================================================
sl@0
  1287
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0060
sl@0
  1288
 */
sl@0
  1289
class RA3FDevSoundTonePlayDualToneWithoutCallingInitializeTest : public RA3FDevSoundTestBase
sl@0
  1290
	{
sl@0
  1291
public:
sl@0
  1292
	static RA3FDevSoundTonePlayDualToneWithoutCallingInitializeTest* NewL(const TDesC& aTestName);
sl@0
  1293
private:
sl@0
  1294
	RA3FDevSoundTonePlayDualToneWithoutCallingInitializeTest(const TDesC& aTestName);
sl@0
  1295
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1296
	void DoKickoffTestL();
sl@0
  1297
	
sl@0
  1298
private:
sl@0
  1299
	TInt iDuration;
sl@0
  1300
	TInt iFrequencyTone1;
sl@0
  1301
	TInt iFrequencyTone2;
sl@0
  1302
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
  1303
	};
sl@0
  1304
	
sl@0
  1305
/*
sl@0
  1306
 *========================================================================================================
sl@0
  1307
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0061
sl@0
  1308
 */
sl@0
  1309
class RA3FDevSoundTonePlayDTMFStringWithoutCallingInitializeTest : public RA3FDevSoundTestBase
sl@0
  1310
	{
sl@0
  1311
public:
sl@0
  1312
	static RA3FDevSoundTonePlayDTMFStringWithoutCallingInitializeTest* NewL(const TDesC& aTestName);
sl@0
  1313
private:
sl@0
  1314
	RA3FDevSoundTonePlayDTMFStringWithoutCallingInitializeTest(const TDesC& aTestName);
sl@0
  1315
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1316
	void DoKickoffTestL();
sl@0
  1317
	
sl@0
  1318
private:
sl@0
  1319
	TBuf16<KMaxStringLength> iDTMFString;
sl@0
  1320
	};
sl@0
  1321
sl@0
  1322
/*
sl@0
  1323
 *========================================================================================================
sl@0
  1324
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0062
sl@0
  1325
 */
sl@0
  1326
class RA3FDevSoundTonePlayToneSequenceWithoutCallingInitializeTest : public RA3FDevSoundTestBase
sl@0
  1327
	{
sl@0
  1328
public:
sl@0
  1329
	static RA3FDevSoundTonePlayToneSequenceWithoutCallingInitializeTest* NewL(const TDesC& aTestName);
sl@0
  1330
private:
sl@0
  1331
	RA3FDevSoundTonePlayToneSequenceWithoutCallingInitializeTest(const TDesC& aTestName);
sl@0
  1332
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1333
	void DoKickoffTestL();
sl@0
  1334
	};
sl@0
  1335
sl@0
  1336
/*
sl@0
  1337
 *========================================================================================================
sl@0
  1338
 * MM-A3F-DEVSOUND-CHRTZ-TONE-0063
sl@0
  1339
 */
sl@0
  1340
class RA3FDevSoundTonePlayToneSequenceUsingInvalidDescriptorTest : public RA3FDevSoundTestBase
sl@0
  1341
	{
sl@0
  1342
public:
sl@0
  1343
	static RA3FDevSoundTonePlayToneSequenceUsingInvalidDescriptorTest* NewL(const TDesC& aTestName);
sl@0
  1344
private:
sl@0
  1345
	RA3FDevSoundTonePlayToneSequenceUsingInvalidDescriptorTest(const TDesC& aTestName);
sl@0
  1346
	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
sl@0
  1347
	void DoKickoffTestL();
sl@0
  1348
	void ToneFinished(TInt aError);
sl@0
  1349
	
sl@0
  1350
private:
sl@0
  1351
	TBuf8<KMaxStringLength> iInvalidToneSequence;
sl@0
  1352
	};
sl@0
  1353
sl@0
  1354
sl@0
  1355
#endif //CHAR_A3F_DEVSOUND_TONETEST_H
sl@0
  1356
sl@0
  1357