agl_ios.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00040
00049
#ifndef _adgali_ios_h
00050
#define _adgali_ios_h
00051
00052
#include <stdio.h>
00053
00055
00056
struct _agl_iosio;
00057
00059
00063 typedef struct agl_ios
00064 {
00065 agl_handle handle;
00066
struct _agl_iosio *pio;
00067 char *
filename;
00068
void *priv;
00069 }
agl_ios;
00070
00071
typedef struct _agl_iosio
00072 {
00073
char *desc;
00074 int (*is) (agl_module *,
char *,
agl_ios *);
00075
agl_ios *(*open) (agl_module *,
char *,
agl_ios *);
00076 long (*seek) (
agl_ios *,
long,
int);
00077 long (*read) (
agl_ios *,
void *,
long,
long,
void *);
00078 long (*write) (
agl_ios *,
void *,
long,
long,
void *);
00079 int (*close) (
agl_ios *);
00080 } agl_iosio;
00081
00082
00083
extern agl_ios *agl_ios_open(agl_handle handle,
char *address);
00084
00086
00099 #define agl_ios_seek(ios, offset, whence) ((ios)->pio->seek(ios, offset, whence))
00100
00102
00108 #define agl_ios_tell(ios) ((ios)->pio->seek(ios, 0, SEEK_CUR))
00109
00111
00122 #define agl_ios_read(ios, buf, size, maxnum, supp) ((ios)->pio->read(ios, buf, size, maxnum ,supp))
00123
00125
00136 #define agl_ios_write(ios, buf, size, maxnum, supp) ((ios)->pio->write(ios, buf, size, maxnum ,supp))
00137
00139
00146 #define agl_ios_close(ios) ((ios)->pio->close(ios))
00147
00148
00149
#endif
Doc generated at 29 Sep 2004 for,
0.2.4 written by Stephane APIOU,
© 2001
Generated by
Doxygen 1.3.8 ,