changeset 1974:9f6c17f1cc93 trunk

[svn] - define VFSConstructor
author nenolod
date Thu, 16 Nov 2006 10:53:21 -0800
parents b067ca382dd0
children 976da06332df
files ChangeLog libaudacious/vfs.h
diffstat 2 files changed, 44 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Nov 14 12:37:14 2006 -0800
+++ b/ChangeLog	Thu Nov 16 10:53:21 2006 -0800
@@ -1,3 +1,11 @@
+2006-11-14 20:37:14 +0000  William Pitcock <nenolod@nenolod.net>
+  revision [2923]
+  - reseek to 0 on a newvfs FD for each probe pass
+  
+  trunk/audacious/input.c |    2 ++
+  1 file changed, 2 insertions(+)
+
+
 2006-11-13 02:41:41 +0000  Yoshiki Yazawa <yaz@cc.rim.or.jp>
   revision [2921]
   - in particular X environment, double size caused a bad match X error.
--- a/libaudacious/vfs.h	Tue Nov 14 12:37:14 2006 -0800
+++ b/libaudacious/vfs.h	Thu Nov 16 10:53:21 2006 -0800
@@ -1,3 +1,22 @@
+/*
+ * Audacious
+ * Copyright (c) 2006 Audacious team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
 #ifndef VFS_H
 #define VFS_H
 
@@ -6,6 +25,23 @@
 
 typedef struct _VFSFile VFSFile;
 
+struct _VFSConstructor {
+	gchar *uri_id;
+	VFSFile *(*vfs_fopen_impl)(const gchar *path,
+		const gchar *mode);
+	gint (*vfs_fclose_impl)(VFSFile * file);
+	size_t (*vfs_fread_impl)(gpointer ptr, size_t size,
+		size_t nmemb, VFSFile *file);
+	gint (*vfs_ungetc_impl)(gint c, VFSFile *stream);
+	gint (*vfs_fseek_impl)(VFSFile *file, glong offset, gint whence);
+	void (*vfs_rewind_impl)(VFSFile *file);
+	glong (*vfs_ftell_impl)(VFSFile *file);
+	gboolean (*vfs_feof_impl)(VFSFile *file);
+	gboolean (*vfs_truncate_impl)(VFSFile *file, glong length);
+};
+
+typedef struct _VFSConstructor VFSConstructor;
+
 G_BEGIN_DECLS
 
 /* Reserved for private use by BMP */