|
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 REMCONDATABASEAWAREMEDIABROWSETARGET_H |
|
25 #define REMCONDATABASEAWAREMEDIABROWSETARGET_H |
|
26 |
|
27 #include <e32base.h> |
|
28 #include <remcondatabaseawaremedialibrarybrowse.h> |
|
29 #include <remcondatabaseawaremedialibrarybrowseobserver.h> |
|
30 #include <remcondatabaseawarenowplayingbrowse.h> |
|
31 #include <remcondatabaseawarenowplayingbrowseobserver.h> |
|
32 #include <remcon/remconmediabrowsetargetbase.h> |
|
33 |
|
34 NONSHARABLE_CLASS(CRemConDatabaseAwareMediaBrowseTarget) : public CRemConMediaBrowseTargetBase, |
|
35 private MRemConDatabaseAwareMediaLibraryBrowse, private MRemConDatabaseAwareNowPlayingBrowse |
|
36 { |
|
37 public: |
|
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(); |
|
47 |
|
48 private: |
|
49 // from MRemConDatabaseAwareMediaLibraryBrowse |
|
50 virtual void MrcdamlbDoFolderListing(const TArray<TRemConItem>& aFolderListing, |
|
51 TUint16 aMediaLibraryStateCookie, |
|
52 TUint aResult); |
|
53 |
|
54 virtual void MrcdamlbDoFolderUpResult(TUint aItemCount, TInt aResult); |
|
55 virtual void MrcdamlbDoFolderDownResult(TUint aItemCount, TInt aResult); |
|
56 |
|
57 virtual void MrcdamlbDoGetPathResult(TUint aItemCount, |
|
58 TUint16 aMediaLibraryStateCookie, |
|
59 TInt aResult); |
|
60 |
|
61 virtual void MrcdamlbDoSearchResult(TUint aNumberItemsFound, |
|
62 TUint16 aMediaLibraryStateCookie, |
|
63 TInt aResult); |
|
64 |
|
65 virtual void MrcdamlbDoMediaLibraryStateChange(TUint16 aMediaLibraryStateCookie); |
|
66 |
|
67 virtual void MrcdamlbDoFolderItemResult(const TRemConItemUid& aFolderID, |
|
68 const TDesC8& aFolderName, |
|
69 TFolderItemType aFolderType, |
|
70 TFolderItemPlayable aPlayable, |
|
71 const TArray<TMediaElementAttribute>& aAttributes, |
|
72 TInt aResult); |
|
73 |
|
74 virtual void MrcdamlbDoMediaElementItemResult(const TRemConItemUid& aMediaID, |
|
75 const TDesC8& aMediaName, |
|
76 TMediaItemType aMediaType, |
|
77 const TArray<TMediaElementAttribute>& aAttributes, |
|
78 TInt aResult); |
|
79 |
|
80 // from MRemConDatabaseAwareNowPlayingBrowse |
|
81 virtual void MrcdanpbDoFolderListing(const TArray<TRemConItem>& aFolderListing, |
|
82 TUint16 aMediaLibraryStateCookie, |
|
83 TUint aResult); |
|
84 |
|
85 virtual void MrcdanpbDoMediaElementItemResult(const TRemConItemUid& aMediaID, |
|
86 const TDesC8& aMediaName, |
|
87 TMediaItemType aMediaType, |
|
88 const TArray<TMediaElementAttribute>& aAttributes, |
|
89 TInt aResult); |
|
90 |
|
91 private: |
|
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); |
|
100 }; |
|
101 |
|
102 #endif //REMCONDATABASEAWAREMEDIABROWSETARGET_H |