view src/console/Gzip_File.h @ 2545:585f2fc4134e

MIDI files were never properly supported (and probably shouldn't be, because we have separate and working plugins for handling MIDI files), thus references to MIDI are removed.
author Matti Hamalainen <ccr@tnsp.org>
date Wed, 30 Apr 2008 05:01:37 +0300
parents 3da1b8942b8b
children
line wrap: on
line source


// Gzip file access

#ifndef GZIP_FILE_H
#define GZIP_FILE_H

#include "abstract_file.h"

// Get size of gzipped file data (or size of file if not gzipped). NULL
// on success, otherwise error string.
const char* get_gzip_eof( const char* path, long* eof_out );

class Gzip_File_Reader : public File_Reader {
	void* file_;
	long size_;
public:
	Gzip_File_Reader();
	~Gzip_File_Reader();
	
	error_t open( const char* );
	
	long size() const;
	long read_avail( void*, long );
	
	long tell() const;
	error_t seek( long );
	
	void close();
};

class Gzip_File_Writer : public Data_Writer {
	void* file_;
public:
	Gzip_File_Writer();
	~Gzip_File_Writer();
	
	error_t open( const char* );
	error_t write( const void*, long );
	void close();
};

#endif