devsound/a3fcharacterisationtest/src/char_a3f_devsound_playtest.h
changeset 24 2672ba96448e
equal deleted inserted replaced
21:1c0a769d0cc5 24:2672ba96448e
       
     1 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 #ifndef CHAR_A3F_DEVSOUND_PLAYTEST_H
       
    17 #define CHAR_A3F_DEVSOUND_PLAYTEST_H
       
    18 
       
    19 // User includes
       
    20 #include "char_a3f_devsound_testbase.h"
       
    21 #include "char_a3f_devsound_playrecordclients.h"
       
    22 #include "char_a3f_devsound_toneclient.h"
       
    23 
       
    24 /*
       
    25  *========================================================================================================
       
    26  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0001
       
    27  */
       
    28 class RA3FDevSoundPlaySetConfigTest : public RA3FDevSoundTestBase
       
    29 	{
       
    30 public:
       
    31 	static RA3FDevSoundPlaySetConfigTest* NewL(const TDesC& aTestName);
       
    32 
       
    33 private:
       
    34 	RA3FDevSoundPlaySetConfigTest(const TDesC& aTestName);
       
    35 	void DoKickoffTestL();
       
    36 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
    37 
       
    38 private:
       
    39 	TMMFSampleRate iESampleRate;
       
    40 	TInt iSampleRate;
       
    41 	TInt iChannels;
       
    42 	};
       
    43 
       
    44 /*
       
    45  *========================================================================================================
       
    46  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0002
       
    47  */
       
    48 class RA3FDevSoundPlaySetVolumeWhilePlayingTest : public RA3FDevSoundTestBase
       
    49 	{
       
    50 public:
       
    51 	static RA3FDevSoundPlaySetVolumeWhilePlayingTest* NewL(const TDesC& aTestName);
       
    52 
       
    53 private:
       
    54 	RA3FDevSoundPlaySetVolumeWhilePlayingTest(const TDesC& aTestName);
       
    55 	void DoKickoffTestL();
       
    56 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
    57 	void DoTimerCallback();
       
    58 private:
       
    59 	TInt iVolume;
       
    60 	TFileName iFilename;
       
    61 	};
       
    62 
       
    63 /*
       
    64  *========================================================================================================
       
    65  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0003
       
    66  */
       
    67 class RA3FDevSoundPlaySetVolumeTest : public RA3FDevSoundTestBase
       
    68 	{
       
    69 public:
       
    70 	static RA3FDevSoundPlaySetVolumeTest* NewL(const TDesC& aTestName);
       
    71 
       
    72 private:
       
    73 	RA3FDevSoundPlaySetVolumeTest(const TDesC& aTestName);
       
    74 	void DoKickoffTestL();
       
    75 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
    76 
       
    77 private:
       
    78 	TInt iVolume;
       
    79 	};
       
    80 
       
    81 /*
       
    82  *========================================================================================================
       
    83  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0004
       
    84  */
       
    85 class RA3FDevSoundPlaySetVolumeWhilePausedPlayingTest : public RA3FDevSoundTestBase
       
    86 	{
       
    87 public:
       
    88 	static RA3FDevSoundPlaySetVolumeWhilePausedPlayingTest* NewL(const TDesC& aTestName);
       
    89 
       
    90 private:
       
    91 	RA3FDevSoundPlaySetVolumeWhilePausedPlayingTest(const TDesC& aTestName);
       
    92 	void DoKickoffTestL();
       
    93 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
    94 	void DoTimerCallback();
       
    95 
       
    96 private:
       
    97 	TFileName iFilename;
       
    98 	TInt iVolume;
       
    99 	};
       
   100 
       
   101 /*
       
   102  *========================================================================================================
       
   103  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0005
       
   104  */
       
   105 class RA3FDevSoundPlaySetVolumeInitializeToPlayAudioThenTonesTest: public RA3FDevSoundTestBase
       
   106 	{
       
   107 public:
       
   108 	static RA3FDevSoundPlaySetVolumeInitializeToPlayAudioThenTonesTest* NewL(const TDesC& aTestName);
       
   109 
       
   110 private:
       
   111 	RA3FDevSoundPlaySetVolumeInitializeToPlayAudioThenTonesTest(const TDesC& aTestName);
       
   112 	void DoKickoffTestL();
       
   113 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   114 
       
   115 private:
       
   116 	TBool iReinitialized;
       
   117 	TInt iVolume;
       
   118 	};
       
   119 
       
   120 /*
       
   121  *========================================================================================================
       
   122  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0006
       
   123  */
       
   124 class RA3FDevSoundPlaySetVolumeRampWhilePlayingTest : public RA3FDevSoundTestBase
       
   125 	{
       
   126 public:
       
   127 	static RA3FDevSoundPlaySetVolumeRampWhilePlayingTest* NewL(const TDesC& aTestName);
       
   128 
       
   129 private:
       
   130 	RA3FDevSoundPlaySetVolumeRampWhilePlayingTest(const TDesC& aTestName);
       
   131 	void DoKickoffTestL();
       
   132 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   133 	void DoTimerCallback();
       
   134 	void PlayError(TInt aError);
       
   135 
       
   136 private:
       
   137 	TFileName iFilename;
       
   138 	TInt iVolumeRamp;
       
   139 	TBool iPlayInitTwice;
       
   140 	};
       
   141 
       
   142 /*
       
   143  *========================================================================================================
       
   144  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0007
       
   145  */
       
   146 class RA3FDevSoundPlaySetVolumeBeyondMaxVolumeTest : public RA3FDevSoundTestBase
       
   147 	{
       
   148 public:
       
   149 	static RA3FDevSoundPlaySetVolumeBeyondMaxVolumeTest* NewL(const TDesC& aTestName);
       
   150 
       
   151 private:
       
   152 	RA3FDevSoundPlaySetVolumeBeyondMaxVolumeTest(const TDesC& aTestName);
       
   153 	void DoKickoffTestL();
       
   154 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   155 	};
       
   156 
       
   157 /*
       
   158  *========================================================================================================
       
   159  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0008
       
   160  */
       
   161 class RA3FDevSoundPlaySetVolumeToNegativeTest : public RA3FDevSoundTestBase
       
   162 	{
       
   163 public:
       
   164 	static RA3FDevSoundPlaySetVolumeToNegativeTest* NewL(const TDesC& aTestName);
       
   165 
       
   166 private:
       
   167 	RA3FDevSoundPlaySetVolumeToNegativeTest(const TDesC& aTestName);
       
   168 	void DoKickoffTestL();
       
   169 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   170 	
       
   171 private:
       
   172 	TInt iVolume;
       
   173 	};	
       
   174 
       
   175 /*
       
   176  *========================================================================================================
       
   177  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0009
       
   178  */
       
   179 class RA3FDevSoundPlaySetPlayBalanceBeyondOneHundredTest : public RA3FDevSoundTestBase
       
   180 	{
       
   181 public:
       
   182 	static RA3FDevSoundPlaySetPlayBalanceBeyondOneHundredTest* NewL(const TDesC& aTestName);
       
   183 
       
   184 private:
       
   185 	RA3FDevSoundPlaySetPlayBalanceBeyondOneHundredTest(const TDesC& aTestName);
       
   186 	void DoKickoffTestL();
       
   187 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   188 	
       
   189 private:
       
   190 	TInt iLSpeakerBalance;
       
   191 	TInt iRSpeakerBalance;
       
   192 	};
       
   193 
       
   194 /*
       
   195  *========================================================================================================
       
   196  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0010
       
   197  */
       
   198 class RA3FDevSoundPlaySetPlayBalanceToNegativeTest : public RA3FDevSoundTestBase
       
   199 	{
       
   200 public:
       
   201 	static RA3FDevSoundPlaySetPlayBalanceToNegativeTest* NewL(const TDesC& aTestName);
       
   202 
       
   203 private:
       
   204 	RA3FDevSoundPlaySetPlayBalanceToNegativeTest(const TDesC& aTestName);
       
   205 	void DoKickoffTestL();
       
   206 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   207 	
       
   208 private:
       
   209 	TInt iLSpeakerBalance;
       
   210 	TInt iRSpeakerBalance;
       
   211 	};
       
   212 
       
   213 /*
       
   214  *========================================================================================================
       
   215  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0011
       
   216  */
       
   217 class RA3FDevSoundPlaySetPrioritySettingsTest : public RA3FDevSoundTestBase
       
   218 	{
       
   219 public:
       
   220 	static RA3FDevSoundPlaySetPrioritySettingsTest* NewL(const TDesC& aTestName);
       
   221 
       
   222 private:
       
   223 	RA3FDevSoundPlaySetPrioritySettingsTest(const TDesC& aTestName);
       
   224 	void DoKickoffTestL();
       
   225 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   226 
       
   227 private:
       
   228 	TInt iPriority;
       
   229 	};
       
   230 
       
   231 /*
       
   232  *========================================================================================================
       
   233  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0012
       
   234  */
       
   235 class RA3FDevSoundPlayCapabilitiesTest : public RA3FDevSoundTestBase
       
   236 	{
       
   237 public:
       
   238 	static RA3FDevSoundPlayCapabilitiesTest* NewL(const TDesC& aTestName);
       
   239 
       
   240 private:
       
   241 	RA3FDevSoundPlayCapabilitiesTest(const TDesC& aTestName);
       
   242 	void DoKickoffTestL();
       
   243 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   244 	
       
   245 private:
       
   246 	TInt iExCapChannels;
       
   247 	TInt iExCapRate;
       
   248 	};
       
   249 
       
   250 /*
       
   251  *========================================================================================================
       
   252  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0013
       
   253  */
       
   254 class RA3FDevSoundPlayConfigTest : public RA3FDevSoundTestBase
       
   255 	{
       
   256 public:
       
   257 	static RA3FDevSoundPlayConfigTest* NewL(const TDesC& aTestName);
       
   258 
       
   259 private:
       
   260 	RA3FDevSoundPlayConfigTest(const TDesC& aTestName);
       
   261 	void DoKickoffTestL();
       
   262 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   263 
       
   264 private:
       
   265 	TMMFSampleRate iESampleRate;
       
   266 	TMMFSampleRate iExSampleRate;
       
   267 	TInt iExCapRate;
       
   268 	TInt iExCapChannels;
       
   269 	};
       
   270 
       
   271 /*
       
   272  *========================================================================================================
       
   273  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0014
       
   274  */
       
   275 class RA3FDevSoundPlayGetPlayBalanceTest : public RA3FDevSoundTestBase
       
   276 	{
       
   277 public:
       
   278 	static RA3FDevSoundPlayGetPlayBalanceTest* NewL(const TDesC& aTestName);
       
   279 
       
   280 private:
       
   281 	RA3FDevSoundPlayGetPlayBalanceTest(const TDesC& aTestName);
       
   282 	void DoKickoffTestL();
       
   283 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   284 	
       
   285 private:
       
   286 	TInt iExLSpeakerBalance;
       
   287 	TInt iExRSpeakerBalance;
       
   288 	};
       
   289 
       
   290 /*
       
   291  *========================================================================================================
       
   292  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0015
       
   293  */
       
   294 class RA3FDevSoundPlayGetSupportedInputDataTypesLTest : public RA3FDevSoundTestBase
       
   295 	{
       
   296 public:
       
   297 	static RA3FDevSoundPlayGetSupportedInputDataTypesLTest* NewL(const TDesC& aTestName);
       
   298 
       
   299 private:
       
   300 	RA3FDevSoundPlayGetSupportedInputDataTypesLTest(const TDesC& aTestName);
       
   301 	void DoKickoffTestL();
       
   302 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   303 
       
   304 private:
       
   305 	RArray<TFourCC> iSupportedDataTypes;
       
   306 	TInt iCurrentTypeInTest;
       
   307 	};	
       
   308 
       
   309 /*
       
   310  *========================================================================================================
       
   311  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0016
       
   312  */
       
   313 class RA3FDevSoundPlayMaxVolumeTest : public RA3FDevSoundTestBase
       
   314 	{
       
   315 public:
       
   316 	static RA3FDevSoundPlayMaxVolumeTest* NewL(const TDesC& aTestName);
       
   317 
       
   318 private:
       
   319 	RA3FDevSoundPlayMaxVolumeTest(const TDesC& aTestName);
       
   320 	void DoKickoffTestL();
       
   321 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   322 
       
   323 private:
       
   324 	TInt iExVolume;
       
   325 	};
       
   326 
       
   327 /*
       
   328  *========================================================================================================
       
   329  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0017
       
   330  */
       
   331 class RA3FDevSoundPlaySamplesPlayedTest : public RA3FDevSoundTestBase
       
   332 	{
       
   333 public:
       
   334 	static RA3FDevSoundPlaySamplesPlayedTest* NewL(const TDesC& aTestName);
       
   335 
       
   336 private:
       
   337 	RA3FDevSoundPlaySamplesPlayedTest(const TDesC& aTestName);
       
   338 	void DoKickoffTestL();
       
   339 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   340 	
       
   341 private:
       
   342 	TInt iExSamplesPlayed;
       
   343 	};
       
   344 
       
   345 /*
       
   346  *========================================================================================================
       
   347  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0018
       
   348  */
       
   349 class RA3FDevSoundPlayVolumeTest : public RA3FDevSoundTestBase
       
   350 	{
       
   351 public:
       
   352 	static RA3FDevSoundPlayVolumeTest* NewL(const TDesC& aTestName);
       
   353 
       
   354 private:
       
   355 	RA3FDevSoundPlayVolumeTest(const TDesC& aTestName);
       
   356 	void DoKickoffTestL();
       
   357 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   358 	
       
   359 private:
       
   360 	TInt iExVolume;
       
   361 	};
       
   362 
       
   363 /*
       
   364  *========================================================================================================
       
   365  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0019
       
   366  */
       
   367 class RA3FDevSoundPlayCapabilitiesWhilePlayingTest : public RA3FDevSoundTestBase
       
   368 	{
       
   369 public:
       
   370 	static RA3FDevSoundPlayCapabilitiesWhilePlayingTest* NewL(const TDesC& aTestName);
       
   371 
       
   372 private:
       
   373 	RA3FDevSoundPlayCapabilitiesWhilePlayingTest(const TDesC& aTestName);
       
   374 	void DoKickoffTestL();
       
   375 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   376 	void DoTimerCallback();
       
   377 
       
   378 private:
       
   379 	TFileName iFilename;
       
   380 	TInt iExCapChannels;
       
   381 	TInt iExCapRate;
       
   382 	};
       
   383 
       
   384 /*
       
   385  *========================================================================================================
       
   386  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0020
       
   387  */
       
   388 class RA3FDevSoundPlayConfigWhilePlayingTest : public RA3FDevSoundTestBase
       
   389 	{
       
   390 public:
       
   391 	static RA3FDevSoundPlayConfigWhilePlayingTest* NewL(const TDesC& aTestName);
       
   392 
       
   393 private:
       
   394 	RA3FDevSoundPlayConfigWhilePlayingTest(const TDesC& aTestName);
       
   395 	void DoKickoffTestL();
       
   396 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   397 	void DoTimerCallback();
       
   398 
       
   399 private:
       
   400 	TFileName iFilename;
       
   401 	TMMFSampleRate iExSampleRate;
       
   402 	TInt iExCapRate;
       
   403 	TInt iExCapChannels;
       
   404 	};
       
   405 
       
   406 /*
       
   407  *========================================================================================================
       
   408  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0021
       
   409  */
       
   410 class RA3FDevSoundPlayGetPlayBalanceWhilePlayingTest : public RA3FDevSoundTestBase
       
   411 	{
       
   412 public:
       
   413 	static RA3FDevSoundPlayGetPlayBalanceWhilePlayingTest* NewL(const TDesC& aTestName);
       
   414 
       
   415 private:
       
   416 	RA3FDevSoundPlayGetPlayBalanceWhilePlayingTest(const TDesC& aTestName);
       
   417 	void DoKickoffTestL();
       
   418 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   419 	void DoTimerCallback();
       
   420 
       
   421 private:
       
   422 	TFileName iFilename;
       
   423 	TInt iExLSpeakerBalance;
       
   424 	TInt iExRSpeakerBalance;
       
   425 	};
       
   426 
       
   427 /*
       
   428  *========================================================================================================
       
   429  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0022
       
   430  */
       
   431 class RA3FDevSoundPlayGetSupportedInputDataTypesWhilePlayingTest : public RA3FDevSoundTestBase
       
   432 	{
       
   433 public:
       
   434 	static RA3FDevSoundPlayGetSupportedInputDataTypesWhilePlayingTest* NewL(const TDesC& aTestName);
       
   435 
       
   436 private:
       
   437 	RA3FDevSoundPlayGetSupportedInputDataTypesWhilePlayingTest(const TDesC& aTestName);
       
   438 	void DoKickoffTestL();
       
   439 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   440 	void DoTimerCallback();
       
   441 private:
       
   442 	TFileName iFilename;
       
   443 	};
       
   444 
       
   445 /*
       
   446  *========================================================================================================
       
   447  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0023
       
   448  */
       
   449 class RA3FDevSoundPlayMaxVolumeWhilePlayingTest : public RA3FDevSoundTestBase
       
   450 	{
       
   451 public:
       
   452 	static RA3FDevSoundPlayMaxVolumeWhilePlayingTest* NewL(const TDesC& aTestName);
       
   453 
       
   454 private:
       
   455 	RA3FDevSoundPlayMaxVolumeWhilePlayingTest(const TDesC& aTestName);
       
   456 	void DoKickoffTestL();
       
   457 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   458 	void DoTimerCallback();
       
   459 
       
   460 private:
       
   461 	TFileName iFilename;
       
   462 	TInt iExVolume;
       
   463 	};
       
   464 
       
   465 /*
       
   466  *========================================================================================================
       
   467  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0024
       
   468  */
       
   469 class RA3FDevSoundPlaySamplesPlayedWhilePlayingTest : public RA3FDevSoundTestBase
       
   470 	{
       
   471 public:
       
   472 	static RA3FDevSoundPlaySamplesPlayedWhilePlayingTest* NewL(const TDesC& aTestName);
       
   473 
       
   474 private:
       
   475 	RA3FDevSoundPlaySamplesPlayedWhilePlayingTest(const TDesC& aTestName);
       
   476 	void DoKickoffTestL();
       
   477 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   478 	void DoTimerCallback();
       
   479 	
       
   480 private:
       
   481 	TFileName iFilename;
       
   482 	TInt iExSamplesPlayed;
       
   483 	};
       
   484 
       
   485 /*
       
   486  *========================================================================================================
       
   487  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0025
       
   488  */
       
   489 class RA3FDevSoundPlayVolumeWhilePlayingTest : public RA3FDevSoundTestBase
       
   490 	{
       
   491 public:
       
   492 	static RA3FDevSoundPlayVolumeWhilePlayingTest* NewL(const TDesC& aTestName);
       
   493 
       
   494 private:
       
   495 	RA3FDevSoundPlayVolumeWhilePlayingTest(const TDesC& aTestName);
       
   496 	void DoKickoffTestL();
       
   497 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   498 	void DoTimerCallback();
       
   499 	
       
   500 private:
       
   501 	TFileName iFilename;
       
   502 	TInt iExVolume;
       
   503 	};	
       
   504 
       
   505 /*
       
   506  *========================================================================================================
       
   507  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0026
       
   508  */
       
   509 class RA3FDevSoundPlayTest : public RA3FDevSoundTestBase
       
   510 	{
       
   511 public:
       
   512 	static RA3FDevSoundPlayTest* NewL(const TDesC& aTestName);
       
   513 
       
   514 private:
       
   515 	RA3FDevSoundPlayTest(const TDesC& aTestName);
       
   516 	void DoKickoffTestL();
       
   517 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   518 
       
   519 private:
       
   520 	TFileName iFilename;
       
   521 	};	
       
   522 
       
   523 /*
       
   524  *========================================================================================================
       
   525  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0027
       
   526  */
       
   527 class RA3FDevSoundPlayEmptyBufferWhilePlayingTest : public RA3FDevSoundTestBase
       
   528 	{
       
   529 public:
       
   530 	static RA3FDevSoundPlayEmptyBufferWhilePlayingTest* NewL(const TDesC& aTestName);
       
   531 
       
   532 private:
       
   533 	RA3FDevSoundPlayEmptyBufferWhilePlayingTest(const TDesC& aTestName);
       
   534 	void DoKickoffTestL();
       
   535 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   536 	void DoTimerCallback();
       
   537 
       
   538 private:
       
   539 	TFileName iFilename;
       
   540 	};
       
   541 
       
   542 /*
       
   543  *========================================================================================================
       
   544  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0028
       
   545  */
       
   546 class RA3FDevSoundPlayEmptyBufferBeforePlayingTest : public RA3FDevSoundTestBase
       
   547 	{
       
   548 public:
       
   549 	static RA3FDevSoundPlayEmptyBufferBeforePlayingTest* NewL(const TDesC& aTestName);
       
   550 
       
   551 private:
       
   552 	RA3FDevSoundPlayEmptyBufferBeforePlayingTest(const TDesC& aTestName);
       
   553 	void DoKickoffTestL();
       
   554 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   555 	};
       
   556 
       
   557 /*
       
   558  *========================================================================================================
       
   559  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0029
       
   560  */
       
   561 class RA3FDevSoundPlayPauseTest : public RA3FDevSoundTestBase
       
   562 	{
       
   563 public:
       
   564 	static RA3FDevSoundPlayPauseTest* NewL(const TDesC& aTestName);
       
   565 
       
   566 private:
       
   567 	RA3FDevSoundPlayPauseTest(const TDesC& aTestName);
       
   568 	void DoKickoffTestL();
       
   569 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   570 	void DoTimerCallback();
       
   571 
       
   572 private:
       
   573 	TFileName iFilename;
       
   574 	TBool iPaused;
       
   575 	TInt iSamplesPlayedPaused;
       
   576 	};
       
   577 
       
   578 /*
       
   579  *========================================================================================================
       
   580  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0030
       
   581  */
       
   582 class RA3FDevSoundPlayStopTest : public RA3FDevSoundTestBase
       
   583 	{
       
   584 public:
       
   585 	static RA3FDevSoundPlayStopTest* NewL(const TDesC& aTestName);
       
   586 
       
   587 private:
       
   588 	RA3FDevSoundPlayStopTest(const TDesC& aTestName);
       
   589 	void DoKickoffTestL();
       
   590 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   591 	void DoTimerCallback();
       
   592 
       
   593 private:
       
   594 	TFileName iFilename;
       
   595 	TBool iStopped;
       
   596 	};
       
   597 
       
   598 /*
       
   599  *========================================================================================================
       
   600  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0031
       
   601  */
       
   602 class RA3FDevSoundPlayPreemptionTest : public RA3FDevSoundTestBase, public MA3FDevsoundPlayAudioClientObserver
       
   603 	{
       
   604 public:
       
   605 	static RA3FDevSoundPlayPreemptionTest* NewL(const TDesC& aTestName);
       
   606 
       
   607 private:
       
   608 	RA3FDevSoundPlayPreemptionTest(const TDesC& aTestName);
       
   609 	void DoKickoffTestL();
       
   610 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   611 	void PlayError(TInt aError);
       
   612 	void DoTimerCallback();
       
   613 	void ClientInitializeCompleteCallback(TInt aError);
       
   614 	void ClientBufferToBeFilledCallback(TInt aError);
       
   615 	void ClientPlayErrorCallback(TInt aError, TBool aLastBuffer);
       
   616 	void ClientPlayHandleOpenFileErrorInValidEventOrStateCallBack(TMmfDevSoundClientErrorCodes aError);
       
   617 
       
   618 private:
       
   619 	TFileName iFilename;
       
   620 	TFileName iOtherFilename;
       
   621 	};
       
   622 
       
   623 /*
       
   624  *========================================================================================================
       
   625  * 3F-DEVSOUND-CHRTZ-PLAY-RAW-0032
       
   626  */
       
   627 class RA3FDevSoundPlayPreemptedByToneTest : public RA3FDevSoundTestBase, public MA3FDevsoundToneClientObserver
       
   628 	{
       
   629 public:
       
   630 	static RA3FDevSoundPlayPreemptedByToneTest* NewL(const TDesC& aTestName);
       
   631 private:
       
   632 	RA3FDevSoundPlayPreemptedByToneTest(const TDesC& aTestName);
       
   633 	void PlayError(TInt aError);
       
   634 	void ClientInitializeCompleteCallback(TInt aError);
       
   635 	void ClientToneFinishedCallback(TInt aError);
       
   636 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   637 	void DoKickoffTestL();
       
   638 	void DoTimerCallback();	
       
   639 	
       
   640 private:
       
   641 	TFileName iFilename;
       
   642 	TInt iFrequencyTone1;
       
   643 	TInt iDuration;
       
   644 	};
       
   645 
       
   646 /*
       
   647  *========================================================================================================
       
   648  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0033
       
   649  */
       
   650 class RA3FDevSoundPlayPreemptedByRecordTest : public RA3FDevSoundTestBase, public MA3FDevsoundRecordAudioClientObserver
       
   651 	{
       
   652 public:
       
   653 	static RA3FDevSoundPlayPreemptedByRecordTest* NewL(const TDesC& aTestName);
       
   654 private:
       
   655 	RA3FDevSoundPlayPreemptedByRecordTest(const TDesC& aTestName);
       
   656 	void PlayError(TInt aError);
       
   657 	void DoKickoffTestL();
       
   658 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   659 	void DoTimerCallback();	
       
   660 	void ClientInitializeCompleteCallback(TInt aError);
       
   661 	void ClientBufferToBeEmptiedCallback(TInt aError);
       
   662 	void ClientRecordErrorCallback(TInt aError);
       
   663 	void ClientRecordHandleOpenFileErrorInValidEventOrStateCallBack(TMmfDevSoundClientErrorCodes aError);
       
   664 
       
   665 private:
       
   666 	TInt iDuration;
       
   667 	TBool iOtherClientStarted;
       
   668 	TFileName iFilename;
       
   669 	TFileName iOtherFilename;
       
   670 	};
       
   671 
       
   672 /*
       
   673  *========================================================================================================
       
   674  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0034
       
   675  */
       
   676 class RA3FDevSoundPlayRejectionTest : public RA3FDevSoundTestBase, public MA3FDevsoundPlayAudioClientObserver
       
   677 	{
       
   678 public:
       
   679 	static RA3FDevSoundPlayRejectionTest* NewL(const TDesC& aTestName);
       
   680 
       
   681 private:
       
   682 	RA3FDevSoundPlayRejectionTest(const TDesC& aTestName);
       
   683 	void DoKickoffTestL();
       
   684 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   685 	void DoTimerCallback();
       
   686 	void ClientInitializeCompleteCallback(TInt aError);
       
   687 	void ClientBufferToBeFilledCallback(TInt aError);
       
   688 	void ClientPlayErrorCallback(TInt aError, TBool aLastBuffer);
       
   689 	void ClientPlayHandleOpenFileErrorInValidEventOrStateCallBack(TMmfDevSoundClientErrorCodes aError);
       
   690 	
       
   691 private:
       
   692 	TFileName iFilename;
       
   693 	TFileName iOtherFilename;
       
   694 	};
       
   695 
       
   696 /*
       
   697  *========================================================================================================
       
   698  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0035
       
   699  */
       
   700 class RA3FDevSoundPlayRejectedByToneTest : public RA3FDevSoundTestBase, public MA3FDevsoundPlayAudioClientObserver
       
   701 	{
       
   702 public:
       
   703 	static RA3FDevSoundPlayRejectedByToneTest* NewL(const TDesC& aTestName);
       
   704 private:
       
   705 	RA3FDevSoundPlayRejectedByToneTest(const TDesC& aTestName);
       
   706 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   707 	void DoKickoffTestL();
       
   708 	void DoTimerCallback();	
       
   709 	void ClientInitializeCompleteCallback(TInt aError);
       
   710 	void ClientBufferToBeFilledCallback(TInt aError);
       
   711 	void ClientPlayErrorCallback(TInt aError, TBool aLastBuffer);
       
   712 	void ClientPlayHandleOpenFileErrorInValidEventOrStateCallBack(TMmfDevSoundClientErrorCodes aError);
       
   713 
       
   714 private:
       
   715 	TFileName iFilename;
       
   716 	TInt iFrequencyTone1;
       
   717 	TInt iDuration;
       
   718 	};
       
   719 
       
   720 /*
       
   721  *========================================================================================================
       
   722  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0036
       
   723  */
       
   724 class RA3FDevSoundPlayRejectedByRecordTest : public RA3FDevSoundTestBase, public MA3FDevsoundPlayAudioClientObserver
       
   725 	{
       
   726 public:
       
   727 	static RA3FDevSoundPlayRejectedByRecordTest* NewL(const TDesC& aTestName);
       
   728 
       
   729 private:
       
   730 	RA3FDevSoundPlayRejectedByRecordTest(const TDesC& aTestName);
       
   731 	void DoKickoffTestL();
       
   732 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   733 	void DoTimerCallback();
       
   734 	void ClientInitializeCompleteCallback(TInt aError);
       
   735 	void ClientBufferToBeFilledCallback(TInt aError);
       
   736 	void ClientPlayErrorCallback(TInt aError, TBool aLastBuffer);
       
   737 	void ClientPlayHandleOpenFileErrorInValidEventOrStateCallBack(TMmfDevSoundClientErrorCodes aError);
       
   738 	
       
   739 private:
       
   740 	TFileName iFilename;
       
   741 	TFileName iOtherFilename;
       
   742 	TBool iOtherClientStarted;
       
   743 	};
       
   744 
       
   745 /*
       
   746  *========================================================================================================
       
   747  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0037
       
   748  */
       
   749 class RA3FDevSoundPlayDataBeforePlayInitTest : public RA3FDevSoundTestBase
       
   750 	{
       
   751 public:
       
   752 	static RA3FDevSoundPlayDataBeforePlayInitTest* NewL(const TDesC& aTestName);
       
   753 
       
   754 private:
       
   755 	RA3FDevSoundPlayDataBeforePlayInitTest(const TDesC& aTestName);
       
   756 	void DoKickoffTestL();
       
   757 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   758 	};
       
   759 
       
   760 /*
       
   761  *========================================================================================================
       
   762  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0038
       
   763  */
       
   764 class RA3FDevSoundPlayInitTwiceTest : public RA3FDevSoundTestBase
       
   765 	{
       
   766 public:
       
   767 	static RA3FDevSoundPlayInitTwiceTest* NewL(const TDesC& aTestName);
       
   768 
       
   769 private:
       
   770 	RA3FDevSoundPlayInitTwiceTest(const TDesC& aTestName);
       
   771 	void DoKickoffTestL();
       
   772 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   773 	void BufferToBeFilled(CMMFBuffer* /*aBuffer*/);
       
   774 
       
   775 private:
       
   776 	TInt iFirstPlayInitErr;
       
   777 	TInt iErr;
       
   778 	};
       
   779 
       
   780 /*
       
   781  *========================================================================================================
       
   782  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0039
       
   783  */
       
   784 class RA3FDevSoundPlayARNTest : public RA3FDevSoundTestBase, public MA3FDevsoundPlayAudioClientObserver
       
   785 	{
       
   786 public:
       
   787 	static RA3FDevSoundPlayARNTest* NewL(const TDesC& aTestName);
       
   788 
       
   789 private:
       
   790 	RA3FDevSoundPlayARNTest(const TDesC& aTestName);
       
   791 	void DoKickoffTestL();
       
   792 	void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   793 	void PlayError(TInt aError);
       
   794 	void DoTimerCallback();
       
   795 	void ClientInitializeCompleteCallback(TInt aError);
       
   796 	void ClientBufferToBeFilledCallback(TInt aError);
       
   797 	void ClientPlayErrorCallback(TInt aError, TBool aLastBuffer);
       
   798 	void ClientPlayHandleOpenFileErrorInValidEventOrStateCallBack(TMmfDevSoundClientErrorCodes aError);
       
   799 
       
   800 private:
       
   801 	TFileName iFilename;
       
   802 	TFileName iOtherFilename;
       
   803 	TBool iRepeat;
       
   804 	};
       
   805 
       
   806 /*
       
   807 *========================================================================================================
       
   808 * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0040
       
   809 */
       
   810 class RA3FDevSoundImmediatePauseAfterCreation : public RA3FDevSoundTestBase
       
   811    {
       
   812 public:
       
   813    static RA3FDevSoundImmediatePauseAfterCreation* NewL(const TDesC& aTestName);
       
   814 
       
   815 private:
       
   816     RA3FDevSoundImmediatePauseAfterCreation(const TDesC& aTestName);
       
   817    void DoKickoffTestL();
       
   818    void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   819    void DoTimerCallback();
       
   820 private:
       
   821    TFileName iFilename;
       
   822    TFileName iOtherFilename;
       
   823    TBool iRepeat;
       
   824    };
       
   825 
       
   826 /*
       
   827  *========================================================================================================
       
   828  * MM-A3F-DEVSOUND-CHRTZ-PLAY-RAW-0041
       
   829  */
       
   830 class RA3FDevSoundPlayEmptyBuffersWhilePlayingTest : public RA3FDevSoundTestBase
       
   831     {
       
   832 public:
       
   833     static RA3FDevSoundPlayEmptyBuffersWhilePlayingTest* NewL(const TDesC& aTestName);
       
   834 
       
   835 private:
       
   836     RA3FDevSoundPlayEmptyBuffersWhilePlayingTest(const TDesC& aTestName);
       
   837     void DoKickoffTestL();
       
   838     void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   839 private:
       
   840     TInt iVolume;
       
   841     TInt iBtbfCount;
       
   842     TFileName iFilename;
       
   843     };
       
   844 
       
   845 /*
       
   846  *========================================================================================================
       
   847  * 3F-DEVSOUND-CHRTZ-PLAY-RAW-0042
       
   848  */
       
   849 class RA3FDevSoundPlayPreemptedByToneAfterSetVolumeTest : public RA3FDevSoundTestBase, public MA3FDevsoundToneClientObserver
       
   850     {
       
   851 public:
       
   852     static RA3FDevSoundPlayPreemptedByToneAfterSetVolumeTest* NewL(const TDesC& aTestName);
       
   853 private:
       
   854     RA3FDevSoundPlayPreemptedByToneAfterSetVolumeTest(const TDesC& aTestName);
       
   855     void PlayError(TInt aError);
       
   856     void ClientInitializeCompleteCallback(TInt aError);
       
   857     void ClientToneFinishedCallback(TInt aError);
       
   858     void Fsm(TMmfDevSoundEvent aDevSoundEvent, TInt aError);
       
   859     void DoKickoffTestL();
       
   860     void DoTimerCallback(); 
       
   861     
       
   862 private:
       
   863     TFileName   iFilename;
       
   864     TInt        iExVolume;
       
   865     TInt        iFrequencyTone1;
       
   866     TInt        iDuration;
       
   867     TBool       iSetVolume;
       
   868     TBool       iResume;
       
   869     };
       
   870 
       
   871 #endif // CHAR_A3F_DEVSOUND_PLAYTEST_H
       
   872