mpengine/src/mpmpxplaybackframeworkwrapper_p.cpp
changeset 51 560ce2306a17
parent 47 4cc1412daed0
child 55 f3930dda3342
equal deleted inserted replaced
47:4cc1412daed0 51:560ce2306a17
    26 #include <mpxmessagegeneraldefs.h>
    26 #include <mpxmessagegeneraldefs.h>
    27 #include <mpxplaybackmessagedefs.h>
    27 #include <mpxplaybackmessagedefs.h>
    28 #include <mpxplaybackframeworkdefs.h>
    28 #include <mpxplaybackframeworkdefs.h>
    29 #include <hbglobal.h>
    29 #include <hbglobal.h>
    30 #include <xqsharablefile.h>
    30 #include <xqsharablefile.h>
       
    31 #include <mpxcollectionplaylist.h>
    31 
    32 
    32 #include "mpmpxplaybackframeworkwrapper_p.h"
    33 #include "mpmpxplaybackframeworkwrapper_p.h"
    33 #include "mpmpxplaybackframeworkwrapper.h"
    34 #include "mpmpxplaybackframeworkwrapper.h"
    34 #include "mpplaybackdata.h"
    35 #include "mpplaybackdata.h"
    35 #include "mpcommondefs.h"
    36 #include "mpcommondefs.h"
    36 #include "mptrace.h"
    37 #include "mptrace.h"
    37 #include "mpxaudioeffectengine.h"
    38 #include "mpxaudioeffectengine.h"
    38 #include "mpsongdata.h"
    39 #include "mpsongdata.h"
       
    40 #include "mpxcollectionpath.h"
    39 
    41 
    40 _LIT(KMPXPnRealAudioMimeType, "audio/x-pn-realaudio");
    42 _LIT(KMPXPnRealAudioMimeType, "audio/x-pn-realaudio");
    41 _LIT(KMPXRealAudioMimeType, "audio/x-realaudio");
    43 _LIT(KMPXRealAudioMimeType, "audio/x-realaudio");
    42 _LIT(KMPXRnRealAudioMimeType, "audio/vnd.rn-realaudio");
    44 _LIT(KMPXRnRealAudioMimeType, "audio/vnd.rn-realaudio");
    43 /*!
    45 /*!
   454 {
   456 {
   455     TX_ENTRY_ARGS("aError=" << aError);
   457     TX_ENTRY_ARGS("aError=" << aError);
   456     if ( aError == KErrNone && aMessage ) {
   458     if ( aError == KErrNone && aMessage ) {
   457         TRAP_IGNORE( DoHandlePlaybackMessageL(*aMessage) );
   459         TRAP_IGNORE( DoHandlePlaybackMessageL(*aMessage) );
   458     }
   460     }
       
   461     else{
       
   462         TRAP_IGNORE( DoHandlePlaybackErrorL(aError) );
       
   463 	}
   459     TX_EXIT
   464     TX_EXIT
   460 }
   465 }
   461 
   466 
   462 /*!
   467 /*!
   463  \internal
   468  \internal
   718                 break;
   723                 break;
   719             default:
   724             default:
   720                 break;
   725                 break;
   721         }
   726         }
   722     }
   727     }
       
   728     TX_EXIT
       
   729 }
       
   730 
       
   731 /*!
       
   732  \internal
       
   733  */
       
   734 void MpMpxPlaybackFrameworkWrapperPrivate::DoHandlePlaybackErrorL( const TInt aError )
       
   735 {
       
   736     TX_ENTRY
       
   737     switch ( aError ) {
       
   738                 case KErrCorrupt:{
       
   739                     MMPXSource* source( iPlaybackUtility->Source() );
       
   740                     if ( source ){
       
   741                         CMPXCollectionPlaylist* playlist( source->PlaylistL() );
       
   742                         if ( playlist ){
       
   743                             MpPlaybackData* pData = playbackData();
       
   744                             pData->setCorrupted( playlist->Path().IdOfIndex( playlist->Index() ).iId2 );
       
   745                             
       
   746                             if ( playlist->Index() == ( playlist->Count()-1 ) ){
       
   747                                 //reach the end of list, pop up corrupt notification
       
   748                                 emit q_ptr->corruptedStop();
       
   749                             }
       
   750                             else{
       
   751                                 //corrupted song, skip to next song
       
   752                                 skipForward();
       
   753                             }
       
   754                         }
       
   755                     }
       
   756                     break;
       
   757                 }
       
   758                 default:
       
   759                     break;
       
   760             }
   723     TX_EXIT
   761     TX_EXIT
   724 }
   762 }
   725 
   763 
   726 /*!
   764 /*!
   727  \internal
   765  \internal