os/mm/mmlibs/mmfw/tsrc/mmfunittest/DevVideo/src/ciu/testdevvideociuplay.h
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
sl@0
     1
// Copyright (c) 2007-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
// Header file: DevVideoCiuPlay tests.
sl@0
    15
// 
sl@0
    16
//
sl@0
    17
sl@0
    18
/**
sl@0
    19
 @file testdevvideociuplay.h
sl@0
    20
*/
sl@0
    21
sl@0
    22
#ifndef TESTDEVVIDEOCIUPLAY_H
sl@0
    23
#define TESTDEVVIDEOCIUPLAY_H
sl@0
    24
sl@0
    25
#include <mmf/devvideo/devvideostandardcustominterfaces.h>
sl@0
    26
#include <mmf/devvideo/videoplayhwdevice.h>
sl@0
    27
#include <mmf/devvideo/devvideoconstants.h>
sl@0
    28
#include <mmf/devvideo/devvideoplayratecustominterface.h>
sl@0
    29
sl@0
    30
#ifdef SYMBIAN_BUILD_GCE
sl@0
    31
#include <mmf/devvideo/devvideosurfacehandlecustominterface.h>
sl@0
    32
#include <mmf/devvideo/devvideovideosurfacecustominterface.h>
sl@0
    33
#endif // SYMBIAN_BUILD_GCE
sl@0
    34
sl@0
    35
#include "tsu_mmf_devvideociu.h"
sl@0
    36
sl@0
    37
/**
sl@0
    38
 * DevVideoPlay test base class
sl@0
    39
 *
sl@0
    40
 * @class CTestDevVideoCiuPlayStep
sl@0
    41
*/
sl@0
    42
class CTestDevVideoCiuPlayStep : public CTestDevVideoCiuStep, public MMMFDevVideoPlayObserver
sl@0
    43
	{
sl@0
    44
public:
sl@0
    45
	CTestDevVideoCiuPlayStep(const TDesC& aTestName);
sl@0
    46
	~CTestDevVideoCiuPlayStep();
sl@0
    47
	virtual TVerdict DoTestStepL();
sl@0
    48
	virtual TVerdict DoTestL() = 0;
sl@0
    49
	
sl@0
    50
	virtual TVerdict DoTestStepPreambleL();
sl@0
    51
	virtual TVerdict DoTestStepPostambleL();
sl@0
    52
		
sl@0
    53
	// MMMFDevVideoPlayObserver
sl@0
    54
    virtual void MdvpoNewBuffers();
sl@0
    55
    virtual void MdvpoReturnPicture(TVideoPicture* aPicture);
sl@0
    56
    virtual void MdvpoSupplementalInformation(const TDesC8& aData, 
sl@0
    57
											  const TTimeIntervalMicroSeconds& aTimestamp, 
sl@0
    58
											  const TPictureId& aPictureId);
sl@0
    59
	virtual void MdvpoPictureLoss();
sl@0
    60
	virtual void MdvpoPictureLoss(const TArray<TPictureId>& aPictures);
sl@0
    61
	virtual void MdvpoSliceLoss(TUint aFirstMacroblock, TUint aNumMacroblocks, const TPictureId& aPicture);
sl@0
    62
	virtual void MdvpoReferencePictureSelection(const TDesC8& aSelectionData);
sl@0
    63
    virtual void MdvpoTimedSnapshotComplete(TInt aError, 
sl@0
    64
											TPictureData* aPictureData, 
sl@0
    65
											const TTimeIntervalMicroSeconds& aPresentationTimestamp, 
sl@0
    66
											const TPictureId& aPictureId);
sl@0
    67
    virtual void MdvpoNewPictures();
sl@0
    68
    virtual void MdvpoFatalError(TInt aError);
sl@0
    69
    virtual void MdvpoInitComplete(TInt aError);
sl@0
    70
    virtual void MdvpoStreamEnd();
sl@0
    71
sl@0
    72
protected:
sl@0
    73
	TInt iError;
sl@0
    74
	THwDeviceId iHwDeviceId;
sl@0
    75
	CMMFDevVideoPlay* iDevVideoPlay;
sl@0
    76
	};
sl@0
    77
sl@0
    78
//
sl@0
    79
//	Video Window Control Tests
sl@0
    80
//
sl@0
    81
sl@0
    82
class CTestDevVideoCiuPlayGetAndSetLogicalWindow : public CTestDevVideoCiuPlayStep
sl@0
    83
	{
sl@0
    84
public:
sl@0
    85
	static CTestDevVideoCiuPlayGetAndSetLogicalWindow* NewL(const TDesC& aTestName);
sl@0
    86
	virtual TVerdict DoTestL();
sl@0
    87
	virtual TVerdict DoTestStepPreambleL();
sl@0
    88
private:
sl@0
    89
	CTestDevVideoCiuPlayGetAndSetLogicalWindow(const TDesC& aTestName);
sl@0
    90
	~CTestDevVideoCiuPlayGetAndSetLogicalWindow() {};
sl@0
    91
	};
sl@0
    92
sl@0
    93
//
sl@0
    94
sl@0
    95
