00001 00014 /* Copyright (C) 1998-2003 Benjamin Gerard */ 00015 00016 #ifndef _ISTREAM68_H_ 00017 #define _ISTREAM68_H_ 00018 00019 #ifdef __cplusplus 00020 extern "C" { 00021 #endif 00022 00024 typedef struct _istream_t istream_t; 00025 00033 const char * istream_filename(istream_t *istream); 00034 00043 int istream_open(istream_t *istream); 00044 00053 int istream_close(istream_t *istream); 00054 00065 int istream_read(istream_t *istream, void * data, int len); 00066 00076 int istream_write(istream_t *istream, const void * data, int len); 00077 00085 int istream_length(istream_t *istream); 00086 00094 int istream_tell(istream_t *istream); 00095 00106 int istream_seek(istream_t *istream, int offset); 00107 00118 int istream_seek_to(istream_t *istream, int pos); 00119 00125 void istream_destroy(istream_t *istream); 00126 00136 int istream_gets(istream_t *istream, char * buffer, int max); 00137 00138 #ifdef __cplusplus 00139 } 00140 #endif 00141 00142 #endif /* #ifndef _ISTREAM68_H_ */