26 |
26 |
27 class QStringList; |
27 class QStringList; |
28 class QTranslator; |
28 class QTranslator; |
29 class HbPopup; |
29 class HbPopup; |
30 class MpMpxHarvesterFrameworkWrapper; |
30 class MpMpxHarvesterFrameworkWrapper; |
31 class MpSongScanner; |
|
32 class MpMediaKeyHandler; |
31 class MpMediaKeyHandler; |
33 class MpMpxCollectionFrameworkWrapper; |
32 class MpMpxCollectionFrameworkWrapper; |
34 class MpMpxPlaybackFrameworkWrapper; |
33 class MpMpxPlaybackFrameworkWrapper; |
|
34 class MpMpxDetailsFrameworkWrapper; |
35 class MpMpxCollectionData; |
35 class MpMpxCollectionData; |
36 class MpPlaybackData; |
36 class MpPlaybackData; |
|
37 class MpSongData; |
37 class XQSharableFile; |
38 class XQSharableFile; |
|
39 class MpEngineFactory; |
|
40 class MpAudioEffectsFrameworkWrapper; |
|
41 class MpEqualizerFrameworkWrapper; |
|
42 class MpProgressDialogHandler; |
38 |
43 |
39 #if defined(BUILD_MPENGINE_LIB) |
44 #if defined(BUILD_MPENGINE_LIB) |
40 #define MPENGINE_EXPORT Q_DECL_EXPORT |
45 #define MPENGINE_EXPORT Q_DECL_EXPORT |
41 #else |
46 #else |
42 #define MPENGINE_EXPORT Q_DECL_IMPORT |
47 #define MPENGINE_EXPORT Q_DECL_IMPORT |
44 |
49 |
45 |
50 |
46 class MPENGINE_EXPORT MpEngine : public QObject |
51 class MPENGINE_EXPORT MpEngine : public QObject |
47 { |
52 { |
48 Q_OBJECT |
53 Q_OBJECT |
49 |
54 Q_PROPERTY(int activePreset READ activePreset) |
|
55 |
|
56 friend class MpEngineFactory; |
|
57 |
|
58 public: |
|
59 enum EngineMode{ |
|
60 StandAlone, |
|
61 Fetch, |
|
62 Embedded, |
|
63 MediaBrowsing |
|
64 }; |
|
65 |
50 private: |
66 private: |
51 |
67 |
52 enum UsbBlockingState { |
68 enum UsbBlockingState { |
53 USB_NotConnected, // Not connected |
69 USB_NotConnected, // Not connected |
54 USB_Connected, // Connected in MTP mode but not synchronizing |
70 USB_Connected, // Connected in MTP mode but not synchronizing |
80 void saveToCurrentPlaylist( QList<int> &selection, MpMpxCollectionData *collectionData ); |
92 void saveToCurrentPlaylist( QList<int> &selection, MpMpxCollectionData *collectionData ); |
81 void renamePlaylist( QString &newName, int index ); |
93 void renamePlaylist( QString &newName, int index ); |
82 void renamePlaylist( QString &newName ); |
94 void renamePlaylist( QString &newName ); |
83 void deleteSongs( QList<int> &selection ); |
95 void deleteSongs( QList<int> &selection ); |
84 |
96 |
85 |
|
86 void previewItem( int index ); |
97 void previewItem( int index ); |
87 void openIsolatedCollection( TCollectionContext context ); |
98 void openIsolatedCollection( TCollectionContext context ); |
88 void releaseIsolatedCollection(); |
99 void releaseIsolatedCollection(); |
89 |
100 |
|
101 void findAlbumSongs( int index ); |
|
102 void playAlbumSongs( int albumIndex, int songIndex, MpMpxCollectionData* collectionData = 0 ); |
|
103 |
90 MpMpxCollectionData *collectionData(); |
104 MpMpxCollectionData *collectionData(); |
91 |
105 |
92 // Playback related |
106 // Playback related |
93 |
107 |
94 MpPlaybackData *playbackData(); |
108 MpPlaybackData *playbackData(); |
|
109 |
|
110 // Details related |
|
111 MpSongData *songData(); |
|
112 void retrieveSong(); |
|
113 |
|
114 // Audio Effects related |
|
115 int balance(); |
|
116 bool loudness(); |
|
117 |
|
118 // Equalizer related |
|
119 void applyPreset( int presetIndex ); |
|
120 void disableEqualizer(); |
|
121 int activePreset(); |
|
122 QStringList presetNames(); |
95 |
123 |
96 signals: |
124 signals: |
97 |
125 |
98 // Harvester related |
126 // Harvester related |
99 void libraryAboutToUpdate(); |
127 void libraryAboutToUpdate(); |
105 void playlistSaved( bool success ); |
133 void playlistSaved( bool success ); |
106 void songsDeleted( bool success ); |
134 void songsDeleted( bool success ); |
107 void playlistsRenamed( bool success ); |
135 void playlistsRenamed( bool success ); |
108 |
136 |
109 void isolatedCollectionOpened( MpMpxCollectionData* collectionData ); |
137 void isolatedCollectionOpened( MpMpxCollectionData* collectionData ); |
|
138 |
|
139 void containerContentsChanged(); |
|
140 |
|
141 // Equalizer related |
|
142 void equalizerReady(); |
110 |
143 |
111 public slots: |
144 public slots: |
112 |
145 |
113 // Harvester related |
146 // Harvester related |
114 void refreshLibrary(); |
147 void refreshLibrary(); |
119 void handleOutstandingNoteClosing(); |
152 void handleOutstandingNoteClosing(); |
120 |
153 |
121 // Collection related |
154 // Collection related |
122 void reopenCollection(); |
155 void reopenCollection(); |
123 void reorderPlaylist( int playlistId, int songId, int originalOrdinal, int newOrdinal ); |
156 void reorderPlaylist( int playlistId, int songId, int originalOrdinal, int newOrdinal ); |
124 |
157 void handleDeleteStarted(); |
125 // Playback related |
158 void handleDeleteEnded(); |
126 void playEmbedded( QString aFilename ); |
159 |
127 void playEmbedded( const XQSharableFile& file ); |
160 // Playback related |
|
161 void playEmbedded( QString aFilename ); |
|
162 void playEmbedded( const XQSharableFile& file ); |
128 void playPause(); |
163 void playPause(); |
129 void stop(); |
164 void stop(); |
130 void skipForward(); |
165 void skipForward(); |
|
166 void startSeekForward(); |
|
167 void stopSeeking(); |
131 void skipBackward(); |
168 void skipBackward(); |
|
169 void startSeekBackward(); |
132 void setPosition( int position ); |
170 void setPosition( int position ); |
133 void setShuffle( bool mode ); |
171 void setShuffle( bool mode ); |
134 void setRepeat( bool mode ); |
172 void setRepeat( bool mode ); |
|
173 |
|
174 // Audio Effects related |
|
175 void setBalance( int balance ); |
|
176 void setLoudness( bool mode ); |
|
177 |
|
178 // Equalizer related |
|
179 void handleEqualizerReady(); |
135 |
180 |
136 private: |
181 private: |
|
182 |
|
183 void initialize( TUid hostUid, EngineMode mode); |
137 |
184 |
138 // Harvester related |
185 // Harvester related |
139 void handleUsbMassStorageStartEvent(); |
186 void handleUsbMassStorageStartEvent(); |
140 void handleUsbMassStorageEndEvent(); |
187 void handleUsbMassStorageEndEvent(); |
141 void handleUsbMtpStartEvent(); |
188 void handleUsbMtpStartEvent(); |
143 void handleUsbMtpNotActive(); |
190 void handleUsbMtpNotActive(); |
144 |
191 |
145 void changeUsbBlockingState( UsbBlockingState state ); |
192 void changeUsbBlockingState( UsbBlockingState state ); |
146 void launchBlockingNote(); |
193 void launchBlockingNote(); |
147 void setOutstandingPopup( HbPopup *popup ); |
194 void setOutstandingPopup( HbPopup *popup ); |
148 |
195 |
149 private: |
196 private: |
150 |
197 |
151 Q_DISABLE_COPY( MpEngine ) |
198 Q_DISABLE_COPY( MpEngine ) |
152 |
199 |
153 // Harvesting related |
200 // Harvesting related |
154 MpMpxHarvesterFrameworkWrapper *mMpxHarvesterWrapper; // Own |
201 MpMpxHarvesterFrameworkWrapper *mMpxHarvesterWrapper; // Own |
155 MpSongScanner *mSongScanner; // Own |
|
156 MpMediaKeyHandler *mMediaKeyHandler; // Own |
202 MpMediaKeyHandler *mMediaKeyHandler; // Own |
157 HbPopup *mUsbOutstandingNote; // Own |
203 HbPopup *mUsbOutstandingNote; // Own |
158 |
204 |
159 // Collection related |
205 // Collection related |
160 MpMpxCollectionFrameworkWrapper *mMpxCollectionWrapper; //Own |
206 MpMpxCollectionFrameworkWrapper *mMpxCollectionWrapper; //Own |
161 |
207 |
162 // Playback related |
208 // Playback related |
163 MpMpxPlaybackFrameworkWrapper *mMpxPlaybackWrapper; //Own |
209 MpMpxPlaybackFrameworkWrapper *mMpxPlaybackWrapper; //Own |
|
210 |
|
211 // Details related |
|
212 MpMpxDetailsFrameworkWrapper *mMpxDetailsWrapper; // Own |
|
213 |
|
214 // Audio Effects related |
|
215 MpAudioEffectsFrameworkWrapper *mAudioEffectsWrapper; // Own |
|
216 |
|
217 // Equalizer related |
|
218 MpEqualizerFrameworkWrapper *mEqualizerWrapper; // Own |
|
219 int mCurrentPresetIndex; |
164 |
220 |
165 // General |
221 // General |
166 QTranslator *mMpTranslator; // Own |
222 QTranslator *mMpTranslator; // Own |
167 UsbBlockingState mUsbBlockingState; |
223 UsbBlockingState mUsbBlockingState; |
168 UsbBlockingState mPreviousUsbState; |
224 UsbBlockingState mPreviousUsbState; |
169 MpCommon::MpViewMode mViewMode; |
|
170 TUid mHostUid; |
225 TUid mHostUid; |
171 |
226 MpProgressDialogHandler *mProgressDialogHandler; // Own |
|
227 |
172 }; |
228 }; |
173 |
229 |
174 #endif // MPENGINE_H |
230 #endif // MPENGINE_H |