annotate src/xs_stil.h @ 509:81756f412b43

Changes based on patch from Heikki 'shd' Orsila: Fix a crash on 64-bit big-endian platforms due to inproper mixing of guint and size_t types; Use bsearch() instead of my own implementation of binary search in xs_length.c and xs_stil.c; Remove useless(?) use of feof().
author Matti Hamalainen <ccr@tnsp.org>
date Sun, 28 Jan 2007 15:09:04 +0000
parents f1a997715ef5
children fa95d942f226
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
392
b09d74eb71e6 Working on getting STIL and SLDB using completely dynamically allocated
Matti Hamalainen <ccr@tnsp.org>
parents: 330
diff changeset
1 #ifndef _XS_STIL_H
b09d74eb71e6 Working on getting STIL and SLDB using completely dynamically allocated
Matti Hamalainen <ccr@tnsp.org>
parents: 330
diff changeset
2 #define _XS_STIL_H
66
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
3
214
575686094eb1 Portability fixes
Matti Hamalainen <ccr@tnsp.org>
parents: 117
diff changeset
4 #include "xmms-sid.h"
575686094eb1 Portability fixes
Matti Hamalainen <ccr@tnsp.org>
parents: 117
diff changeset
5
66
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
6 #ifdef __cplusplus
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
7 extern "C" {
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
8 #endif
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
9
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
10 /*
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
11 * Defines and typedefs
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
12 */
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
13 typedef struct {
94
086681f70910 Start of re-write of STIL-support
Matti Hamalainen <ccr@tnsp.org>
parents: 66
diff changeset
14 gchar *pName,
109
578b71b62eeb Fileinfo now basically working, STIL COMMENT-fields are not yet parsed or shown.
Matti Hamalainen <ccr@tnsp.org>
parents: 94
diff changeset
15 *pAuthor,
473
f1a997715ef5 Cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents: 461
diff changeset
16 *pTitle,
117
453ac1293f6a Fixed severe bug in xs_strmcat()
Matti Hamalainen <ccr@tnsp.org>
parents: 109
diff changeset
17 *pInfo;
66
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
18 } t_xs_stil_subnode;
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
19
392
b09d74eb71e6 Working on getting STIL and SLDB using completely dynamically allocated
Matti Hamalainen <ccr@tnsp.org>
parents: 330
diff changeset
20
66
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
21 typedef struct _t_xs_stil_node {
94
086681f70910 Start of re-write of STIL-support
Matti Hamalainen <ccr@tnsp.org>
parents: 66
diff changeset
22 gchar *pcFilename;
392
b09d74eb71e6 Working on getting STIL and SLDB using completely dynamically allocated
Matti Hamalainen <ccr@tnsp.org>
parents: 330
diff changeset
23 gint nsubTunes;
b09d74eb71e6 Working on getting STIL and SLDB using completely dynamically allocated
Matti Hamalainen <ccr@tnsp.org>
parents: 330
diff changeset
24 t_xs_stil_subnode **subTunes;
b09d74eb71e6 Working on getting STIL and SLDB using completely dynamically allocated
Matti Hamalainen <ccr@tnsp.org>
parents: 330
diff changeset
25
94
086681f70910 Start of re-write of STIL-support
Matti Hamalainen <ccr@tnsp.org>
parents: 66
diff changeset
26 struct _t_xs_stil_node *pPrev, *pNext;
66
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
27 } t_xs_stil_node;
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
28
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
29
227
92bad4c7b998 Improved modularization of STIL and song-length database subsystems.
Matti Hamalainen <ccr@tnsp.org>
parents: 214
diff changeset
30 typedef struct {
92bad4c7b998 Improved modularization of STIL and song-length database subsystems.
Matti Hamalainen <ccr@tnsp.org>
parents: 214
diff changeset
31 t_xs_stil_node *pNodes,
92bad4c7b998 Improved modularization of STIL and song-length database subsystems.
Matti Hamalainen <ccr@tnsp.org>
parents: 214
diff changeset
32 **ppIndex;
509
81756f412b43 Changes based on patch from Heikki 'shd' Orsila: Fix a crash on 64-bit
Matti Hamalainen <ccr@tnsp.org>
parents: 473
diff changeset
33 size_t n;
227
92bad4c7b998 Improved modularization of STIL and song-length database subsystems.
Matti Hamalainen <ccr@tnsp.org>
parents: 214
diff changeset
34 } t_xs_stildb;
92bad4c7b998 Improved modularization of STIL and song-length database subsystems.
Matti Hamalainen <ccr@tnsp.org>
parents: 214
diff changeset
35
92bad4c7b998 Improved modularization of STIL and song-length database subsystems.
Matti Hamalainen <ccr@tnsp.org>
parents: 214
diff changeset
36
66
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
37 /*
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
38 * Functions
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
39 */
227
92bad4c7b998 Improved modularization of STIL and song-length database subsystems.
Matti Hamalainen <ccr@tnsp.org>
parents: 214
diff changeset
40 gint xs_stildb_read(t_xs_stildb *, gchar *);
92bad4c7b998 Improved modularization of STIL and song-length database subsystems.
Matti Hamalainen <ccr@tnsp.org>
parents: 214
diff changeset
41 gint xs_stildb_index(t_xs_stildb *);
92bad4c7b998 Improved modularization of STIL and song-length database subsystems.
Matti Hamalainen <ccr@tnsp.org>
parents: 214
diff changeset
42 void xs_stildb_free(t_xs_stildb *);
461
a1224c1f8670 STILdb handling glue moved to xmms-sid.c
Matti Hamalainen <ccr@tnsp.org>
parents: 392
diff changeset
43 t_xs_stil_node * xs_stildb_get_node(t_xs_stildb *, gchar *);
66
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
44
230
608f31f6c095 Raw cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents: 227
diff changeset
45
66
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
46 #ifdef __cplusplus
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
47 }
debb9584f638 Re-added header
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
48 #endif
392
b09d74eb71e6 Working on getting STIL and SLDB using completely dynamically allocated
Matti Hamalainen <ccr@tnsp.org>
parents: 330
diff changeset
49 #endif /* _XS_STIL_H */