annotate Plugins/Input/console/Audacious_Driver.cpp @ 94:2801eda0683f trunk

[svn] Some routines here. Hehe.
author nenolod
date Tue, 01 Nov 2005 20:45:32 -0800
parents 252843aac42f
children 8247bbf454a8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
90
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
1 /*
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
2 * Audacious: Cross platform multimedia player
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
3 * Copyright (c) 2005 Audacious Team
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
4 *
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
5 * Driver for Game_Music_Emu library. See details at:
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
6 * http://www.slack.net/~ant/libs/
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
7 */
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
8
94
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
9 #include "Audacious_Driver.h"
90
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
10
94
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
11 #include "libaudacious/configfile.h"
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
12 #include "libaudacious/util.h"
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
13 #include "libaudacious/titlestring.h"
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
14 #include <gtk/gtk.h>
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
15
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
16 #include <cstring>
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
17
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
18 static Spc_Emu *spc = NULL;
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
19 static GThread decode_thread;
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
20
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
21 static int is_our_file(gchar *filename)
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
22 {
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
23 gchar *ext;
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
24
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
25 ext = strrchr(filename, '.');
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
26
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
27 if (ext)
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
28 {
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
29 if (!strcasecmp(ext, ".spc"))
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
30 return 1;
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
31 }
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
32
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
33 return 0;
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
34 }
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
35
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
36 static gchar *get_title(gchar *filename)
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
37 {
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
38 TitleInput *input;
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
39 gchar *title;
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
40 Emu_Std_Reader reader;
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
41 Spc_Emu::header_t header;
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
42
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
43 reader.open(filename);
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
44 reader.read(&header, sizeof(header));
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
45
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
46 title = g_strdup(header.song);
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
47
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
48 return title;
2801eda0683f [svn] Some routines here. Hehe.
nenolod
parents: 90
diff changeset
49 }