annotate audacious/input.h @ 1928:0645603bf92a trunk

[svn] - pretty sure you meant this
author nenolod
date Mon, 30 Oct 2006 14:26:30 -0800
parents 705d4c089fce
children f18a5b617c34
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
1 /* BMP - Cross-platform multimedia player
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
2 * Copyright (C) 2003-2004 BMP development team.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
3 *
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
4 * Based on XMMS:
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
5 * Copyright (C) 1998-2003 XMMS development team.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
6 *
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
10 * (at your option) any later version.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
11 *
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
15 * GNU General Public License for more details.
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
16 *
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
18 * along with this program; if not, write to the Free Software
1459
705d4c089fce [svn] Fix postal code.
chainsaw
parents: 1458
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
20 */
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
21
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
22 #ifndef INPUT_H
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
23 #define INPUT_H
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
24
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
25 #include "plugin.h"
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
26
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
27 typedef struct _InputPluginData InputPluginData;
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
28
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
29 struct _InputPluginData {
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
30 GList *input_list;
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
31 InputPlugin *current_input_plugin;
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
32 gboolean playing;
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
33 gboolean paused;
890
ed26947bbf57 [svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents: 355
diff changeset
34 gboolean stop;
1273
3b990c26fc46 [svn] - Support for the buffer indicator in playpaus.png that was apparently
nhjm449
parents: 1231
diff changeset
35 gboolean buffering;
143
32c320bba8a6 [svn] Mutex system
nenolod
parents: 0
diff changeset
36 GMutex *playback_mutex;
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
37 };
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
38
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
39 GList *get_input_list(void);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
40 InputPlugin *get_current_input_plugin(void);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
41 void set_current_input_plugin(InputPlugin * ip);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
42 InputVisType input_get_vis_type();
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
43 void free_vis_data(void);
355
1c701dfe5098 [svn] Cache the decoder used for each PlaylistEntry. This reduces the amount
nenolod
parents: 143
diff changeset
44 InputPlugin *input_check_file(const gchar * filename, gboolean show_warning);
1231
502b369314c1 [svn] - InputPlugin class:
nenolod
parents: 890
diff changeset
45 TitleInput *input_get_song_tuple(const gchar * filename);
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
46 void input_play(gchar * filename);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
47 void input_stop(void);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
48 void input_pause(void);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
49 gint input_get_time(void);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
50 void input_set_eq(gint on, gfloat preamp, gfloat * bands);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
51 void input_seek(gint time);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
52 void input_get_song_info(const gchar * filename, gchar ** title,
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
53 gint * length);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
54 guchar *input_get_vis(gint time);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
55 void input_update_vis_plugin(gint time);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
56 gchar *input_get_info_text(void);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
57 void input_about(gint index);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
58 void input_configure(gint index);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
59 void input_add_vis(gint time, guchar * s, InputVisType type);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
60 void input_add_vis_pcm(gint time, AFormat fmt, gint nch, gint length,
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
61 gpointer ptr);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
62 InputVisType input_get_vis_type();
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
63 void input_update_vis(gint time);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
64
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
65 void input_set_info_text(const gchar * text);
1273
3b990c26fc46 [svn] - Support for the buffer indicator in playpaus.png that was apparently
nhjm449
parents: 1231
diff changeset
66 void input_set_status_buffering(gboolean status);
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
67
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
68 GList *input_scan_dir(const gchar * dir);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
69 void input_get_volume(gint * l, gint * r);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
70 void input_set_volume(gint l, gint r);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
71 void input_file_info_box(const gchar * filename);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
72
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
73 void input_file_not_playable(const gchar * filename);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
74 gboolean input_is_disabled(const gchar * filename);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
75 gboolean input_is_enabled(const gchar * filename);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
76 gchar *input_stringify_disabled_list(void);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
77
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
78 extern InputPluginData ip_data;
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
79 extern gchar *input_info_text;
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
80
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
81
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
82 #endif