class CTestDevVideoCiuPlayGetAndSetContentOffset : public CTestDevVideoCiuPlayStep
sl@0
    96
	{
sl@0
    97
public:
sl@0
    98
	static CTestDevVideoCiuPlayGetAndSetContentOffset* NewL(const TDesC& aTestName);
sl@0
    99
	virtual TVerdict DoTestL();
sl@0
   100
	virtual TVerdict DoTestStepPreambleL();
sl@0
   101
private:
sl@0
   102
	CTestDevVideoCiuPlayGetAndSetContentOffset(const TDesC& aTestName);
sl@0
   103
	~CTestDevVideoCiuPlayGetAndSetContentOffset() {};
sl@0
   104
	};
sl@0
   105
sl@0
   106
//
sl@0
   107
sl@0
   108
class CTestDevVideoCiuPlayGetAndSetContentAlignment : public CTestDevVideoCiuPlayStep
sl@0
   109
	{
sl@0
   110
public:
sl@0
   111
	static CTestDevVideoCiuPlayGetAndSetContentAlignment* NewL(const TDesC& aTestName);
sl@0
   112
	virtual TVerdict DoTestL();
sl@0
   113
	virtual TVerdict DoTestStepPreambleL();
sl@0
   114
private:
sl@0
   115
	CTestDevVideoCiuPlayGetAndSetContentAlignment(const TDesC& aTestName);
sl@0
   116
	~CTestDevVideoCiuPlayGetAndSetContentAlignment() {};
sl@0
   117
	};
sl@0
   118
sl@0
   119
//
sl@0
   120
//	Video Resource Management Tests
sl@0
   121
//
sl@0
   122
sl@0
   123
class CTestDevVideoCiuPlayGetAndSetResourceObserver : public CTestDevVideoCiuPlayStep,
sl@0
   124
													  public MMmfVideoResourceObserver
sl@0
   125
	{
sl@0
   126
public:
sl@0
   127
	static CTestDevVideoCiuPlayGetAndSetResourceObserver* NewL(const TDesC& aTestName);
sl@0
   128
	virtual TVerdict DoTestL();
sl@0
   129
	virtual TVerdict DoTestStepPreambleL();
sl@0
   130
	
sl@0
   131
	//from MMmfVideoResourceObserver
sl@0
   132
	void MmvroResourcesLost(TUid aMediaDevice);
sl@0
   133
	void MmvroResourcesRestored(TUid aMediaDevice);
sl@0
   134
	
sl@0
   135
private:
sl@0
   136
	CTestDevVideoCiuPlayGetAndSetResourceObserver(const TDesC& aTestName);
sl@0
   137
	~CTestDevVideoCiuPlayGetAndSetResourceObserver() {};
sl@0
   138
	};
sl@0
   139
sl@0
   140
//
sl@0
   141
sl@0
   142
class CTestDevVideoCiuPlayResourceLost : public CTestDevVideoCiuPlayStep,
sl@0
   143
										 public MMmfVideoResourceObserver
sl@0
   144
	{
sl@0
   145
public:
sl@0
   146
	static CTestDevVideoCiuPlayResourceLost* NewL(const TDesC& aTestName);
sl@0
   147
	virtual TVerdict DoTestL();
sl@0
   148
	virtual TVerdict DoTestStepPreambleL();
sl@0
   149
	
sl@0
   150
	//from MMmfVideoResourceObserver
sl@0
   151
	void MmvroResourcesLost(TUid aMediaDevice);
sl@0
   152
	void MmvroResourcesRestored(TUid aMediaDevice);
sl@0
   153
	
sl@0
   154
private:
sl@0
   155
	CTestDevVideoCiuPlayResourceLost(const TDesC& aTestName);
sl@0
   156
	~CTestDevVideoCiuPlayResourceLost() {};
sl@0
   157
private:
sl@0
   158
	TBool iCallbackReceived;
sl@0
   159
	};
sl@0
   160
sl@0
   161
//
sl@0
   162
sl@0
   163
class CTestDevVideoCiuPlayResourceRestored : public CTestDevVideoCiuPlayStep,
sl@0
   164
										     public MMmfVideoResourceObserver
sl@0
   165
	{
sl@0
   166
public:
sl@0
   167
	static CTestDevVideoCiuPlayResourceRestored* NewL(const TDesC& aTestName);
sl@0
   168
	virtual TVerdict DoTestL();
sl@0
   169
	virtual TVerdict DoTestStepPreambleL();
sl@0
   170
	
sl@0
   171
	//from MMmfVideoResourceObserver
sl@0
   172
	void MmvroResourcesLost(TUid aMediaDevice);
sl@0
   173
	void MmvroResourcesRestored(TUid aMediaDevice);
sl@0
   174
	
sl@0
   175
private:
sl@0
   176
	CTestDevVideoCiuPlayResourceRestored(const TDesC& aTestName);
sl@0
   177
	~CTestDevVideoCiuPlayResourceRestored() {};
sl@0
   178
private:
sl@0
   179
	TBool iCallbackReceived;
sl@0
   180
	};
sl@0
   181
sl@0
   182
//
sl@0
   183
sl@0
   184
