--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mmlibs/mmfw/tsrc/mmfintegrationtest/vclnt/inc/TestPlayer.h Fri Jun 11 15:13:33 2010 +0300
@@ -0,0 +1,411 @@
+
+// Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+// Header file: Basic tests.
+//
+//
+
+/**
+ @file TESTPLAYER.h
+*/
+
+#ifndef TESTPLAYER_H__
+#define TESTPLAYER_H__
+
+#include "TSI_MMFVCLNT.h"
+
+/**
+ * Load and initialise a video file.
+ *
+ * @class CTestVclntVideoFile
+ *
+ * Req. under test REQ172.2.4 REQ172.2.7 REQ172.2.10
+ */
+class CTestVclntVideoFile : public CTestMmfVclntStep , public MVideoPlayerUtilityObserver
+ {
+public:
+ CTestVclntVideoFile(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName,const TBool aPlay);
+ static CTestVclntVideoFile* NewL(const TDesC& aTestName,const TDesC& aSectName,const TDesC& aKeyName,const TBool aPlay);
+ static CTestVclntVideoFile* NewLC(const TDesC& aTestName,const TDesC& aSectName,const TDesC& aKeyName,const TBool aPlay);
+ virtual TVerdict DoTestStepL();
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aVideo);
+ // MVideoPlayerUtilityObserver
+ virtual void MvpuoOpenComplete(TInt aError);
+ virtual void MvpuoPrepareComplete(TInt aError);
+ virtual void MvpuoFrameReady(CFbsBitmap& aFrame,TInt aError);
+ virtual void MvpuoPlayComplete(TInt aError);
+ virtual void MvpuoEvent(const TMMFEvent& aEvent);
+protected:
+ TBuf<KNameBufSize> iSectName; // Section name for retrieving filename
+ TBuf<KNameBufSize> iKeyName; // Key name for retrieving filename
+ TInt iError;
+ const TBool iPlay; // Does this test require playing the video
+ TTimeIntervalMicroSeconds iDuration; // Stores duration of video
+ };
+
+
+/**
+ * Load and initialise an video descriptor.
+ *
+ * @class CTestVclntVideoDes
+ *
+ * Req. under test REQ172.2.4 REQ172.2.8 REQ172.2.10
+ */
+class CTestVclntVideoDes : public CTestMmfVclntStep , public MVideoPlayerUtilityObserver
+ {
+public:
+ CTestVclntVideoDes(const TDesC& aTestName,const TDesC& aSectName,const TDesC& aKeyName,const TBool aPlay) ;
+ static CTestVclntVideoDes* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName,const TBool aPlay);
+ static CTestVclntVideoDes* NewLC(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName,const TBool aPlay);
+ virtual TVerdict DoTestStepL();
+ virtual TVerdict DoTestStepPreambleL();
+ virtual TVerdict DoTestStepPostambleL();
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+ // MVideoPlayerUtilityObserver
+ virtual void MvpuoOpenComplete(TInt aError);
+ virtual void MvpuoPrepareComplete(TInt aError);
+ virtual void MvpuoFrameReady(CFbsBitmap& aFrame, TInt aError);
+ virtual void MvpuoPlayComplete(TInt aError);
+ virtual void MvpuoEvent(const TMMFEvent& aEvent);
+
+protected:
+ TBuf<KNameBufSize> iSectName; // Section name for retrieving filename
+ TBuf<KNameBufSize> iKeyName; // Key name for retrieving filename
+ HBufC8* iVideo; // Buffer for holding video descriptor data
+ TTimeIntervalMicroSeconds iDuration;// Stores duration of video
+ TInt iError; // Stores error values for testing
+ const TBool iPlay; // Does this test require playing the video
+ } ;
+
+/**
+ * Open video form a URL and play.
+ *
+ * @class CTestVclntVideoUrl
+ *
+ */
+class CTestVclntVideoUrl : public CTestMmfVclntStep , public MVideoPlayerUtilityObserver
+ {
+public:
+ CTestVclntVideoUrl(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName,const TBool aPlay);
+ static CTestVclntVideoUrl* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName,const TBool aPlay);
+ static CTestVclntVideoUrl* NewLC(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName,const TBool aPlay);
+ virtual TVerdict DoTestStepL();
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+ // MVideoPlayerUtilityObserver
+ virtual void MvpuoOpenComplete(TInt aError);
+ virtual void MvpuoPrepareComplete(TInt aError);
+ virtual void MvpuoFrameReady(CFbsBitmap& aFrame, TInt aError);
+ virtual void MvpuoPlayComplete(TInt aError);
+ virtual void MvpuoEvent(const TMMFEvent& aEvent);
+
+protected:
+ TBuf<KNameBufSize> iSectName; // Section name for retrieving filename
+ TBuf<KNameBufSize> iKeyName; // Key name for retrieving filename
+ TTimeIntervalMicroSeconds iDuration;// Stores duration of video
+ TInt iError; // Stores error values for testing
+ const TBool iPlay; // Does this test require playing the video
+ HBufC8* iVideo; // Buffer for holding video descriptor data
+ };
+
+/**
+ * Set and enquire framerate
+ *
+ * @class CTestVclntEnqFrameRate
+ *
+ * Req. under test REQ172.2.28
+ */
+class CTestVclntEnqFrameRate : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntEnqFrameRate* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aFrameRate);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntEnqFrameRate(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aFrameRate);
+
+private:
+ TInt iFrameRate;
+ };
+
+
+/**
+ * set position and play form this position.
+ *
+ * @class CTestVclntPosition
+ *
+ * Req. under test REQ172.2.13 REQ172.2.14
+ */
+class CTestVclntPosition : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntPosition* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TTimeIntervalMicroSeconds aPosition);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntPosition(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TTimeIntervalMicroSeconds aPosition);
+
+private:
+ TTimeIntervalMicroSeconds iPosition;
+ };
+
+/**
+ * Video priority
+ *
+ * @class CTestVclntPriority
+ *
+ * Req. under test REQ172.2.25
+ */
+class CTestVclntPriority : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntPriority* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aPriority);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntPriority(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aPriority);
+
+private:
+ TInt iPriority;
+ };
+
+
+/**
+ * Video duration
+ *
+ * @class CTestVclntDuration
+ *
+ * Req. under test REQ172.2.15
+ */
+class CTestVclntDuration : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntDuration* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TTimeIntervalMicroSeconds aDuration);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntDuration(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TTimeIntervalMicroSeconds aDuration);
+ };
+
+
+/**
+ * Video Volume
+ *
+ * @class CTestVclntVolume
+ *
+ * Req. under test REQ172.2.16 REQ172.2.17 REQ172.2.18
+ */
+class CTestVclntVolume : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntVolume* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aVolume);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntVolume(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aVolume);
+
+private:
+ TInt iVolume;
+ };
+
+
+/**
+ * Video open, close and then open again.
+ *
+ * @class CTestVclntCloseOpen
+ *
+ * Req. under test REQ172.2.4 REQ172.2.5 REQ172.2.6
+ */
+class CTestVclntCloseOpen : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntCloseOpen* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntCloseOpen(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+ };
+
+
+
+/**
+ * Video pause.
+ *
+ * @class CTestVclntPause
+ *
+ * Req. under test REQ172.2.10 REQ172.2.11
+ */
+class CTestVclntPause : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntPause* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntPause(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+ };
+
+
+/**
+ * Video pause.
+ *
+ * @class CTestVclntBalance
+ *
+ * Req. under test REQ172.2.30 REQ172.2.31
+ */
+class CTestVclntBalance : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntBalance* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aBalance);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntBalance(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aBalance);
+
+private:
+ TInt iBalance;
+ };
+
+
+
+/**
+ * Video set play window and delete play window.
+ *
+ * @class CTestVclntPlayWindow
+ *
+ * Req. under test REQ172.2.21 REQ172.2.22
+ */
+class CTestVclntPlayWindow : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntPlayWindow* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TTimeIntervalMicroSeconds aStart, const TTimeIntervalMicroSeconds aEnd);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntPlayWindow(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TTimeIntervalMicroSeconds aStart, const TTimeIntervalMicroSeconds aEnd);
+
+private:
+ TTimeIntervalMicroSeconds iStart;
+ TTimeIntervalMicroSeconds iEnd;
+ };
+
+
+/**
+ * Video get meta data.
+ *
+ * @class CTestVclntMeta
+ *
+ * Req. under test REQ172.2.20
+ */
+class CTestVclntMeta : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntMeta* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntMeta(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+
+private:
+ TTimeIntervalMicroSeconds iStart;
+ TTimeIntervalMicroSeconds iEnd;
+ };
+
+
+/**
+ * Video get framesize.
+ *
+ * @class CTestVclntFrameSize
+ *
+ * Req. under test REQ172.2.27
+ */
+class CTestVclntFrameSize : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntFrameSize* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aFrameSize);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntFrameSize(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aFrameSize);
+
+private:
+ TInt iFrameSize;
+ };
+
+
+/**
+ * Video get mime type.
+ *
+ * @class CTestVclntMimeType
+ *
+ * Req. not mapped
+ */
+class CTestVclntMimeType : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntMimeType* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntMimeType(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+
+ };
+
+
+/**
+ * Video rebuffering.
+ *
+ * @class CTestVclntRebuffering
+ *
+ * Req. not mapped
+ */
+class CTestVclntRebuffering : public CTestVclntVideoFile, public MVideoLoadingObserver
+ {
+public:
+ static CTestVclntRebuffering* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+ void MvloLoadingStarted();
+ void MvloLoadingComplete();
+private:
+ CTestVclntRebuffering(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+
+ };
+
+/**
+ * Video get framesize.
+ *
+ * @class CTestVclntRepeat
+ *
+ * Req. under test REQ172.2.23
+ */
+class CTestVclntRepeat : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntRepeat* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aRepeat);
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntRepeat(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName, const TInt aRepeat);
+
+private:
+ TInt iRepeat;
+ };
+
+
+
+/**
+ * Video Delete object while playing
+ *
+ * @class CTestVclntDelete
+ *
+ * Req. under test REQ172.2.4 REQ172.2.7 REQ172.2.10
+ */
+class CTestVclntDelete : public CTestVclntVideoFile
+ {
+public:
+ static CTestVclntDelete* NewL(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+ virtual TVerdict DoTestStepL();
+ virtual TVerdict DoTestL(CVideoPlayerUtility* aPlayer);
+private:
+ CTestVclntDelete(const TDesC& aTestName, const TDesC& aSectName,const TDesC& aKeyName);
+ };
+
+
+#endif