Mercurial > hg > xmms-sid
diff src/xs_player.h @ 526:fa95d942f226
Header cleanup; Moved some types from xmms-sid.h to xs_player.h; Renamed few functions.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 20 Feb 2007 16:53:05 +0000 |
parents | |
children | eafcd84a8c59 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/xs_player.h Tue Feb 20 16:53:05 2007 +0000 @@ -0,0 +1,59 @@ +#ifndef XS_PLAYER_H +#define XS_PLAYER_H + +#include "xmms-sid.h" +#include "xs_config.h" + +#ifdef __cplusplus +extern "C" { +#endif + +struct t_xs_status; + +typedef struct { + gint plrIdent; + gboolean (*plrProbe)(t_xs_file *); + gboolean (*plrInit)(struct t_xs_status *); + void (*plrClose)(struct t_xs_status *); + gboolean (*plrInitSong)(struct t_xs_status *); + guint (*plrFillBuffer)(struct t_xs_status *, gchar *, guint); + gboolean (*plrLoadSID)(struct t_xs_status *, gchar *); + void (*plrDeleteSID)(struct t_xs_status *); + t_xs_tuneinfo* (*plrGetSIDInfo)(gchar *); + gboolean (*plrUpdateSIDInfo)(struct t_xs_status *); + void (*plrFlush)(struct t_xs_status *); +} t_xs_player; + + +typedef struct t_xs_status { + gint audioFrequency, /* Audio settings */ + audioChannels, + audioBitsPerSample, + oversampleFactor; /* Factor of oversampling */ + AFormat audioFormat; + gboolean oversampleEnable; /* TRUE after sidEngine initialization, + if xs_cfg.oversampleEnable == TRUE and + emulation backend supports oversampling. + */ + void *sidEngine; /* SID-emulation internal engine data */ + t_xs_player *sidPlayer; /* Selected player engine */ + gboolean isError, isPlaying, isInitialized; + gint currSong, /* Current sub-tune */ + lastTime; + + t_xs_tuneinfo *tuneInfo; +} t_xs_status; + + +/* Global variables + */ +extern InputPlugin xs_plugin_ip; + +extern t_xs_status xs_status; +XS_MUTEX_H(xs_status); + + +#ifdef __cplusplus +} +#endif +#endif /* XS_PLAYER_H */