Home Download Musics Developers
API Sources Tools File Format Technicals

istream68_def.h File Reference


Detailed Description

generic stream interface.

Author:
benjamin gerard
Date:
2003/08/08
Id
istream68_def.h,v 2.6 2003/10/07 06:58:44 benjihan Exp

Generic stream interface definition.

#include "file68/istream68.h"

Go to the source code of this file.

Data Structures

struct  _istream_t
 Generic stream structure. More...


Open modes

#define ISTREAM_OPEN_READ_BIT   0
 Read open mode bit.

#define ISTREAM_OPEN_READ   (1<<ISTREAM_OPEN_READ_BIT)
 Read open mode value.

#define ISTREAM_OPEN_WRITE_BIT   1
 Write open mode bit.

#define ISTREAM_OPEN_WRITE   (1<<ISTREAM_OPEN_WRITE_BIT)
 Write open mode value.

#define ISTREAM_OPEN_MASK   (ISTREAM_OPEN_READ|ISTREAM_OPEN_WRITE)
 Open modes mask.

#define ISTREAM_IS_OPEN(V)   (!!((V)&(ISTREAM_OPEN_READ|ISTREAM_OPEN_WRITE)))
 Test if any open flags is set (returns 0 or 1).

#define ISTREAM_IS_OPEN_READ(V)   (((V)>>ISTREAM_OPEN_READ_BIT)&1)
 Test if READ open flags is set (returns 0 or 1).

#define ISTREAM_IS_OPEN_WRITE(V)   (((V)>>ISTREAM_OPEN_WRITE_BIT)&1)
 Test if WRITE open flags is set (returns 0 or 1).


Stream function prototypes.

typedef const char *(* istream_name_t )(istream_t *)
typedef int(* istream_open_t )(istream_t *)
typedef int(* istream_close_t )(istream_t *)
typedef int(* istream_length_t )(istream_t *)
typedef int(* istream_tell_t )(istream_t *)
typedef int(* istream_seek_t )(istream_t *, int)
typedef int(* istream_read_t )(istream_t *, void *, int)
typedef int(* istream_write_t )(istream_t *, const void *, int)
typedef void(* istream_destroy_t )(istream_t *)