view src/console/Vfs_File.h @ 972:cf7021ca4e7b trunk

[svn] Add lastfm:// transport, an abstract VFS class which derives from curl to provide lastfm radio support. Written by majeru with some cleanups by me. Most last.fm metadata support isn't yet implemented, however, and will need to be done by majeru. ;)
author nenolod
date Sun, 22 Apr 2007 04:16:08 -0700
parents 986f098da058
children 2ebeb7816c5e
line wrap: on
line source

// File_Reader wrapper over a VFSFile

#ifndef VFS_FILE_H
#define VFS_FILE_H

#include "Data_Reader.h"

#include "audacious/vfs.h"

class Vfs_File_Reader : public File_Reader {
public:
	void reset( VFSFile* ); // use already-open file and doesn't close it in close()
	error_t open( const char* path );
	VFSFile* file() const { return file_; }
	void close();
	
public:
	Vfs_File_Reader();
	~Vfs_File_Reader();
	long size() const;
	long read_avail( void*, long );
	long tell() const;
	error_t seek( long );
private:
	VFSFile* file_;
	VFSFile* owned_file_;
};

#endif