00001 /***************************************************************************** 00002 * playlist_fetcher.h: 00003 ***************************************************************************** 00004 * Copyright (C) 1999-2008 VLC authors and VideoLAN 00005 * $Id: 348ebc2fd5932c414c7bda5df6ea6f52f0c012a1 $ 00006 * 00007 * Authors: Samuel Hocevar <sam@zoy.org> 00008 * Clément Stenac <zorglub@videolan.org> 00009 * 00010 * This program is free software; you can redistribute it and/or modify it 00011 * under the terms of the GNU Lesser General Public License as published by 00012 * the Free Software Foundation; either version 2.1 of the License, or 00013 * (at your option) any later version. 00014 * 00015 * This program is distributed in the hope that it will be useful, 00016 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00017 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00018 * GNU Lesser General Public License for more details. 00019 * 00020 * You should have received a copy of the GNU Lesser General Public License 00021 * along with this program; if not, write to the Free Software Foundation, 00022 * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. 00023 *****************************************************************************/ 00024 00025 #ifndef _PLAYLIST_FETCHER_H 00026 #define _PLAYLIST_FETCHER_H 1 00027 00028 /** 00029 * Fetcher opaque structure. 00030 * 00031 * The fether object will retreive the art album data for any given input 00032 * item in an asynchronous way. 00033 */ 00034 typedef struct playlist_fetcher_t playlist_fetcher_t; 00035 00036 /** 00037 * This function creates the fetcher object and thread. 00038 */ 00039 playlist_fetcher_t *playlist_fetcher_New( playlist_t * ); 00040 00041 /** 00042 * This function enqueues the provided item to be art fetched. 00043 * 00044 * The input item is retained until the art fetching is done or until the 00045 * fetcher object is destroyed. 00046 */ 00047 void playlist_fetcher_Push( playlist_fetcher_t *, input_item_t * ); 00048 00049 /** 00050 * This function destroys the fetcher object and thread. 00051 * 00052 * All pending input items will be released. 00053 */ 00054 void playlist_fetcher_Delete( playlist_fetcher_t * ); 00055 00056 #endif 00057
1.7.1