equal
deleted
inserted
replaced
53 \internal |
53 \internal |
54 */ |
54 */ |
55 MpMpxPlaybackFrameworkWrapperPrivate::MpMpxPlaybackFrameworkWrapperPrivate( MpMpxPlaybackFrameworkWrapper *qq) |
55 MpMpxPlaybackFrameworkWrapperPrivate::MpMpxPlaybackFrameworkWrapperPrivate( MpMpxPlaybackFrameworkWrapper *qq) |
56 : q_ptr(qq), |
56 : q_ptr(qq), |
57 iPlaybackUtility(0), |
57 iPlaybackUtility(0), |
|
58 iEmbeddedPlaybackHelper(0), |
58 iPlaybackData(0), |
59 iPlaybackData(0), |
59 iDetailsRequest(false) |
60 iDetailsRequest(false) |
60 { |
61 { |
61 TX_LOG |
62 TX_LOG |
62 } |
63 } |
66 */ |
67 */ |
67 MpMpxPlaybackFrameworkWrapperPrivate::~MpMpxPlaybackFrameworkWrapperPrivate() |
68 MpMpxPlaybackFrameworkWrapperPrivate::~MpMpxPlaybackFrameworkWrapperPrivate() |
68 { |
69 { |
69 TX_ENTRY |
70 TX_ENTRY |
70 if ( iPlaybackUtility ) { |
71 if ( iPlaybackUtility ) { |
71 TRAP_IGNORE( ForceStopL() ); |
|
72 TRAP_IGNORE( iPlaybackUtility->RemoveObserverL(*this) ); |
72 TRAP_IGNORE( iPlaybackUtility->RemoveObserverL(*this) ); |
73 iPlaybackUtility->Close(); |
73 iPlaybackUtility->Close(); |
74 } |
74 } |
|
75 delete iEmbeddedPlaybackHelper; |
75 delete iPlaybackData; |
76 delete iPlaybackData; |
76 TX_EXIT |
77 TX_EXIT |
77 } |
78 } |
78 |
79 |
79 /*! |
80 /*! |
443 if ( err == KErrNone ) { |
444 if ( err == KErrNone ) { |
444 iDetailsRequest = true; |
445 iDetailsRequest = true; |
445 } |
446 } |
446 else { |
447 else { |
447 TX_LOG_ARGS( "Error: " << err << "; should never get here." ); |
448 TX_LOG_ARGS( "Error: " << err << "; should never get here." ); |
|
449 } |
|
450 TX_EXIT |
|
451 } |
|
452 |
|
453 /*! |
|
454 \internal |
|
455 */ |
|
456 void MpMpxPlaybackFrameworkWrapperPrivate::forceStop() |
|
457 { |
|
458 TX_ENTRY |
|
459 TRAPD( err, ForceStopL() ); |
|
460 if ( err != KErrNone ) { |
|
461 TX_LOG_ARGS("Error: " << err << "; should never get here."); |
448 } |
462 } |
449 TX_EXIT |
463 TX_EXIT |
450 } |
464 } |
451 |
465 |
452 /*! |
466 /*! |
607 if ( aMedia.IsSupported( KMPXMediaGeneralId ) ) { |
621 if ( aMedia.IsSupported( KMPXMediaGeneralId ) ) { |
608 changed |= iPlaybackData->setId( |
622 changed |= iPlaybackData->setId( |
609 aMedia.ValueTObjectL<TInt>( KMPXMediaGeneralId ) ); |
623 aMedia.ValueTObjectL<TInt>( KMPXMediaGeneralId ) ); |
610 } |
624 } |
611 |
625 |
612 if ( changed ) { |
626 // This is required to propagate the playback info to UI at once. |
613 // This is required to propagate the playback info to UI at once. |
627 iPlaybackData->commitPlaybackInfo( changed ); |
614 iPlaybackData->commitPlaybackInfo(); |
628 } |
615 } |
629 TX_EXIT |
616 } |
630 } |
|
631 |
|
632 /*! |
|
633 \internal |
|
634 */ |
|
635 void MpMpxPlaybackFrameworkWrapperPrivate::HandleEmbeddedPlaybackError( TInt aError ) |
|
636 { |
|
637 TX_ENTRY_ARGS( "aError=" << aError ); |
|
638 Q_UNUSED( aError ); |
|
639 emit q_ptr->corruptedStop( true ); |
617 TX_EXIT |
640 TX_EXIT |
618 } |
641 } |
619 |
642 |
620 /*! |
643 /*! |
621 \internal |
644 \internal |
637 /*! |
660 /*! |
638 \internal |
661 \internal |
639 */ |
662 */ |
640 void MpMpxPlaybackFrameworkWrapperPrivate::DoPlayL( QString aFilename ) |
663 void MpMpxPlaybackFrameworkWrapperPrivate::DoPlayL( QString aFilename ) |
641 { |
664 { |
642 TX_ENTRY |
665 TX_ENTRY_ARGS( "Filename: " << aFilename ); |
643 if ( !aFilename.isNull() ) { |
666 if ( !aFilename.isEmpty() ) { |
644 const TDesC& playTitle = TPtrC(reinterpret_cast<const TText*>( aFilename.constData() )); |
667 const TDesC& playTitle = TPtrC(reinterpret_cast<const TText*>( aFilename.constData() )); |
645 iPlaybackUtility->InitL( playTitle ); |
668 if ( !iEmbeddedPlaybackHelper ) { |
|
669 iEmbeddedPlaybackHelper = |
|
670 CMpMpxEmbeddedPlaybackHelper::NewL( iHostUid, iPlaybackUtility, this ); |
|
671 } |
|
672 iEmbeddedPlaybackHelper->playL( playTitle ); |
|
673 } |
|
674 else { |
|
675 HandleEmbeddedPlaybackError( KErrArgument ); |
646 } |
676 } |
647 TX_EXIT |
677 TX_EXIT |
648 } |
678 } |
649 |
679 |
650 /*! |
680 /*! |
651 \internal |
681 \internal |
652 */ |
682 */ |
653 void MpMpxPlaybackFrameworkWrapperPrivate::DoPlayL( const XQSharableFile& file ) |
683 void MpMpxPlaybackFrameworkWrapperPrivate::DoPlayL( const XQSharableFile& file ) |
654 { |
684 { |
655 TX_ENTRY |
685 TX_ENTRY |
656 |
686 DoPlayL( file.fileName() ); |
657 RFile xqfile; |
|
658 bool ok = file.getHandle( xqfile ); |
|
659 if ( ok ) { |
|
660 iPlaybackUtility->InitL( xqfile ); |
|
661 } |
|
662 else { |
|
663 TX_LOG_ARGS("Error: " << ok << "; should never get here."); |
|
664 } |
|
665 TX_EXIT |
687 TX_EXIT |
666 } |
688 } |
667 |
689 |
668 /*! |
690 /*! |
669 \internal |
691 \internal |