mpdata/inc/mpmpxcollectiondata_p.h
changeset 32 c163ef0b758d
parent 29 8192e5b5c935
child 51 560ce2306a17
--- a/mpdata/inc/mpmpxcollectiondata_p.h	Thu May 27 12:49:57 2010 +0300
+++ b/mpdata/inc/mpmpxcollectiondata_p.h	Fri Jun 11 13:36:36 2010 +0300
@@ -46,10 +46,11 @@
     bool isAutoPlaylist( int index );
     int itemCount( int index );
     int containerId();
-    int itemId(int index);
-    void removeItem(int index);
+    int itemId( int index);
+    int albumSongId( int index);
+    void removeItem( int index);
     bool testCachedItem( int itemId );
-    void insertCachedItem(int index);
+    void insertCachedItem( int index);
 
     bool setCurrentAlbum( int index );
     int currentAlbumIndex() const;
@@ -61,15 +62,18 @@
     void setContext( TCollectionContext context );
     void setAlbumContent( const CMPXMedia& albumContent );
     int itemIndex( int itemUniqueId );
+    int albumSongIndex( int songUniqueId );
 
 private:
-
+    void loadAlbumsLookup();
+    void loadAlbumSongsLookup();
     void DoGetDataL( int index, MpMpxCollectionData::DataType type, QString& data ) const;
     bool DoIsAutoPlaylistL();
     bool DoIsAutoPlaylistL( int index );
     int DoGetItemCountL( int index );
     int DoGetContainerIdL();
     int DoGetItemIdL( int index );
+    int DoGetAlbumSongIdL( int index );
     void DoRemoveItemL( int index );
     bool DoTestCachedItemL( int itemId );
 
@@ -93,6 +97,7 @@
     int                     iCurrentAlbumIndex;
     int                     iAlbumSongCount;
     QHash<int, int>         albumIdIndexMapping;
+    QHash<int, int>         albumSongIdIndexMapping;
 
 };