Mercurial > hg > xmms-sid
changeset 452:aec9f4beb401
New file reading functions.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 24 Jan 2007 21:57:04 +0000 |
parents | 50247245e2ca |
children | 60eedde4c44f |
files | src/xs_support.c src/xs_support.h |
diffstat | 2 files changed, 45 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xs_support.c Wed Jan 17 23:38:03 2007 +0000 +++ b/src/xs_support.c Wed Jan 24 21:57:04 2007 +0000 @@ -25,24 +25,50 @@ #include <ctype.h> -/* Bigendian file reading functions +/* File handling */ -guint16 xs_rd_be16(FILE *f) +t_xs_file *xs_fopen(gchar *path, const gchar *mode) +{ + return fopen(path, mode); +} + + +gint xs_fclose(t_xs_file *f) +{ + return fclose(f); +} + + +gint xs_fgetc(t_xs_file *f) +{ + return fgetc(f); +} + + +guint16 xs_fread_be16(t_xs_file *f) { return (((guint16) fgetc(f)) << 8) | ((guint16) fgetc(f)); } -guint32 xs_rd_be32(FILE *f) +guint32 xs_fread_be32(t_xs_file *f) { return (((guint32) fgetc(f)) << 24) | - (((guint32) fgetc(f)) << 16) | (((guint32) fgetc(f)) << 8) | ((guint32) fgetc(f)); + (((guint32) fgetc(f)) << 16) | + (((guint32) fgetc(f)) << 8) | + ((guint32) fgetc(f)); } -size_t xs_rd_str(FILE *f, gchar *s, size_t l) +size_t xs_fread(void *p, size_t s, size_t n, t_xs_file *f) { - return fread(s, sizeof(gchar), l, f); + return fread(p, s, n, f); +} + + +gint xs_fgets(gchar *s, gint l, t_xs_file *f) +{ + return fgets(s, l, f); }
--- a/src/xs_support.h Wed Jan 17 23:38:03 2007 +0000 +++ b/src/xs_support.h Wed Jan 24 21:57:04 2007 +0000 @@ -25,12 +25,20 @@ #define ftello ftell #endif -/* - * Functions + +#define t_xs_file FILE + + +/* Functions */ -guint16 xs_rd_be16(FILE *); -guint32 xs_rd_be32(FILE *); -size_t xs_rd_str(FILE *, gchar *, size_t); +t_xs_file *xs_fopen(gchar *, const gchar *); +gint xs_fclose(t_xs_file *); +gint xs_fgetc(t_xs_file *); +guint16 xs_fread_be16(t_xs_file *); +guint32 xs_fread_be32(t_xs_file *); +size_t xs_fread(void *, size_t, size_t, t_xs_file *); +gint xs_fgets(gchar *, gint, t_xs_file *); + gchar *xs_strncpy(gchar *, gchar *, size_t); gint xs_pstrcpy(gchar **, const gchar *);