class CTestDevVideoCiuPlayGetAndSetResourcePriority : public CTestDevVideoCiuPlayStep
sl@0
   185
	{
sl@0
   186
public:
sl@0
   187
	static CTestDevVideoCiuPlayGetAndSetResourcePriority* NewL(const TDesC& aTestName);
sl@0
   188
	virtual TVerdict DoTestL();
sl@0
   189
	virtual TVerdict DoTestStepPreambleL();
sl@0
   190
private:
sl@0
   191
	CTestDevVideoCiuPlayGetAndSetResourcePriority(const TDesC& aTestName);
sl@0
   192
	~CTestDevVideoCiuPlayGetAndSetResourcePriority() {};
sl@0
   193
	};
sl@0
   194
sl@0
   195
//
sl@0
   196
//	Video Properties Management Tests
sl@0
   197
//
sl@0
   198
sl@0
   199
class CTestDevVideoCiuPlaySetAndGetPropertiesObserver : public CTestDevVideoCiuPlayStep,
sl@0
   200
													  public MMmfVideoPropertiesObserver
sl@0
   201
	{
sl@0
   202
public:
sl@0
   203
	static CTestDevVideoCiuPlaySetAndGetPropertiesObserver* NewL(const TDesC& aTestName);
sl@0
   204
	virtual TVerdict DoTestL();
sl@0
   205
	virtual TVerdict DoTestStepPreambleL();
sl@0
   206
	
sl@0
   207
	//from MMmfVideoPropertiesObserver
sl@0
   208
	void MmvpoUpdateVideoProperties(const TYuvFormat& aYuvFormat, const TSize& aPictureSize);
sl@0
   209
	
sl@0
   210
private:
sl@0
   211
	CTestDevVideoCiuPlaySetAndGetPropertiesObserver(const TDesC& aTestName);
sl@0
   212
	~CTestDevVideoCiuPlaySetAndGetPropertiesObserver() {};
sl@0
   213
	};
sl@0
   214
sl@0
   215
//
sl@0
   216
sl@0
   217
class CTestDevVideoCiuPlayUpdateProperties : public CTestDevVideoCiuPlayStep,
sl@0
   218
										     public MMmfVideoPropertiesObserver
sl@0
   219
	{
sl@0
   220
public:
sl@0
   221
	static CTestDevVideoCiuPlayUpdateProperties* NewL(const TDesC& aTestName);
sl@0
   222
	virtual TVerdict DoTestL();
sl@0
   223
	virtual TVerdict DoTestStepPreambleL();
sl@0
   224
	
sl@0
   225
	//from MMmfVideoPropertiesObserver
sl@0
   226
	void MmvpoUpdateVideoProperties(const TYuvFormat& aYuvFormat, const TSize& aPictureSize);
sl@0
   227
	
sl@0
   228
private:
sl@0
   229
	CTestDevVideoCiuPlayUpdateProperties(const TDesC& aTestName);
sl@0
   230
	~CTestDevVideoCiuPlayUpdateProperties() {};
sl@0
   231
private:
sl@0
   232
	TBool iCallbackReceived;
sl@0
   233
	};
sl@0
   234
	
sl@0
   235
//
sl@0
   236
//	Video Media Protected Tests
sl@0
   237
//
sl@0
   238
sl@0
   239
class CTestDevVideoCiuPlayCreateVideoMediaProtected : public CTestDevVideoCiuPlayStep
sl@0
   240
	{
sl@0
   241
public:
sl@0
   242
	static CTestDevVideoCiuPlayCreateVideoMediaProtected* NewL(const TDesC& aTestName);
sl@0
   243
	virtual TVerdict DoTestL();
sl@0
   244
	virtual TVerdict DoTestStepPreambleL();
sl@0
   245
private:
sl@0
   246
	CTestDevVideoCiuPlayCreateVideoMediaProtected(const TDesC& aTestName);
sl@0
   247
	~CTestDevVideoCiuPlayCreateVideoMediaProtected() {};
sl@0
   248
	};
sl@0
   249
	
sl@0
   250
//
sl@0
   251
sl@0
   252
class CTestDevVideoCiuPlaySetVideoMediaProtected : public CTestDevVideoCiuPlayStep
sl@0
   253
	{
sl@0
   254
public:
sl@0
   255
	static CTestDevVideoCiuPlaySetVideoMediaProtected* NewL(const TDesC& aTestName);
sl@0
   256
	virtual TVerdict DoTestL();
sl@0
   257
	TVerdict DoTestStepPreambleL();
sl@0
   258
private:
sl@0
   259
	CTestDevVideoCiuPlaySetVideoMediaProtected(const TDesC& aTestName);
sl@0
   260
	~CTestDevVideoCiuPlaySetVideoMediaProtected() {};
sl@0
   261
	};
sl@0
   262
sl@0
   263
//
sl@0
   264
//	Colour Space Header Info Tests
sl@0
   265
//
sl@0
   266
sl@0
   267
class CTestDevVideoCiuPlayCreateColourSpace : public CTestDevVideoCiuPlayStep
sl@0
   268
	{
sl@0
   269
public:
sl@0
   270
	static CTestDevVideoCiuPlayCreateColourSpace* NewL(const TDesC& aTestName);
sl@0
   271
	virtual TVerdict DoTestL();
sl@0
   272
	virtual TVerdict DoTestStepPreambleL();
sl@0
   273
private:
sl@0
   274
	CTestDevVideoCiuPlayCreateColourSpace(const TDesC& aTestName);
sl@0
   275
	~CTestDevVideoCiuPlayCreateColourSpace() {};
sl@0
   276
	};
