Songbird / Development / Songbird Add-Ons API Documentation

components/albumart/public/sbIAlbumArtFetcher.idl

00001 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
00002 /* vim: set sw=2 :miv */
00003 /*
00004 //
00005 // BEGIN SONGBIRD GPL
00006 //
00007 // This file is part of the Songbird web player.
00008 //
00009 // Copyright(c) 2005-2008 POTI, Inc.
00010 // http://songbirdnest.com
00011 //
00012 // This file may be licensed under the terms of of the
00013 // GNU General Public License Version 2 (the "GPL").
00014 //
00015 // Software distributed under the License is distributed
00016 // on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either
00017 // express or implied. See the GPL for the specific language
00018 // governing rights and limitations.
00019 //
00020 // You should have received a copy of the GPL along with this
00021 // program. If not, go to http://www.gnu.org/licenses/gpl.html
00022 // or write to the Free Software Foundation, Inc.,
00023 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00024 //
00025 // END SONGBIRD GPL
00026 //
00027 */
00028 
00029 //------------------------------------------------------------------------------
00030 //------------------------------------------------------------------------------
00031 //
00032 // Interface description for the album art fetcher interface.
00033 //
00034 //------------------------------------------------------------------------------
00035 //------------------------------------------------------------------------------
00036 
00037 #include "nsISupports.idl"
00038 
00039 
00047 interface nsIArray;
00048 interface nsIDOMWindow;
00049 interface sbIAlbumArtListener;
00050 interface sbIMediaItem;
00051 
00052 [scriptable, uuid(cb90f244-e008-47c5-a3a1-519e01eb91a7)]
00053 interface sbIAlbumArtFetcher : nsISupports
00054 {
00058   readonly attribute AString shortName;
00059 
00064   readonly attribute AString name;
00065 
00069   readonly attribute AString description;
00070 
00074   readonly attribute boolean isLocal;
00075 
00079   attribute boolean isEnabled;
00080   
00089   attribute PRInt32 priority;
00090 
00094   attribute nsIArray albumArtSourceList;
00095 
00103   void fetchAlbumArtForAlbum(in nsIArray            aMediaItems,
00104                              in sbIAlbumArtListener aListener);
00105 
00106 
00112   void fetchAlbumArtForTrack(in sbIMediaItem         aMediaItem,
00113                              in sbIAlbumArtListener  aListener);
00114   
00115   /* \brief shut down the fetcher
00116    */
00117   void shutdown();
00118 };
00119 
00120 
00121 //
00122 // C++ defs.
00123 //
00124 
00125 %{C++
00126 #define SB_ALBUM_ART_FETCHER_CATEGORY "songbird-album-art-fetcher"
00127 
00128 #define SB_FILEALBUMARTFETCHER_CONTRACTID \
00129           "@songbirdnest.com/Songbird/album-art/file-fetcher;1"
00130 
00131 #define SB_METADATAALBUMARTFETCHER_CONTRACTID \
00132           "@songbirdnest.com/Songbird/album-art/metadata-fetcher;1"
00133 
00134 #define SB_LASTFMALBUMARTFETCHER_CONTRACTID \
00135           "@songbirdnest.com/Songbird/album-art/lastfm-fetcher;1"
00136 %}C++
00137 

Generated on Tue Mar 10 14:28:54 2009 for Songbird by  doxygen 1.5.2