/* * UPSE: the unix playstation sound emulator. * * Filename: upse.h * Purpose: libupse development header * * Copyright (c) 2007 William Pitcock * * UPSE is free software, released under the GNU General Public License, * version 2. * * A copy of the GNU General Public License, version 2, is included in * the UPSE source kit as COPYING. * * UPSE is offered without any warranty of any kind, explicit or implicit. */ #ifndef __UPSE_LIBUPSE_UPSE_H_GUARD #define __UPSE_LIBUPSE_UPSE_H_GUARD #include typedef struct _upse_psftag { struct _upse_psftag *next; char *key; char *value; } upse_psftag_t; typedef struct { u32 length; u32 stop; u32 fade; char *title; char *artist; char *game; char *year; char *genre; char *psfby; char *comment; char *copyright; upse_psftag_t *taglist; } upse_psf_t; int upse_seek(u32 t); void upse_stop(void); void upse_execute(void); upse_psf_t *upse_load(char *path); upse_psf_t *upse_get_psf_metadata(char *path); void upse_free_psf_metadata(upse_psf_t *info); typedef void (*upse_audio_callback_func_t)(unsigned char *, long); void upse_set_audio_callback(upse_audio_callback_func_t func); #endif