diff -r 2c5162224003 -r fdb31ab341af inc/mpengine.h --- a/inc/mpengine.h Fri Apr 30 19:33:32 2010 -0500 +++ b/inc/mpengine.h Fri May 14 18:54:37 2010 -0500 @@ -28,13 +28,18 @@ class QTranslator; class HbPopup; class MpMpxHarvesterFrameworkWrapper; -class MpSongScanner; class MpMediaKeyHandler; class MpMpxCollectionFrameworkWrapper; class MpMpxPlaybackFrameworkWrapper; +class MpMpxDetailsFrameworkWrapper; class MpMpxCollectionData; class MpPlaybackData; +class MpSongData; class XQSharableFile; +class MpEngineFactory; +class MpAudioEffectsFrameworkWrapper; +class MpEqualizerFrameworkWrapper; +class MpProgressDialogHandler; #if defined(BUILD_MPENGINE_LIB) #define MPENGINE_EXPORT Q_DECL_EXPORT @@ -46,7 +51,18 @@ class MPENGINE_EXPORT MpEngine : public QObject { Q_OBJECT + Q_PROPERTY(int activePreset READ activePreset) + friend class MpEngineFactory; + +public: + enum EngineMode{ + StandAlone, + Fetch, + Embedded, + MediaBrowsing + }; + private: enum UsbBlockingState { @@ -61,11 +77,7 @@ public: virtual ~MpEngine(); - static MpEngine *instance(); - void initialize(MpCommon::MpViewMode viewMode, TUid uid = TUid::Uid( MpCommon::KMusicPlayerUid ) ); - void close(); - // Harvester related bool verifyUsbBlocking( bool showMessage = false ); void checkForSystemEvents(); @@ -82,16 +94,32 @@ void renamePlaylist( QString &newName ); void deleteSongs( QList &selection ); - void previewItem( int index ); void openIsolatedCollection( TCollectionContext context ); void releaseIsolatedCollection(); - + + void findAlbumSongs( int index ); + void playAlbumSongs( int albumIndex, int songIndex, MpMpxCollectionData* collectionData = 0 ); + MpMpxCollectionData *collectionData(); // Playback related MpPlaybackData *playbackData(); + + // Details related + MpSongData *songData(); + void retrieveSong(); + + // Audio Effects related + int balance(); + bool loudness(); + + // Equalizer related + void applyPreset( int presetIndex ); + void disableEqualizer(); + int activePreset(); + QStringList presetNames(); signals: @@ -107,6 +135,11 @@ void playlistsRenamed( bool success ); void isolatedCollectionOpened( MpMpxCollectionData* collectionData ); + + void containerContentsChanged(); + + // Equalizer related + void equalizerReady(); public slots: @@ -121,19 +154,33 @@ // Collection related void reopenCollection(); void reorderPlaylist( int playlistId, int songId, int originalOrdinal, int newOrdinal ); + void handleDeleteStarted(); + void handleDeleteEnded(); - // Playback related - void playEmbedded( QString aFilename ); - void playEmbedded( const XQSharableFile& file ); + // Playback related + void playEmbedded( QString aFilename ); + void playEmbedded( const XQSharableFile& file ); void playPause(); void stop(); void skipForward(); + void startSeekForward(); + void stopSeeking(); void skipBackward(); + void startSeekBackward(); void setPosition( int position ); void setShuffle( bool mode ); void setRepeat( bool mode ); + + // Audio Effects related + void setBalance( int balance ); + void setLoudness( bool mode ); + + // Equalizer related + void handleEqualizerReady(); private: + + void initialize( TUid hostUid, EngineMode mode); // Harvester related void handleUsbMassStorageStartEvent(); @@ -145,14 +192,13 @@ void changeUsbBlockingState( UsbBlockingState state ); void launchBlockingNote(); void setOutstandingPopup( HbPopup *popup ); - + private: Q_DISABLE_COPY( MpEngine ) // Harvesting related MpMpxHarvesterFrameworkWrapper *mMpxHarvesterWrapper; // Own - MpSongScanner *mSongScanner; // Own MpMediaKeyHandler *mMediaKeyHandler; // Own HbPopup *mUsbOutstandingNote; // Own @@ -161,14 +207,24 @@ // Playback related MpMpxPlaybackFrameworkWrapper *mMpxPlaybackWrapper; //Own + + // Details related + MpMpxDetailsFrameworkWrapper *mMpxDetailsWrapper; // Own + + // Audio Effects related + MpAudioEffectsFrameworkWrapper *mAudioEffectsWrapper; // Own + + // Equalizer related + MpEqualizerFrameworkWrapper *mEqualizerWrapper; // Own + int mCurrentPresetIndex; // General QTranslator *mMpTranslator; // Own UsbBlockingState mUsbBlockingState; UsbBlockingState mPreviousUsbState; - MpCommon::MpViewMode mViewMode; TUid mHostUid; - + MpProgressDialogHandler *mProgressDialogHandler; // Own + }; #endif // MPENGINE_H