sl@0
   277
	
sl@0
   278
//
sl@0
   279
sl@0
   280
class CTestDevVideoCiuPlayGetColourSpace : public CTestDevVideoCiuPlayStep
sl@0
   281
	{
sl@0
   282
public:
sl@0
   283
	static CTestDevVideoCiuPlayGetColourSpace* NewL(const TDesC& aTestName);
sl@0
   284
	virtual TVerdict DoTestL();
sl@0
   285
	TVerdict DoTestStepPreambleL();
sl@0
   286
private:
sl@0
   287
	CTestDevVideoCiuPlayGetColourSpace(const TDesC& aTestName);
sl@0
   288
	~CTestDevVideoCiuPlayGetColourSpace() {};
sl@0
   289
	};
sl@0
   290
sl@0
   291
sl@0
   292
//
sl@0
   293
// Resource Control tests
sl@0
   294
//
sl@0
   295
sl@0
   296
class CTestDevVideoCiuPlayCreatePolicyExtension : public CTestDevVideoCiuPlayStep
sl@0
   297
	{
sl@0
   298
public:
sl@0
   299
	static CTestDevVideoCiuPlayCreatePolicyExtension* NewL(const TDesC& aTestName);
sl@0
   300
	virtual TVerdict DoTestL();
sl@0
   301
	virtual TVerdict DoTestStepPreambleL();
sl@0
   302
private:
sl@0
   303
	CTestDevVideoCiuPlayCreatePolicyExtension(const TDesC& aTestName);
sl@0
   304
	~CTestDevVideoCiuPlayCreatePolicyExtension() {};
sl@0
   305
	};
sl@0
   306
	
sl@0
   307
//
sl@0
   308
sl@0
   309
class CTestDevVideoCiuPlaySetClientPolicyExtension : public CTestDevVideoCiuPlayStep,
sl@0
   310
														public MMmfVideoHwDevClientNotifier
sl@0
   311
	{
sl@0
   312
public:
sl@0
   313
	static CTestDevVideoCiuPlaySetClientPolicyExtension* NewL(const TDesC& aTestName);
sl@0
   314
	virtual TVerdict DoTestL();
sl@0
   315
	TVerdict DoTestStepPreambleL();
sl@0
   316
sl@0
   317
	// from MMmfVideoHwDevClientNotifier
sl@0
   318
	virtual void MmvhcnVideoAccessRevoked();
sl@0
   319
	virtual void MmvhcnReleaseVideoResource();
sl@0
   320
private:
sl@0
   321
	CTestDevVideoCiuPlaySetClientPolicyExtension(const TDesC& aTestName);
sl@0
   322
	~CTestDevVideoCiuPlaySetClientPolicyExtension() {};
sl@0
   323
	};
sl@0
   324
	
sl@0
   325
//
sl@0
   326
sl@0
   327
class CTestDevVideoCiuPlaySetPriorityPolicyExtension : public CTestDevVideoCiuPlayStep
sl@0
   328
	{
sl@0
   329
public:
sl@0
   330
	static CTestDevVideoCiuPlaySetPriorityPolicyExtension* NewL(const TDesC& aTestName);
sl@0
   331
	virtual TVerdict DoTestL();
sl@0
   332
	virtual TVerdict DoTestStepPreambleL();
sl@0
   333
private:
sl@0
   334
	CTestDevVideoCiuPlaySetPriorityPolicyExtension(const TDesC& aTestName);
sl@0
   335
	~CTestDevVideoCiuPlaySetPriorityPolicyExtension() {};
sl@0
   336
	};
sl@0
   337
sl@0
   338
//
sl@0
   339
sl@0
   340
class CTestDevVideoCiuPlayClientNotifierRevoked : public CTestDevVideoCiuPlayStep,
sl@0
   341
													public MMmfVideoHwDevClientNotifier
sl@0
   342
	{
sl@0
   343
public:
sl@0
   344
	static CTestDevVideoCiuPlayClientNotifierRevoked* NewL(const TDesC& aTestName);
sl@0
   345
	virtual TVerdict DoTestL();
sl@0
   346
	TVerdict DoTestStepPreambleL();
sl@0
   347
sl@0
   348
	// from MMmfVideoHwDevClientNotifier
sl@0
   349
	virtual void MmvhcnVideoAccessRevoked();
sl@0
   350
	virtual void MmvhcnReleaseVideoResource();
sl@0
   351
sl@0
   352
private:
sl@0
   353
	CTestDevVideoCiuPlayClientNotifierRevoked(const TDesC& aTestName);
sl@0
   354
	~CTestDevVideoCiuPlayClientNotifierRevoked() {};
sl@0
   355
	
sl@0
   356
private:
sl@0
   357
	TBool iCallback;
sl@0
   358
	};
sl@0
   359
sl@0
   360
//
sl@0
   361
sl@0
   362
