epoc32/include/mw/remconmediainformationtargetobserver.h
branchSymbian3
changeset 4 837f303aceeb
parent 3 e1b950c65cb4
equal deleted inserted replaced
3:e1b950c65cb4 4:837f303aceeb
     1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     7 //
     8 // Initial Contributors:
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
     9 // Nokia Corporation - initial contribution.
    10 //
    10 //
    11 // Contributors:
    11 // Contributors:
    12 //
    12 //
    13 // Description:
    13 // Description:
    14 //
    14 //
    15 
       
    16 
       
    17 
    15 
    18 /**
    16 /**
    19  @file
    17  @file
    20  @publishedAll
    18  @publishedAll
    21  @released
    19  @released
    23 
    21 
    24 #ifndef REMCONMEDIAINFORMATIONTARGETOBSERVER_H
    22 #ifndef REMCONMEDIAINFORMATIONTARGETOBSERVER_H
    25 #define REMCONMEDIAINFORMATIONTARGETOBSERVER_H
    23 #define REMCONMEDIAINFORMATIONTARGETOBSERVER_H
    26 
    24 
    27 #include <e32base.h>
    25 #include <e32base.h>
    28 
    26 #include <remconmediaattributeid.h>
    29 enum TMediaAttributeId
       
    30 	{
       
    31 	ETitleOfMedia 			=0x1,
       
    32 	ENameOfArtist			=0x2,
       
    33 	ENameOfAlbum			=0x3,
       
    34 	ETrackNumber			=0x4,		/* for example the CD track number */
       
    35 	ENumberOfTracks			=0x5,		/* for example the total track number of the CD */
       
    36 	EGenre					=0x6,
       
    37 	EPlayingTime			=0x7
       
    38 	};
       
    39 
       
    40 /**
       
    41  * Provide an iterator wrapper class 
       
    42  */
       
    43 class TMediaAttributeIter
       
    44 	{
       
    45 public:
       
    46 	TMediaAttributeIter(RArray<TMediaAttributeId>& aMediaAttributeIDs);
       
    47 	IMPORT_C void Start();
       
    48 	IMPORT_C TBool Next(TMediaAttributeId& aId);
       
    49 	
       
    50 private:
       
    51 	RArray<TMediaAttributeId>& iMediaAttributeIDs;
       
    52 	TInt iterator;
       
    53 	};
       
    54 
       
    55 
    27 
    56 /**
    28 /**
    57 Clients must implement this interface in order to instantiate objects of type 
    29 Clients must implement this interface in order to instantiate objects of type 
    58 CRemConMediaInformationTarget. This interface passes incoming commands from RemCon to 
    30 CRemConMediaInformationTarget. This interface passes incoming commands from RemCon to 
    59 the client. 
    31 the client. 
    64 
    36 
    65 	/**
    37 	/**
    66 	For each element in aAttributeList for which the requested Metadata is available,
    38 	For each element in aAttributeList for which the requested Metadata is available,
    67 	the client shall respond by calling CRemConMediaInformationTarget::AttributeValue(). 
    39 	the client shall respond by calling CRemConMediaInformationTarget::AttributeValue(). 
    68 	After all attributes have been supplied the client shall call CRemConMediaInformationTarget::Completed().
    40 	After all attributes have been supplied the client shall call CRemConMediaInformationTarget::Completed().
    69 	@param aAttributeList A CMediaAttributeIDs containing a list of TMediaAttributeIds requested by the controller
    41 	@param aAttributeIter A CMediaAttributeIDs containing a list of TMediaAttributeIds requested by the controller
    70 	@see CRemConMediaInformationTarget::AttributeValue()
    42 	@see CRemConMediaInformationTarget::AttributeValue()
    71 	@see CRemConMediaInformationTarget::Completed()
    43 	@see CRemConMediaInformationTarget::Completed()
    72 	*/
    44 	*/
    73 	virtual void MrcmitoGetCurrentlyPlayingMetadata( TMediaAttributeIter& aAttributeIter ) = 0;
    45 	virtual void MrcmitoGetCurrentlyPlayingMetadata( TMediaAttributeIter& aAttributeIter ) = 0;
    74 
    46