view libaudacious/vfs.h @ 1444:c04ce16b2b57 trunk

[svn] - libaudacious/beepctrl.c: optimise further and be more paranoid about leaks - audacious/main.c, main.h: add `session_uri_base' key. - audacious/controlsocket.c: TCP session code (no security yet, thus no public option)
author nenolod
date Fri, 28 Jul 2006 01:31:44 -0700
parents 4d60baab67a0
children 3de4bd38fe4f
line wrap: on
line source

#ifndef VFS_H
#define VFS_H

#include <glib.h>
#include <stdio.h>

typedef struct _VFSFile VFSFile;

G_BEGIN_DECLS

/* Reserved for private use by BMP */
extern gboolean vfs_init(void);

extern VFSFile * vfs_fopen(const gchar * path,
                    const gchar * mode);
extern gint vfs_fclose(VFSFile * file);

extern size_t vfs_fread(gpointer ptr,
                 size_t size,
                 size_t nmemb,
                 VFSFile * file);
extern size_t vfs_fwrite(gconstpointer ptr,
                  size_t size,
                  size_t nmemb,
                  VFSFile *file);

extern gint vfs_fseek(VFSFile * file,
               glong offset,
               gint whence);
extern void vfs_rewind(VFSFile * file);
extern glong vfs_ftell(VFSFile * file);
extern gboolean vfs_feof(VFSFile * file);

extern gboolean vfs_file_test(const gchar * path,
                       GFileTest test);

extern gboolean vfs_is_writeable(const gchar * path);

extern gboolean vfs_truncate(VFSFile * file, glong length);


G_END_DECLS

#endif /* VFS_H */