mmappfw_plat/mpx_playback_utility_api/tsrc/testvideoplaybackplugin/src/testvideoplaybackplugin.cpp
branchRCL_3
changeset 56 63223d4fd956
parent 55 6c1dfe4da5dd
child 59 666f9a5a90a9
--- a/mmappfw_plat/mpx_playback_utility_api/tsrc/testvideoplaybackplugin/src/testvideoplaybackplugin.cpp	Tue Aug 31 15:41:40 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,793 +0,0 @@
-/*
-* Copyright (c) 2002 - 2007 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:  CTestVideoPlaybackPlugin implementation
-*
-*/
-
-//
-//  INCLUDE FILES
-//
-#include <apgcli.h>
-#include <e32cmn.h>
-#include <mpxmediageneraldefs.h>
-#include <mpxcommandgeneraldefs.h>
-#include <mpxmessagegeneraldefs.h>
-#include <mpxplaybackcommanddefs.h>
-#include <mpxvideoplaybackdefs.h>
-#include <mpxplaybackpluginobserver.h>
-#include <mpxplaybackplugin.h>
-#include <mpxlog.h>
-#include <mpxmedia.h>
-
-#include "testvideoplaybackplugin.h"
-#include "mpxplaybackutilitytestdefs.h"
-#include "mpxplaybackutilitytest.h"
-
-
-//
-//  CONSTANTS
-//
-const TUid KLocalPlaybackUid = { 0x10282556 };
-
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-//  ----------------------------------------------------------------------------
-//    Two-phased constructor.
-//  ----------------------------------------------------------------------------
-//
-CTestVideoPlaybackPlugin* CTestVideoPlaybackPlugin::NewL( TAny* /*aInitParams*/ )
-{
-    
-    CTestVideoPlaybackPlugin* p = new (ELeave) CTestVideoPlaybackPlugin();
-    CleanupStack::PushL(p);
-    p->ConstructL();
-    CleanupStack::Pop(p);
-    return p;
-}
-
-//  ----------------------------------------------------------------------------
-//    Symbian 2nd phase constructor can leave.
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::ConstructL()
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::ConstructL()");
-    User::LeaveIfError( iFs.Connect() );
-    iFs.ShareProtected();
-    
-    iEventArray = new (ELeave) CArrayPtrFlat<TTestVideoPlaybackCallbackEvent>( 1 );
-    iCallback   = CIdle::NewL( CActive::EPriorityLow );
-}
-
-//  ----------------------------------------------------------------------------
-//    C++ constructor
-//  ----------------------------------------------------------------------------
-//
-CTestVideoPlaybackPlugin::CTestVideoPlaybackPlugin() 
-
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::CTestVideoPlaybackPlugin()");
-}
-
-//  ----------------------------------------------------------------------------
-//    Destructor
-//  ----------------------------------------------------------------------------
-//
-CTestVideoPlaybackPlugin::~CTestVideoPlaybackPlugin()
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::~CTestVideoPlaybackPlugin()");
-    iFile.Close();
-    iFs.Close();
-    
-    if ( iCallback->IsActive() )
-    {
-        iCallback->Cancel();
-    }
-
-    delete iCallback;
-
-    iEventArray->ResetAndDestroy();
-}
-
-//  ----------------------------------------------------------------------------
-//    Set observer
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::SetObserver( MMPXPlaybackPluginObserver& aObs )
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::SetObserver( MMPXPlaybackPluginObserver& aObs )");
-    iObs = &aObs;
-}
-
-//  ----------------------------------------------------------------------------
-//    Initializes a clip for playback from a file name
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::InitialiseL( const TDesC& aSong )
-{
-    
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::InitialiseL( const TDesc& aSong)");
-    
-	delete iClipName;
-    iClipName = NULL;
-    iClipName = aSong.AllocL();
-
-    iFile.Close();
-
-    TInt err = iFile.Open( iFs, aSong, EFileRead | EFileShareReadersOrWriters );
-
-    //
-    //  Remap KErrNotReady to KErrNotFound, because it is referencing a drive
-    //  that is not existent
-    //
-    if ( KErrNotReady == err )
-    {
-        err = KErrNotFound;
-    }
-
-    // if aSong is an streaming link and contains one of the streaming schemas
-    // eg. rtsp:// , http:// etc. then a file handle can not be opened
-    // ignore KErrBadName
-    if (err != KErrBadName)
-    {
-        User::LeaveIfError( err );    
-    }    
-
-    
-    TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-    
-    event->iEvent = MMPXPlaybackPluginObserver::EPInitialised;
-    event->iData = 0;
-    event->iError = KErrNone;
-    
-    AddCallbackEvent( event );
-    
-    event = new TTestVideoPlaybackCallbackEvent;
-    event->iEvent = MMPXPlaybackPluginObserver::EPBufferingStarted;
-    event->iData = 0;
-    event->iError = KErrNone;
-        
-    AddCallbackEvent( event );    
-}
-
-//  ----------------------------------------------------------------------------
-//    Initializes a clip for playback from a file handle
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::InitialiseL( RFile& aSong )
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::InitialiseL( RFile& aSong )");
-    
-    delete iClipName;
-    iClipName = NULL;
-    iClipName = HBufC::NewL( KMaxFileName );
-    TPtr ptr = iClipName->Des();
-    aSong.FullName( ptr );
-
-    iFile.Close();
-    User::LeaveIfError( iFile.Duplicate( aSong ));
-    
-    TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-    
-    event->iEvent = MMPXPlaybackPluginObserver::EPInitialised;
-    event->iData = 0;
-    event->iError = KErrNone;
-    
-    AddCallbackEvent( event );
-
-    event = new TTestVideoPlaybackCallbackEvent;
-    event->iEvent = MMPXPlaybackPluginObserver::EPBufferingStarted;
-    event->iData = 0;
-    event->iError = KErrNone;
-        
-    AddCallbackEvent( event );        
-}
-
-/**
-* Initializes a file for playback.
-*
-* @since S60 9.2
-* @param aUri URI of the item
-* @param aType the mime type of the item
-* @param aAccessPoint the access point
-*/
-void CTestVideoPlaybackPlugin::InitStreamingL(const TDesC& /*aUri*/, 
-        const TDesC8& /*aType*/, TInt /*aAccessPoint*/, TInt /*aPosition*/)
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::InitStreamingL(const TDesC& /*aUri*/, const TDesC8& /*aType*/, TInt /*aAccessPoint*/, TInt /*aPosition*/)");
-    
-    TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-    
-    event->iEvent = MMPXPlaybackPluginObserver::EPInitialised;
-    event->iData = 0;
-    event->iError = KErrNone;
-    
-    AddCallbackEvent( event );
-
-    event = new TTestVideoPlaybackCallbackEvent;
-    event->iEvent = MMPXPlaybackPluginObserver::EPBufferingStarted;
-    event->iData = 0;
-    event->iError = KErrNone;
-        
-    AddCallbackEvent( event );    
-}
-
-/**
-* Initializes a file handle for playback.
-*
-* @since S60 9.2
-* @param aFile file handle of a file
-* @param aAccessPoint the access point
-*/
-void CTestVideoPlaybackPlugin::InitStreamingL(RFile& /*aFile*/, TInt /*aAccessPoint*/, TInt /*aPosition*/)
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::InitStreamingL(RFile& /*aFile*/, TInt /*aAccessPoint*/, TInt /*aPosition*/)");
-        
-    TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-    
-    event->iEvent = MMPXPlaybackPluginObserver::EPInitialised;
-    event->iData = 0;
-    event->iError = KErrNone;
-    
-    AddCallbackEvent( event );    
-    
-    event = new TTestVideoPlaybackCallbackEvent;
-    event->iEvent = MMPXPlaybackPluginObserver::EPBufferingStarted;
-    event->iData = 0;
-    event->iError = KErrNone;
-        
-    AddCallbackEvent( event );    
-}
-
-#ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
-/**
-* Initializes a file handle for playback.
-*
-* @since S60 9.2
-* @param aFile 64 bit file handle of a file
-* @param aAccessPoint the access point
-*/
-void CTestVideoPlaybackPlugin::InitStreaming64L(RFile64& /*aFile*/, TInt /*aAccessPoint*/, TInt /*aPosition*/)
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::InitStreaming64L(RFile64& /*aFile*/, TInt /*aAccessPoint*/, TInt /*aPosition*/)");
-    
-    TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-    
-    event->iEvent = MMPXPlaybackPluginObserver::EPInitialised;
-    event->iData = 0;
-    event->iError = KErrNone;
-    
-    AddCallbackEvent( event );
-
-    event = new TTestVideoPlaybackCallbackEvent;
-    event->iEvent = MMPXPlaybackPluginObserver::EPBufferingStarted;
-    event->iData = 0;
-    event->iError = KErrNone;
-        
-    AddCallbackEvent( event );    
-}
-
-/**
-* Initializes a song for playback.
-*
-* @since S60 9.2
-* @param aFile 64 bit file handle of a song
-*/
-void CTestVideoPlaybackPlugin::Initialise64L(RFile64& /*aSong*/, TInt /*aPosition*/)
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::Initialise64L(RFile64& /*aSong*/, TInt /*aPosition*/)");
-    
-    TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-    
-    event->iEvent = MMPXPlaybackPluginObserver::EPInitialised;
-    event->iData = 0;
-    event->iError = KErrNone;
-    
-    AddCallbackEvent( event );
-
-    event = new TTestVideoPlaybackCallbackEvent;
-    event->iEvent = MMPXPlaybackPluginObserver::EPBufferingStarted;
-    event->iData = 0;
-    event->iError = KErrNone;
-        
-    AddCallbackEvent( event );    
-}
-#endif // SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
-
-//  ----------------------------------------------------------------------------
-//    Executes a command on the selected song
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::CommandL( CMPXCommand& aCmd )
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::CommandL( CMPXCommand& aCmd )");
-    
-    if ( aCmd.IsSupported( KMPXStifPlaybackCommand ) )
-    {
-       TMPXStifCommand cmd = static_cast<TMPXStifCommand>(aCmd.ValueTObjectL<TInt>(KMPXStifPlaybackCommand));
-       TMPXPlaybackState state = static_cast<TMPXPlaybackState>(aCmd.ValueTObjectL<TInt>(KMPXCommandPlaybackGeneralData));
-       
-       MPX_DEBUG3("CTestVideoPlaybackPlugin::CommandL cmd = %d, state = %d ", cmd, state);
-       
-       switch ( cmd )
-       {
-           case EPbStifPlayComplete:
-           {
-               MPX_DEBUG1("CTestVideoPlaybackPlugin::CommandL aCmd is EPbStifPlaybackComplete");
-
-               TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-
-               event->iEvent = MMPXPlaybackPluginObserver::EPPlayComplete;
-               event->iData = 0;
-               event->iError = KErrNone;
-                   
-               AddCallbackEvent( event );
-
-               break;
-           }
-           case EPbStifSeekForward:
-           {
-               MPX_DEBUG1("CTestVideoPlaybackPlugin::CommandL aCmd is EPbStifSeekForward");
- 
-               TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-
-               event->iEvent = MMPXPlaybackPluginObserver::EPPluginSeeking;
-               event->iData = 0;
-               event->iError = KErrNone;
-                   
-               AddCallbackEvent( event );
-               
-               event = new TTestVideoPlaybackCallbackEvent;
-               event->iEvent = MMPXPlaybackPluginObserver::EPPositionChanged;
-               event->iData = 0;
-               event->iError = KErrNone;
-                  
-               AddCallbackEvent( event );
-               
-               if ( state == EPbStatePlaying )
-               {
-
-                   event = new TTestVideoPlaybackCallbackEvent;
-                   event->iEvent = MMPXPlaybackPluginObserver::EPPlaying;
-                   event->iData = 0;
-                   event->iError = KErrNone;
-                      
-                   AddCallbackEvent( event );               
-               }
-               else if ( state == EPbStatePaused )
-               {
-
-                   event = new TTestVideoPlaybackCallbackEvent;
-                   event->iEvent = MMPXPlaybackPluginObserver::EPPaused;
-                   event->iData = 0;
-                   event->iError = KErrNone;
-                      
-                   AddCallbackEvent( event );
-                                          
-               }
-               break;
-           }
-                   
-           case EPbStifSeekBackward:
-           {
-              MPX_DEBUG1("CTestVideoPlaybackPlugin::CommandL aCmd is EPbStifSeekBackward");
-
-              TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-              
-              event->iEvent = MMPXPlaybackPluginObserver::EPPluginSeeking;
-              event->iData = 0;
-              event->iError = KErrNone;
-                  
-              AddCallbackEvent( event );
-              
-              event = new TTestVideoPlaybackCallbackEvent;
-              event->iEvent = MMPXPlaybackPluginObserver::EPPositionChanged;
-              event->iData = 0;
-              event->iError = KErrNone;
-                 
-              AddCallbackEvent( event );
-              
-              if ( state == EPbStatePlaying )
-              {
-
-                  event = new TTestVideoPlaybackCallbackEvent;
-                  event->iEvent = MMPXPlaybackPluginObserver::EPPlaying;
-                  event->iData = 0;
-                  event->iError = KErrNone;
-                     
-                  AddCallbackEvent( event );            
-              }
-              else if ( state == EPbStatePaused )
-              {
-
-                  event = new TTestVideoPlaybackCallbackEvent;
-                  event->iEvent = MMPXPlaybackPluginObserver::EPPaused;
-                  event->iData = 0;
-                  event->iError = KErrNone;
-                     
-                  AddCallbackEvent( event );
-              }
-              break;
-           }
-           
-           default:
-           {
-               MPX_DEBUG1("CTestVideoPlaybackPlugin::CommandL aCmd default");
-               break;
-           }
-       }
-   }       
-}
-
-
-//  ----------------------------------------------------------------------------
-//    Executes a command on the selected song
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::CommandL(TMPXPlaybackCommand aCmd, TInt /*aData*/)
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::CommandL(TMPXPlaybackCommand aCmd, TInt /*aData*/)");
-    
-    MPX_DEBUG2("CTestVideoPlaybackPlugin::CommandL aCmd = %d", aCmd);
-
-    switch (aCmd)
-    {            
-        case EPbCmdPlay:
-        {
-            MPX_DEBUG1("CTestVideoPlaybackPlugin::CommandL aCmd is EPbCmdPlay");
-
-            TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-
-            event->iEvent = MMPXPlaybackPluginObserver::EPPlaying;
-            event->iData = 0;
-            event->iError = KErrNone;
-                
-            AddCallbackEvent( event );
-            
-            break;
-        }
-            
-        case EPbCmdClose:
-        {
-            MPX_DEBUG1("CTestVideoPlaybackPlugin::CommandL aCmd is EPbCmdClose");
-
-            TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-            
-            event->iEvent = MMPXPlaybackPluginObserver::EPClosed;
-            event->iData = 0;
-            event->iError = KErrNone;
-                
-            AddCallbackEvent( event );
-
-            break;
-        }
-           
-        case EPbCmdStop:
-        {
-            MPX_DEBUG1("CTestVideoPlaybackPlugin::CommandL aCmd is EPbCmdStop");
-
-            TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-
-            event->iEvent = MMPXPlaybackPluginObserver::EPStopped;
-            event->iData = 0;
-            event->iError = KErrNone;
-                
-            AddCallbackEvent( event );
-
-            break;
-        }
-            
-        case EPbCmdPause:
-        {
-            MPX_DEBUG1("CTestVideoPlaybackPlugin::CommandL aCmd is EPbCmdPause");
-
-            TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-
-            event->iEvent = MMPXPlaybackPluginObserver::EPPaused;
-            event->iData = 0;
-            event->iError = KErrNone;
-                
-            AddCallbackEvent( event );
-            
-            break;
-        }
-            
-        case EPbCmdStartSeekForward:
-        {
-            MPX_DEBUG1("CTestVideoPlaybackPlugin::CommandL aCmd is EPbCmdStartSeekForward");
-
-            TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-            
-            event->iEvent = MMPXPlaybackPluginObserver::EPPluginSeeking;
-            event->iData = 0;
-            event->iError = KErrNone;
-                
-            AddCallbackEvent( event );
-
-            event = new TTestVideoPlaybackCallbackEvent;
-            event->iEvent = MMPXPlaybackPluginObserver::EPPositionChanged;
-            event->iData = 0;
-            event->iError = KErrNone;
-
-            AddCallbackEvent( event );
-            
-            event = new TTestVideoPlaybackCallbackEvent;
-            event->iEvent = MMPXPlaybackPluginObserver::EPPlaying;
-            event->iData = 0;
-            event->iError = KErrNone;
-
-            AddCallbackEvent( event );
-            
-            break;
-        }
-                
-        default:
-        {
-            MPX_DEBUG1("CTestVideoPlaybackPlugin::CommandL aCmd default");
-            break;
-        }
-    }
-}
-
-
-//  ----------------------------------------------------------------------------
-//    Sets a property of the plugin
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::SetL( TMPXPlaybackProperty aProperty, TInt aValue )
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::SetL( TMPXPlaybackProperty /*aProperty*/, TInt /*aValue*/ )");
-    MPX_DEBUG3("CTestVideoPlaybackPlugin::SetL aProperty = %d, aValue = %d", aProperty, aValue);
-    
-    TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-
-    event->iEvent = MMPXPlaybackPluginObserver::EPSetComplete;
-    event->iData = aProperty;
-    event->iError = KErrNone;
-        
-    AddCallbackEvent( event );    
-}
-
-//  ----------------------------------------------------------------------------
-//    Gets a property of the plugin (async)
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::PropertyL( TMPXPlaybackProperty /*aProperty*/ ) const
-{
-
-}
-
-//  ----------------------------------------------------------------------------
-//    Gets a list of sub players, UPnP only
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::SubPlayerNamesL()
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::SubPlayerNamesL()");
-    
-    iObs->HandleSubPlayerNames( KLocalPlaybackUid, NULL, ETrue, KErrNone );
-}
-
-//  ----------------------------------------------------------------------------
-//    Select a sub player
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::SelectSubPlayerL( TInt /*aIndex*/ )
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::SelectSubPlayerL( TInt aIndex )");
-    
-    User::Leave( KErrNotSupported );
-}
-
-//  ----------------------------------------------------------------------------
-//    Returns current sub player name
-//  ----------------------------------------------------------------------------
-//
-const TDesC& CTestVideoPlaybackPlugin::SubPlayerName()
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::SubPlayerName()");
-    
-    return KNullDesC;
-}
-
-//  ----------------------------------------------------------------------------
-//    Current sub player index
-//  ----------------------------------------------------------------------------
-//
-TInt CTestVideoPlaybackPlugin::SubPlayerIndex() const
-{
-     
-    return KErrNotFound;
-}
-
-//  ----------------------------------------------------------------------------
-//    Gets media properties
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::MediaL( const TArray<TMPXAttribute>& /*aAttrs*/ )
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::MediaL( const TArray TMPXAttribute )");
-}
-
-//  ----------------------------------------------------------------------------
-//    Cancel request
-//  ----------------------------------------------------------------------------
-//
-void CTestVideoPlaybackPlugin::CancelRequest()
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::CancelRequest()");
-}
-
-//  ----------------------------------------------------------------------------
-//  CTestVideoPlaybackPlugin::GetFileHandle()
-//  ----------------------------------------------------------------------------
-//
-RFile CTestVideoPlaybackPlugin::GetFileHandle()
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::GetFileHandle()");
-    
-    return iFile;
-}
-
-/**
-* Initializes a song for playback.
-*
-* @since S60 9.2
-* @param aSong the song path
-* @param aPosition the starting position
-*/
-void CTestVideoPlaybackPlugin::InitialiseWithPositionL(const TDesC& aSong, TInt aPosition)
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::InitialiseWithPositionL(const TDesC& /*aSong*/, TInt /*aPosition*/)");
-    
-    delete iClipName;
-    iClipName = NULL;
-    iClipName = aSong.AllocL();
-
-    iFile.Close();
-
-    TInt err = iFile.Open( iFs, aSong, EFileRead | EFileShareReadersOrWriters );
-
-    //
-    //  Remap KErrNotReady to KErrNotFound, because it is referencing a drive
-    //  that is not existent
-    //
-    if ( KErrNotReady == err )
-    {
-        err = KErrNotFound;
-    }
-
-    // if aSong is an streaming link and contains one of the streaming schemas
-    // eg. rtsp:// , http:// etc. then a file handle can not be opened
-    // ignore KErrBadName
-    if (err != KErrBadName)
-    {
-        User::LeaveIfError( err );    
-    }            
-    
-    TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-    
-    event->iEvent = MMPXPlaybackPluginObserver::EPInitialised;
-    event->iData = 0;
-    event->iError = KErrNone;
-    
-    AddCallbackEvent( event );    
-    
-    event = new TTestVideoPlaybackCallbackEvent;
-    event->iEvent = MMPXPlaybackPluginObserver::EPBufferingStarted;
-    event->iData = 0;
-    event->iError = KErrNone;
-        
-    AddCallbackEvent( event );
-}
-
-/**
-* Initializes a song for playback.
-*
-* @since S60 9.2
-* @param aFile file handle of a song
-* @param aPosition the starting position
-*/
-void CTestVideoPlaybackPlugin::InitialiseWithPositionL(RFile& aSong, TInt aPosition)
-{
-    MPX_FUNC_EX("CTestVideoPlaybackPlugin::InitialiseWithPositionL(RFile& aSong, TInt aPosition)");
-
-    delete iClipName;
-    iClipName = NULL;
-    iClipName = HBufC::NewL( KMaxFileName );
-    TPtr ptr = iClipName->Des();
-    aSong.FullName( ptr );
-
-    iFile.Close();
-    User::LeaveIfError( iFile.Duplicate( aSong ));
-    
-    
-    TTestVideoPlaybackCallbackEvent* event = new (ELeave) TTestVideoPlaybackCallbackEvent;
-    
-    event->iEvent = MMPXPlaybackPluginObserver::EPInitialised;
-    event->iData = 0;
-    event->iError = KErrNone;
-    
-    AddCallbackEvent( event );
-
-    event = new TTestVideoPlaybackCallbackEvent;
-    event->iEvent = MMPXPlaybackPluginObserver::EPBufferingStarted;
-    event->iData = 0;
-    event->iError = KErrNone;
-            
-    AddCallbackEvent( event );
-}
-
-
-void CTestVideoPlaybackPlugin::RunL()
-{
-    MPX_FUNC_EX("CTestVideoPaybackPlugin::RunL");   
-}
-
-void CTestVideoPlaybackPlugin::DoCancel()
-{
-    MPX_FUNC_EX("CTestVideoPaybackPlugin::DoCancel");
-}
-
-void CTestVideoPlaybackPlugin::AddCallbackEvent( TTestVideoPlaybackCallbackEvent* event )
-{      
-    MPX_DEBUG1("CTestVideoPlaybackPlugin::AddCallbackEvent");
-    
-    iEventArray->AppendL( event );
-
-    if ( ! iCallback->IsActive() )
-    {
-        iCallback->Start( TCallBack( CTestVideoPlaybackPlugin::SendEvent, this ) );
-    }
-}
-
-TInt CTestVideoPlaybackPlugin::SendEvent (TAny* aPtr )
-{
-    MPX_DEBUG1("CTestVideoPlaybackPlugin::SendEvent");
-    
-    static_cast<CTestVideoPlaybackPlugin*>(aPtr)->DoSendEvent();
-
-    return KErrNone;
-}
-
-void CTestVideoPlaybackPlugin::DoSendEvent()
-{
-    MPX_DEBUG1("-->CTestVideoPlaybackPlugin::DoSendEvent");
-
-    TInt count = iEventArray->Count();
-
-    if ( count > 0 )
-    {
-    TTestVideoPlaybackCallbackEvent* event = (*iEventArray)[0];
-        
-    MMPXPlaybackPluginObserver::TEvent myevent = static_cast<MMPXPlaybackPluginObserver::TEvent>(event->iEvent);
-    
-        iObs->HandlePluginEvent( myevent, event->iData, event->iError);
-
-        if ( count > 1 )
-        {
-            //
-            //  More events exist, start another callback
-            //
-            MPX_DEBUG1("CTestVideoPlaybackPlugin::DoSendEvent - there are more events, start another callback");
-            iCallback->Start( TCallBack( CTestVideoPlaybackPlugin::SendEvent, this ) );
-        }
-
-        iEventArray->Delete( 0 );
-    }
-    MPX_DEBUG1("<--CTestVideoPlaybackPlugin::DoSendEvent");
-}
-
-// End of file