epoc32/include/mw/remcondatabaseunawarenowplayingbrowseobserver.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     1 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 //
    15 
    16 
    17 
    18 /**
    19  @file
    20  @publishedAll
    21  @released
    22 */
    23 
    24 #ifndef REMCONDATABASEUNAWARENOWPLAYINGBROWSEOBSERVER_H
    25 #define REMCONDATABASEUNAWARENOWPLAYINGBROWSEOBSERVER_H
    26 
    27 NONSHARABLE_CLASS(MRemConDatabaseUnawareNowPlayingBrowseObserver)
    28 	{
    29 public:
    30 	/**
    31 	Requests a listing of the items present in the Now Playing folder. If the 
    32 	media player does not natively support a Now Plyaing folder the client
    33 	shall return a listing of one item which is the currently playing media 
    34 	element.
    35 	
    36 	No metadata is requested, that can be retrieved separately on a per item 
    37 	basis. Trying this out for now as it fits in with the existing metadata 
    38 	attribute collection, and means that we would also separate out the 
    39 	listing from the metadata. This means that we can retrieve a NowPlaying 
    40 	list and then request the metadata from the observer.
    41 	
    42 	The result should be returned via a call to 
    43 	MRemConDatabaseUnawareNowPlayingBrowse::MrcdunpbFolderListing().
    44 	
    45 	@param aStartItem The offset into the folder listing of the first item to 
    46 	       retrieve. If there is no media available at this offset the error 
    47 	       KErrMediaBrowseInvalidOffset should be returned via the result call
    48 	       to MrcdunpbFolderListing().
    49 	
    50 	@param aEndItem The offset into the folder listing of the final item to 
    51 	       retrieve. If this is beyond the end of the folder listing then the 
    52 	       items from the aStartItem offset to the end of the listing should 
    53 	       be returned via the result call to MrcdunpbFolderListing().
    54 	*/
    55 	virtual void MrcdunpboGetFolderListing(TUint aStartItem, 
    56 			TUint aEndItem) = 0;
    57 	
    58 	/**
    59 	Requests a set of metadata corresponding to a specific media element item. 
    60 	 
    61 	The client must return the metadata for the requested item via using 
    62 	MRemConDatabaseUnawareNowPlayingBrowse::MrcdunpbMediaElementItemResult()
    63 	if it returns KErrNone, if it is unable to process this call then it can
    64 	return error but not call the response function 
    65 	MRemConDatabaseUnawareNowPlayingBrowse::MrcdunpbMediaElementItemResult(). 
    66 	
    67 	@param aItemId The UID for the requested media element item.
    68 	
    69 	@param aIter An iterator for TMediaAttributeIds containing a list of 
    70 	       TMediaAttributeIds requested by the controller.
    71 			    
    72 	@return The call back result.
    73 	      - KErrNone If success.
    74 	      - The appropriate error code.
    75 	*/
    76 	virtual TInt MrcdunpboGetItem(const TRemConItemUid& aItemId, 
    77 			TMediaAttributeIter& aIter) = 0;
    78 	};
    79 
    80 #endif //REMCONDATABASEUNAWARENOWPLAYINGBROWSEOBSERVER_H