27 #ifndef __SB_ALBUMARTFETCHERSET_H__
28 #define __SB_ALBUMARTFETCHERSET_H__
50 #include <sbIAlbumArtFetcherSet.h>
51 #include <sbIAlbumArtService.h>
52 #include <sbIAlbumArtListener.h>
53 #include <sbIMediaItem.h>
57 #include <nsIConsoleService.h>
59 #include <nsIMutableArray.h>
60 #include <nsIThreadManager.h>
74 #define SB_ALBUMARTFETCHERSET_CLASSNAME "sbAlbumArtFetcherSet"
75 #define SB_ALBUMARTFETCHERSET_CID \
81 { 0xbb, 0xd7, 0x34, 0x8a, 0x44, 0x7c, 0x78, 0x4f } \
85 #define ALBUMART_SCANNER_TIMEOUT 10000
88 #define PREF_ALBUMART_SCANNER_BRANCH "songbird.albumart.scanner."
89 #define PREF_ALBUMART_SCANNER_TIMEOUT "timeout"
118 NS_DECL_SBIALBUMARTFETCHER
119 NS_DECL_SBIALBUMARTFETCHERSET
120 NS_DECL_NSITIMERCALLBACK
121 NS_DECL_SBIALBUMARTLISTENER
153 nsCOMPtr<sbIAlbumArtService> mAlbumArtService;
154 nsCOMPtr<nsIThreadManager> mThreadManager;
155 nsCOMPtr<nsIConsoleService> mConsoleService;
156 nsCOMPtr<nsIArray> mAlbumArtSourceList;
165 nsCOMPtr<sbIAlbumArtListener> mListener;
174 nsCOMPtr<nsIArray> mFetcherList;
175 PRUint32 mFetcherIndex;
176 nsCOMPtr<sbIAlbumArtFetcher> mFetcher;
177 nsCOMPtr<nsIArray> mMediaItems;
183 nsCOMPtr<nsITimer> mTimeoutTimer;
184 PRInt32 mTimeoutTimerValue;
191 PRBool mFoundAllArtwork;
197 nsresult CheckLocalImage(nsIURI* aImageLocation);
199 nsresult TryNextFetcher();
201 nsresult NextFetcher();
205 #endif // __SB_ALBUMARTFETCHERSET_H__
NS_DECL_ISUPPORTS NS_DECL_SBIALBUMARTFETCHER NS_DECL_SBIALBUMARTFETCHERSET NS_DECL_NSITIMERCALLBACK NS_DECL_SBIALBUMARTLISTENER sbAlbumArtFetcherSet()
A component which is interested in the result of an album art fetch request.
virtual ~sbAlbumArtFetcherSet()
Interface for an album art fetcher set. Instantiate as a component instance.