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".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
24 #ifndef REMCONDATABASEAWAREMEDIABROWSETARGET_H
25 #define REMCONDATABASEAWAREMEDIABROWSETARGET_H
28 #include <remcondatabaseawaremedialibrarybrowse.h>
29 #include <remcondatabaseawaremedialibrarybrowseobserver.h>
30 #include <remcondatabaseawarenowplayingbrowse.h>
31 #include <remcondatabaseawarenowplayingbrowseobserver.h>
32 #include <remcon/remconmediabrowsetargetbase.h>
34 NONSHARABLE_CLASS(CRemConDatabaseAwareMediaBrowseTarget) : public CRemConMediaBrowseTargetBase,
35 private MRemConDatabaseAwareMediaLibraryBrowse, private MRemConDatabaseAwareNowPlayingBrowse
38 IMPORT_C static CRemConDatabaseAwareMediaBrowseTarget* NewL(
39 CRemConInterfaceSelector& aInterfaceSelector,
40 MRemConDatabaseAwareMediaLibraryBrowseObserver& aMlObserver,
41 MRemConDatabaseAwareNowPlayingBrowseObserver& aNpObserver,
42 TBool aSearchSupported,
43 MRemConDatabaseAwareMediaLibraryBrowse*& aMlInterface,
44 MRemConDatabaseAwareNowPlayingBrowse*& aNpInterface,
45 TUint16 aMediaLibraryStateCookie);
46 virtual ~CRemConDatabaseAwareMediaBrowseTarget();
49 // from MRemConDatabaseAwareMediaLibraryBrowse
50 virtual void MrcdamlbDoFolderListing(const TArray<TRemConItem>& aFolderListing,
51 TUint16 aMediaLibraryStateCookie,
54 virtual void MrcdamlbDoFolderUpResult(TUint aItemCount, TInt aResult);
55 virtual void MrcdamlbDoFolderDownResult(TUint aItemCount, TInt aResult);
57 virtual void MrcdamlbDoGetPathResult(TUint aItemCount,
58 TUint16 aMediaLibraryStateCookie,
61 virtual void MrcdamlbDoSearchResult(TUint aNumberItemsFound,
62 TUint16 aMediaLibraryStateCookie,
65 virtual void MrcdamlbDoMediaLibraryStateChange(TUint16 aMediaLibraryStateCookie);
67 virtual void MrcdamlbDoFolderItemResult(const TRemConItemUid& aFolderID,
68 const TDesC8& aFolderName,
69 TFolderItemType aFolderType,
70 TFolderItemPlayable aPlayable,
71 const TArray<TMediaElementAttribute>& aAttributes,
74 virtual void MrcdamlbDoMediaElementItemResult(const TRemConItemUid& aMediaID,
75 const TDesC8& aMediaName,
76 TMediaItemType aMediaType,
77 const TArray<TMediaElementAttribute>& aAttributes,
80 // from MRemConDatabaseAwareNowPlayingBrowse
81 virtual void MrcdanpbDoFolderListing(const TArray<TRemConItem>& aFolderListing,
82 TUint16 aMediaLibraryStateCookie,
85 virtual void MrcdanpbDoMediaElementItemResult(const TRemConItemUid& aMediaID,
86 const TDesC8& aMediaName,
87 TMediaItemType aMediaType,
88 const TArray<TMediaElementAttribute>& aAttributes,
92 CRemConDatabaseAwareMediaBrowseTarget(
93 CRemConInterfaceSelector& aInterfaceSelector,
94 MRemConDatabaseAwareMediaLibraryBrowseObserver& aMlObserver,
95 MRemConDatabaseAwareNowPlayingBrowseObserver& aNpObserver,
96 MRemConDatabaseAwareMediaLibraryBrowse*& aMlInterface,
97 MRemConDatabaseAwareNowPlayingBrowse*& aNpInterface,
98 TUint16 aMediaLibraryStateCookie);
99 void ConstructL(TBool aSearchSupported);
102 #endif //REMCONDATABASEAWAREMEDIABROWSETARGET_H