class CTestDevVideoCiuPlayClientNotifierResource : public CTestDevVideoCiuPlayStep,
sl@0
   363
													public MMmfVideoHwDevClientNotifier
sl@0
   364
	{
sl@0
   365
public:
sl@0
   366
	static CTestDevVideoCiuPlayClientNotifierResource* NewL(const TDesC& aTestName);
sl@0
   367
	virtual TVerdict DoTestL();
sl@0
   368
	TVerdict DoTestStepPreambleL();
sl@0
   369
sl@0
   370
	// from MMmfVideoHwDevClientNotifier
sl@0
   371
	virtual void MmvhcnVideoAccessRevoked();
sl@0
   372
	virtual void MmvhcnReleaseVideoResource();
sl@0
   373
	
sl@0
   374
private:
sl@0
   375
	CTestDevVideoCiuPlayClientNotifierResource(const TDesC& aTestName);
sl@0
   376
	~CTestDevVideoCiuPlayClientNotifierResource() {};
sl@0
   377
	
sl@0
   378
private:
sl@0
   379
	TBool iCallback;
sl@0
   380
	};
sl@0
   381
	
sl@0
   382
//
sl@0
   383
//							NEGATIVE TESTS
sl@0
   384
//
sl@0
   385
class CTestDevVideoCiuPlayCreateVideoMediaProtectedDecoder : public CTestDevVideoCiuPlayStep
sl@0
   386
	{
sl@0
   387
public:
sl@0
   388
	static CTestDevVideoCiuPlayCreateVideoMediaProtectedDecoder* NewL(const TDesC& aTestName);
sl@0
   389
	virtual TVerdict DoTestL();
sl@0
   390
	TVerdict DoTestStepPreambleL();
sl@0
   391
private:
sl@0
   392
	CTestDevVideoCiuPlayCreateVideoMediaProtectedDecoder(const TDesC& aTestName);
sl@0
   393
	~CTestDevVideoCiuPlayCreateVideoMediaProtectedDecoder() {};
sl@0
   394
	};
sl@0
   395
sl@0
   396
//
sl@0
   397
//	Video Surface Support Management Tests
sl@0
   398
//
sl@0
   399
sl@0
   400
class CTestDevVideoCiuPlayGetAndSetUseSurface : public CTestDevVideoCiuPlayStep
sl@0
   401
	{
sl@0
   402
public:
sl@0
   403
	static CTestDevVideoCiuPlayGetAndSetUseSurface* NewL(const TDesC& aTestName);
sl@0
   404
	virtual TVerdict DoTestL();
sl@0
   405
	virtual TVerdict DoTestStepPreambleL();
sl@0
   406
private:
sl@0
   407
	CTestDevVideoCiuPlayGetAndSetUseSurface(const TDesC& aTestName);
sl@0
   408
	~CTestDevVideoCiuPlayGetAndSetUseSurface() {};
sl@0
   409
	};
sl@0
   410
sl@0
   411
//
sl@0
   412
sl@0
   413
class CTestDevVideoCiuPlayGetAndSetSurfaceParameters : public CTestDevVideoCiuPlayStep
sl@0
   414
	{
sl@0
   415
public:
sl@0
   416
	static CTestDevVideoCiuPlayGetAndSetSurfaceParameters* NewL(const TDesC& aTestName);
sl@0
   417
	virtual TVerdict DoTestL();
sl@0
   418
	virtual TVerdict DoTestStepPreambleL();
sl@0
   419
private:
sl@0
   420
	CTestDevVideoCiuPlayGetAndSetSurfaceParameters(const TDesC& aTestName);
sl@0
   421
	~CTestDevVideoCiuPlayGetAndSetSurfaceParameters() {};
sl@0
   422
	};
sl@0
   423
sl@0
   424
//
sl@0
   425
sl@0
   426
class CTestDevVideoCiuPlayGetAndSetSurfaceRemoved : public CTestDevVideoCiuPlayStep
sl@0
   427
	{
sl@0
   428
public:
sl@0
   429
	static CTestDevVideoCiuPlayGetAndSetSurfaceRemoved* NewL(const TDesC& aTestName);
sl@0
   430
	virtual TVerdict DoTestL();
sl@0
   431
	virtual TVerdict DoTestStepPreambleL();
sl@0
   432
private:
sl@0
   433
	CTestDevVideoCiuPlayGetAndSetSurfaceRemoved(const TDesC& aTestName);
sl@0
   434
	~CTestDevVideoCiuPlayGetAndSetSurfaceRemoved() {};
sl@0
   435
	};
sl@0
   436
sl@0
   437
//
sl@0
   438
sl@0
   439
#ifdef SYMBIAN_BUILD_GCE
sl@0
   440
	
sl@0
   441
class CTestDevVideoCiuPlaySetAndGetSurfaceSupportObserver : public CTestDevVideoCiuPlayStep,
sl@0
   442
													  public MMMFVideoSurfaceObserver
