videocollection/mpxmyvideoscollection/inc/vcxmyvideosalbums.h
changeset 35 3738fe97f027
parent 34 bbb98528c666
child 36 8aed59de29f9
equal deleted inserted replaced
34:bbb98528c666 35:3738fe97f027
   131          * @param aMdsIds    Album MDS ID to be removed.
   131          * @param aMdsIds    Album MDS ID to be removed.
   132          * @param aCompress  If ETrue, then iAlbums is compressed,
   132          * @param aCompress  If ETrue, then iAlbums is compressed,
   133          *                   otherwise not.
   133          *                   otherwise not.
   134          * @return           ETrue if album was found and removed.
   134          * @return           ETrue if album was found and removed.
   135          */
   135          */
   136         TBool RemoveAlbum( TUint32 aMdsId, TBool aCompress );
   136         TBool RemoveAlbumL( TUint32 aMdsId, TBool aCompress );
   137         
   137         
   138         /**
   138         /**
   139          * Fetches albums from MDS. This is called from MDS insert event.
   139          * Fetches albums from MDS. This is called from MDS insert event.
   140          * 
   140          * 
   141          * @param aAlbumIds  Album IDs to fetch.
   141          * @param aAlbumIds  Album IDs to fetch.
   142          */
   142          */
   143         void AddAlbumsFromMdsL( RArray<TUint32>& aAlbumIds );
   143         void AddAlbumsFromMdsL( RArray<TUint32>& aAlbumIds );
   144 
   144 
       
   145         /**
       
   146          * Updates albums from MDS. This is called from MDS modify event.
       
   147          * 
       
   148          * @param aAlbumIds  Album IDs to update.
       
   149          */
       
   150         void UpdateAlbumsFromMdsL( RArray<TUint32>& aAlbumIds );
       
   151 
       
   152         /**
       
   153          * Updates album attributes, does not write to MDS. Adds
       
   154          * modify event to iCollection.iMessageList if necessarry.
       
   155          * 
       
   156          * @param aAlbum  New values are read from this.
       
   157          * @return        ETrue if album was modified, EFalse otherwise.
       
   158          */
       
   159         TBool UpdateAlbumL( const CMPXMedia& aAlbum );
       
   160 
       
   161 protected:
       
   162         
   145         /**
   163         /**
   146          * From MVcxMyVideosMdsAlbumsObserver.
   164          * From MVcxMyVideosMdsAlbumsObserver.
   147          * Process albums arriving from MDS. Response to VcxMyVideosMdsAlbums::GetAlbumsL.
   165          * Process albums arriving from MDS. Response to VcxMyVideosMdsAlbums::GetAlbumsL.
   148          */
   166          */
   149         void HandleGetAlbumsRespL( CMPXMedia* aAlbumList );
   167         void HandleGetAlbumsRespL( CMPXMedia* aAlbumList );
   222          * From MVcxMyVideosMdsAlbumsObserver.
   240          * From MVcxMyVideosMdsAlbumsObserver.
   223          * Relation events from MDS. This object is set as an observer at
   241          * Relation events from MDS. This object is set as an observer at
   224          * iCollection.ConstructL, CVcxMyVideosMdsDb::NewL(..,aAlbumsObserver,..).
   242          * iCollection.ConstructL, CVcxMyVideosMdsDb::NewL(..,aAlbumsObserver,..).
   225          */
   243          */
   226         void HandleRelationEvent( TObserverNotificationType aType,
   244         void HandleRelationEvent( TObserverNotificationType aType,
   227                 const RArray<TMdERelation>& aRelationArray );    
   245                 const RArray<TMdERelation>& aRelationArray );
       
   246         
   228     private:
   247     private:
   229 
   248 
   230         /**
   249         /**
   231          * Fills in iAlbums array. This is called when iAlbumList is ready.
   250          * Fills in iAlbums array. This is called when iAlbumList is ready.
   232          * Pointers to CVcxMyVideosVideoCache::iVideoList are not filled
   251          * Pointers to CVcxMyVideosVideoCache::iVideoList are not filled
   281          * Used in MDS operations to store MDS video (or relation) IDs.
   300          * Used in MDS operations to store MDS video (or relation) IDs.
   282          */
   301          */
   283         RArray<TUint32> iMdsOpTargetIds;
   302         RArray<TUint32> iMdsOpTargetIds;
   284         
   303         
   285         /**
   304         /**
   286          * Store album video data during relation deletion. This is to
   305          * Stores album video data during relation deletion. This is to
   287          * avoid second search when resp arrives.
   306          * avoid second search when resp arrives.
   288          */
   307          */
   289         RArray<TVcxMyVideosAlbumVideo> iRemoveFromAlbumVideos;
   308         RArray<TVcxMyVideosAlbumVideo> iRemoveFromAlbumVideos;
   290         
   309         
   291         /**
   310         /**