Audacious  $Id:Doxyfile42802007-03-2104:39:00Znenolod$
drct-api.h
Go to the documentation of this file.
00001 /*
00002  * drct-api.h
00003  * Copyright 2010-2011 John Lindgren
00004  *
00005  * This file is part of Audacious.
00006  *
00007  * Audacious is free software: you can redistribute it and/or modify it under
00008  * the terms of the GNU General Public License as published by the Free Software
00009  * Foundation, version 2 or version 3 of the License.
00010  *
00011  * Audacious is distributed in the hope that it will be useful, but WITHOUT ANY
00012  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
00013  * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU General Public License along with
00016  * Audacious. If not, see <http://www.gnu.org/licenses/>.
00017  *
00018  * The Audacious team does not consider modular code linking to Audacious or
00019  * using our public API to be a derived work.
00020  */
00021 
00022 /* Do not include this file directly; use drct.h instead. */
00023 
00024 /* CAUTION: These functions are not thread safe. */
00025 
00026 /* --- PROGRAM CONTROL --- */
00027 
00028 AUD_VFUNC0 (drct_quit)
00029 
00030 /* --- PLAYBACK CONTROL --- */
00031 
00032 /* The strings returned by drct_get_filename() and drct_get_title() are pooled
00033  * and must be freed with str_unref(). */
00034 
00035 AUD_VFUNC0 (drct_play)
00036 AUD_VFUNC0 (drct_pause)
00037 AUD_VFUNC0 (drct_stop)
00038 AUD_FUNC0 (bool_t, drct_get_playing)
00039 AUD_FUNC0 (bool_t, drct_get_ready)
00040 AUD_FUNC0 (bool_t, drct_get_paused)
00041 AUD_FUNC0 (char *, drct_get_filename)
00042 AUD_FUNC0 (char *, drct_get_title)
00043 AUD_VFUNC3 (drct_get_info, int *, bitrate, int *, samplerate, int *, channels)
00044 AUD_FUNC0 (int, drct_get_time)
00045 AUD_FUNC0 (int, drct_get_length)
00046 AUD_VFUNC1 (drct_seek, int, time)
00047 
00048 /* --- VOLUME CONTROL --- */
00049 
00050 AUD_VFUNC2 (drct_get_volume, int *, left, int *, right)
00051 AUD_VFUNC2 (drct_set_volume, int, left, int, right)
00052 AUD_VFUNC1 (drct_get_volume_main, int *, volume)
00053 AUD_VFUNC1 (drct_set_volume_main, int, volume)
00054 AUD_VFUNC1 (drct_get_volume_balance, int *, balance)
00055 AUD_VFUNC1 (drct_set_volume_balance, int, balance)
00056 
00057 /* --- PLAYLIST CONTROL --- */
00058 
00059 /* The indexes passed to drct_pl_add_list(), drct_pl_open_list(), and
00060  * drct_pl_open_temp_list() contain pooled strings to which the caller gives up
00061  * one reference.  The indexes themselves are freed by these functions. */
00062 
00063 AUD_VFUNC0 (drct_pl_next)
00064 AUD_VFUNC0 (drct_pl_prev)
00065 
00066 AUD_VFUNC2 (drct_pl_add, const char *, filename, int, at)
00067 AUD_VFUNC2 (drct_pl_add_list, Index *, filenames, int, at)
00068 AUD_VFUNC1 (drct_pl_open, const char *, filename)
00069 AUD_VFUNC1 (drct_pl_open_list, Index *, filenames)
00070 AUD_VFUNC1 (drct_pl_open_temp, const char *, filename)
00071 AUD_VFUNC1 (drct_pl_open_temp_list, Index *, filenames)
00072 
00073 AUD_VFUNC1 (drct_pl_delete_selected, int, playlist)