sl@0
   443
	{
sl@0
   444
public:
sl@0
   445
	static CTestDevVideoCiuPlaySetAndGetSurfaceSupportObserver* NewL(const TDesC& aTestName);
sl@0
   446
	virtual TVerdict DoTestL();
sl@0
   447
	virtual TVerdict DoTestStepPreambleL();
sl@0
   448
	
sl@0
   449
	//from MMMFVideoSurfaceObserver
sl@0
   450
	void MmvsoSurfaceCreated();
sl@0
   451
	void MmvsoSurfaceParametersChanged();
sl@0
   452
	void MmvsoRemoveSurface();
sl@0
   453
	
sl@0
   454
private:
sl@0
   455
	CTestDevVideoCiuPlaySetAndGetSurfaceSupportObserver(const TDesC& aTestName);
sl@0
   456
	~CTestDevVideoCiuPlaySetAndGetSurfaceSupportObserver() {};
sl@0
   457
	};
sl@0
   458
sl@0
   459
//
sl@0
   460
sl@0
   461
class CTestDevVideoCiuPlaySurfaceCreated : public CTestDevVideoCiuPlayStep,
sl@0
   462
										     public MMMFVideoSurfaceObserver
sl@0
   463
	{
sl@0
   464
public:
sl@0
   465
	static CTestDevVideoCiuPlaySurfaceCreated* NewL(const TDesC& aTestName);
sl@0
   466
	virtual TVerdict DoTestL();
sl@0
   467
	virtual TVerdict DoTestStepPreambleL();
sl@0
   468
	
sl@0
   469
	//from MMMFVideoSurfaceObserver
sl@0
   470
	void MmvsoSurfaceCreated();
sl@0
   471
	void MmvsoSurfaceParametersChanged();
sl@0
   472
	void MmvsoRemoveSurface();
sl@0
   473
	
sl@0
   474
private:
sl@0
   475
	CTestDevVideoCiuPlaySurfaceCreated(const TDesC& aTestName);
sl@0
   476
	~CTestDevVideoCiuPlaySurfaceCreated() {};
sl@0
   477
private:
sl@0
   478
	TBool iCallbackReceived;
sl@0
   479
	};
sl@0
   480
sl@0
   481
sl@0
   482
//
sl@0
   483
sl@0
   484
class CTestDevVideoCiuPlaySurfaceParametersChanged : public CTestDevVideoCiuPlayStep,
sl@0
   485
										     public MMMFVideoSurfaceObserver
sl@0
   486
	{
sl@0
   487
public:
sl@0
   488
	static CTestDevVideoCiuPlaySurfaceParametersChanged* NewL(const TDesC& aTestName);
sl@0
   489
	virtual TVerdict DoTestL();
sl@0
   490
	virtual TVerdict DoTestStepPreambleL();
sl@0
   491
	
sl@0
   492
	//from MMMFVideoSurfaceObserver
sl@0
   493
	void MmvsoSurfaceCreated();
sl@0
   494
	void MmvsoSurfaceParametersChanged();
sl@0
   495
	void MmvsoRemoveSurface();
sl@0
   496
	
sl@0
   497
private:
sl@0
   498
	CTestDevVideoCiuPlaySurfaceParametersChanged(const TDesC& aTestName);
sl@0
   499
	~CTestDevVideoCiuPlaySurfaceParametersChanged() {};
sl@0
   500
private:
sl@0
   501
	TBool iCallbackReceived;
sl@0
   502
	};
sl@0
   503
sl@0
   504
//
sl@0
   505
sl@0
   506
class CTestDevVideoCiuRemoveSurface : public CTestDevVideoCiuPlayStep,
sl@0
   507
									  public MMMFVideoSurfaceObserver
sl@0
   508
	{
sl@0
   509
public:
sl@0
   510
	static CTestDevVideoCiuRemoveSurface* NewL(const TDesC& aTestName);
sl@0
   511
	virtual TVerdict DoTestL();
sl@0
   512
	virtual TVerdict DoTestStepPreambleL();
sl@0
   513
	
sl@0
   514
	//from MMMFVideoSurfaceObserver
sl@0
   515
	void MmvsoSurfaceCreated();
sl@0
   516
	void MmvsoSurfaceParametersChanged();
sl@0
   517
	void MmvsoRemoveSurface();
sl@0
   518
	
sl@0
   519
private:
sl@0
   520
	CTestDevVideoCiuRemoveSurface(const TDesC& aTestName);
sl@0
   521
	~CTestDevVideoCiuRemoveSurface() {};
sl@0
   522
private:
sl@0
   523
	TBool iCallbackReceived;
sl@0
   524
	};
sl@0
   525
	
sl@0
   526
//
sl@0
   527
//	Video Client Buffer Support Tests
sl@0
   528
//
sl@0
   529
sl@0
   530
class CTestDevVideoCiuPlayUseClientBuffers : public CTestDevVideoCiuPlayStep
sl@0
   531
	{
sl@0
   532
public:
sl@0
   533
	static CTestDevVideoCiuPlayUseClientBuffers* NewL(const TDesC& aTestName);
sl@0
   534
	TVerdict DoTestL();
sl@0
   535
	TVerdict DoTestStepPreambleL();
sl@0
   536
private:
sl@0
   537
	CTestDevVideoCiuPlayUseClientBuffers(const TDesC& aTestName);
sl@0
   538
	~CTestDevVideoCiuPlayUseClientBuffers() {};
sl@0
   539
	};
