view src/xs_stil.h @ 392:b09d74eb71e6

Working on getting STIL and SLDB using completely dynamically allocated structures. Indentation cleanups, etc.
author Matti Hamalainen <ccr@tnsp.org>
date Wed, 31 May 2006 10:02:00 +0000
parents e0abd282d6b7
children a1224c1f8670
line wrap: on
line source

#ifndef _XS_STIL_H
#define _XS_STIL_H

#include "xmms-sid.h"

#ifdef __cplusplus
extern "C" {
#endif

/*
 * Defines and typedefs
 */
typedef struct {
	gchar	*pName,
		*pAuthor,
		*pInfo;
} t_xs_stil_subnode;


typedef struct _t_xs_stil_node {
	gchar			*pcFilename;
	gint			nsubTunes;
	t_xs_stil_subnode	**subTunes;
	
	struct _t_xs_stil_node	*pPrev, *pNext;
} t_xs_stil_node;


typedef struct {
	t_xs_stil_node	*pNodes,
			**ppIndex;
	gint		n;
} t_xs_stildb;


/*
 * Functions
 */
gint			xs_stildb_read(t_xs_stildb *, gchar *);
gint			xs_stildb_index(t_xs_stildb *);
void			xs_stildb_free(t_xs_stildb *);
t_xs_stil_node *	xs_stildb_get(t_xs_stildb *, gchar *, gchar *);


gint			xs_stil_init(void);
void			xs_stil_close(void);
t_xs_stil_node *	xs_stil_get(gchar *);

#ifdef __cplusplus
}
#endif
#endif /* _XS_STIL_H */