audiere::File Class Reference

#include <audiere.h>

Inheritance diagram for audiere::File:

Inheritance graph
[legend]
Collaboration diagram for audiere::File:

Collaboration graph
[legend]
List of all members.

Public Types

enum  SeekMode { BEGIN, CURRENT, END }

Public Member Functions

virtual int read (void *buffer, int size)=0
virtual bool seek (int position, SeekMode mode)=0
virtual int tell ()=0

Protected Member Functions

 ~File ()

Detailed Description

Represents a random-access file, usually stored on a disk. Files are always binary: that is, they do no end-of-line transformations. File objects are roughly analogous to ANSI C FILE* objects.

This interface is not synchronized.

Definition at line 229 of file audiere.h.


Member Enumeration Documentation

enum audiere::File::SeekMode
 

The different ways you can seek within a file.

Enumerator:
BEGIN 
CURRENT 
END 

Definition at line 237 of file audiere.h.


Constructor & Destructor Documentation

audiere::File::~File  )  [inline, protected]
 

Definition at line 231 of file audiere.h.


Member Function Documentation

virtual int audiere::File::read void *  buffer,
int  size
[pure virtual]
 

Read size bytes from the file, storing them in buffer.

Parameters:
buffer buffer to read into
size number of bytes to read
Returns:
number of bytes successfully read

virtual bool audiere::File::seek int  position,
SeekMode  mode
[pure virtual]
 

Jump to a new position in the file, using the specified seek mode. Remember: if mode is END, the position must be negative, to seek backwards from the end of the file into its contents. If the seek fails, the current position is undefined.

Parameters:
position position relative to the mode
mode where to seek from in the file
Returns:
true on success, false otherwise

virtual int audiere::File::tell  )  [pure virtual]
 

Get current position within the file.

Returns:
current position


The documentation for this class was generated from the following file:
Generated on Mon Feb 13 23:07:17 2006 for audiere by  doxygen 1.4.6