sl@0
   540
sl@0
   541
//
sl@0
   542
sl@0
   543
class CTestDevVideoCiuPlaySupplyBuffer : public CTestDevVideoCiuPlayStep
sl@0
   544
	{
sl@0
   545
public:
sl@0
   546
	static CTestDevVideoCiuPlaySupplyBuffer* NewL(const TDesC& aTestName);
sl@0
   547
	TVerdict DoTestL();
sl@0
   548
	TVerdict DoTestStepPreambleL();
sl@0
   549
private:
sl@0
   550
	CTestDevVideoCiuPlaySupplyBuffer(const TDesC& aTestName);
sl@0
   551
	~CTestDevVideoCiuPlaySupplyBuffer() {};
sl@0
   552
	};
sl@0
   553
sl@0
   554
//
sl@0
   555
sl@0
   556
class CTestDevVideoCiuPlayReleaseBuffers : public CTestDevVideoCiuPlayStep
sl@0
   557
	{
sl@0
   558
public:
sl@0
   559
	static CTestDevVideoCiuPlayReleaseBuffers* NewL(const TDesC& aTestName);
sl@0
   560
	TVerdict DoTestL();
sl@0
   561
	TVerdict DoTestStepPreambleL();
sl@0
   562
private:
sl@0
   563
	CTestDevVideoCiuPlayReleaseBuffers(const TDesC& aTestName);
sl@0
   564
	~CTestDevVideoCiuPlayReleaseBuffers() {};
sl@0
   565
	};
sl@0
   566
sl@0
   567
//
sl@0
   568
//	Video SurfaceId Custom Interface Tests
sl@0
   569
//
sl@0
   570
sl@0
   571
class CTestDevVideoCiuPlaySurfaceHandleControl : public CTestDevVideoCiuPlayStep
sl@0
   572
	{
sl@0
   573
public:
sl@0
   574
	static CTestDevVideoCiuPlaySurfaceHandleControl* NewL(const TDesC& aTestName);
sl@0
   575
	virtual TVerdict DoTestL();
sl@0
   576
	virtual TVerdict DoTestStepPreambleL();
sl@0
   577
sl@0
   578
private:
sl@0
   579
	CTestDevVideoCiuPlaySurfaceHandleControl(const TDesC& aTestName);
sl@0
   580
	~CTestDevVideoCiuPlaySurfaceHandleControl() {};
sl@0
   581
	};
sl@0
   582
sl@0
   583
class CTestDevVideoCiuPlaySurfaceRedrawBuffer : public CTestDevVideoCiuPlayStep
sl@0
   584
	{
sl@0
   585
public:
sl@0
   586
	static CTestDevVideoCiuPlaySurfaceRedrawBuffer* NewL(const TDesC& aTestName);
sl@0
   587
	virtual TVerdict DoTestL();
sl@0
   588
	virtual TVerdict DoTestStepPreambleL();
sl@0
   589
sl@0
   590
private:
sl@0
   591
	CTestDevVideoCiuPlaySurfaceRedrawBuffer(const TDesC& aTestName);
sl@0
   592
	~CTestDevVideoCiuPlaySurfaceRedrawBuffer() {};
sl@0
   593
	};
sl@0
   594
sl@0
   595
#endif // SYMBIAN_BUILD_GCE
sl@0
   596
sl@0
   597
//
sl@0
   598
//	Video Play Rate Tests
sl@0
   599
//
sl@0
   600
sl@0
   601
class CTestDevVideoCiuPlayGetAndSetPlayRateCapabilities : public CTestDevVideoCiuPlayStep
sl@0
   602
	{
sl@0
   603
public:
sl@0
   604
	static CTestDevVideoCiuPlayGetAndSetPlayRateCapabilities* NewL(const TDesC& aTestName);
sl@0
   605
	virtual TVerdict DoTestL();
sl@0
   606
	virtual TVerdict DoTestStepPreambleL();
sl@0
   607
private:
sl@0
   608
	CTestDevVideoCiuPlayGetAndSetPlayRateCapabilities(const TDesC& aTestName);
sl@0
   609
	~CTestDevVideoCiuPlayGetAndSetPlayRateCapabilities() {};
sl@0
   610
	};
sl@0
   611
sl@0
   612
//
sl@0
   613
sl@0
   614
class CTestDevVideoCiuPlaySetAndGetPlayRate : public CTestDevVideoCiuPlayStep
sl@0
   615
	{
sl@0
   616
public:
sl@0
   617
	static CTestDevVideoCiuPlaySetAndGetPlayRate* NewL(const TDesC& aTestName);
sl@0
   618
	virtual TVerdict DoTestL();
sl@0
   619
	virtual TVerdict DoTestStepPreambleL();
sl@0
   620
private:
sl@0
   621
	CTestDevVideoCiuPlaySetAndGetPlayRate(const TDesC& aTestName);
sl@0
   622
	~CTestDevVideoCiuPlaySetAndGetPlayRate() {};
sl@0
   623
	};
sl@0
   624
sl@0
   625
//
sl@0
   626
sl@0
   627
class CTestDevVideoCiuPlayGetAndSetStepFrame : public CTestDevVideoCiuPlayStep
sl@0
   628
	{
sl@0
   629
public:
sl@0
   630
	static CTestDevVideoCiuPlayGetAndSetStepFrame* NewL(const TDesC& aTestName);
sl@0
   631
	virtual TVerdict DoTestL();
sl@0
   632
	virtual TVerdict DoTestStepPreambleL();
sl@0
   633
private:
sl@0
   634
	CTestDevVideoCiuPlayGetAndSetStepFrame(const TDesC& aTestName);
sl@0
   635
	~CTestDevVideoCiuPlayGetAndSetStepFrame() {};
sl@0
   636
	};
sl@0
   637
sl@0
   638
//
sl@0
   639
sl@0
   640
class CTestDevVideoCiuPlaySetAndGetPlayRateObserver : public CTestDevVideoCiuPlayStep,
sl@0
   641
													  public MMmfVideoPlayRateObserver
sl@0
   642
	{
sl@0
   643
public:
sl@0
   644
	static CTestDevVideoCiuPlaySetAndGetPlayRateObserver* NewL(const TDesC& aTestName);
sl@0
   645
	virtual TVerdict DoTestL();
sl@0
   646
	virtual TVerdict DoTestStepPreambleL();
sl@0
   647
	
sl@0
   648
	//from MMmfVideoPlayRateObserver
sl@0
   649
	void MmvproStepFrameComplete(TTimeIntervalMicroSeconds aTimestamp);
sl@0
   650
	void MmvproKeyFrameModeRequest();
sl@0
   651
	
sl@0
   652
private:
sl@0
   653
	CTestDevVideoCiuPlaySetAndGetPlayRateObserver(const TDesC& aTestName);
sl@0
   654
	~CTestDevVideoCiuPlaySetAndGetPlayRateObserver() {};
sl@0
   655
	};
sl@0
   656
sl@0
   657
//
sl@0
   658
sl@0
   659
class CTestDevVideoCiuPlayStepFrameComplete : public CTestDevVideoCiuPlayStep, 
sl@0
   660
											public MMmfVideoPlayRateObserver
sl@0
   661
	{
sl@0
   662
public:
sl@0
   663
	static CTestDevVideoCiuPlayStepFrameComplete* NewL(const TDesC& aTestName);
sl@0
   664
	virtual TVerdict DoTestL();
sl@0
   665
	virtual TVerdict DoTestStepPreambleL();
sl@0
   666
		
sl@0
   667
	//from MMmfVideoPlayRateObserver
sl@0
   668
	void MmvproStepFrameComplete(TTimeIntervalMicroSeconds aTimestamp);
sl@0
   669
	void MmvproKeyFrameModeRequest();
sl@0
   670
		
sl@0
   671
private:
sl@0
   672
	CTestDevVideoCiuPlayStepFrameComplete(const TDesC& aTestName);
sl@0
   673
	~CTestDevVideoCiuPlayStepFrameComplete() {};
sl@0
   674
private:
sl@0
   675
	TBool iCallbackReceived;
sl@0
   676
	};
sl@0
   677
sl@0
   678
//
sl@0
   679
sl@0
   680
class CTestDevVideoCiuPlayKeyFrameModeRequest : public CTestDevVideoCiuPlayStep,
sl@0
   681
												public MMmfVideoPlayRateObserver
sl@0
   682
	{
sl@0
   683
public:
sl@0
   684
	static CTestDevVideoCiuPlayKeyFrameModeRequest* NewL(const TDesC& aTestName);
sl@0
   685
	virtual TVerdict DoTestL();
sl@0
   686
	virtual TVerdict DoTestStepPreambleL();
sl@0
   687
			
sl@0
   688
	//from MMmfVideoPlayRateObserver
sl@0
   689
	void MmvproStepFrameComplete(TTimeIntervalMicroSeconds aTimestamp);
sl@0
   690
	void MmvproKeyFrameModeRequest();
sl@0
   691
		
sl@0
   692
private:
sl@0
   693
	CTestDevVideoCiuPlayKeyFrameModeRequest(const TDesC& aTestName);
sl@0
   694
	~CTestDevVideoCiuPlayKeyFrameModeRequest() {};
sl@0
   695
private:
sl@0
   696
	TBool iCallbackReceived;
sl@0
   697
	};
sl@0
   698
sl@0
   699
// Test MMmfVideoHwDeviceTunnel custom interface
sl@0
   700
class CTestDevVideoCiuHwDeviceTunnel : public CTestDevVideoCiuPlayStep
sl@0
   701
	{
sl@0
   702
public:
sl@0
   703
	static CTestDevVideoCiuHwDeviceTunnel* NewL(const TDesC& aTestName);
sl@0
   704
	virtual TVerdict DoTestL();
sl@0
   705
	virtual TVerdict DoTestStepPreambleL();
sl@0
   706
sl@0
   707
private:
sl@0
   708
	CTestDevVideoCiuHwDeviceTunnel(const TDesC& aTestName);
sl@0
   709
	~CTestDevVideoCiuHwDeviceTunnel() {};
sl@0
   710
	};
sl@0
   711
sl@0
   712
#endif //TESTDEVVIDEOCIUPLAY_H