1
/*********************************************************************
5
File IO abstraction layer
7
*********************************************************************/
17
/***************************************************************************
21
***************************************************************************/
25
void (*closeproc)(void *file);
26
int (*seekproc)(void *file, INT64 offset, int whence);
27
size_t (*readproc)(void *file, void *buffer, size_t length);
28
size_t (*writeproc)(void *file, const void *buffer, size_t length);
29
UINT64 (*filesizeproc)(void *file);
36
const struct io_procs *procs;
42
/***************************************************************************
46
***************************************************************************/
48
extern const struct io_procs stdio_ioprocs;
49
extern const struct io_procs stdio_ioprocs_noclose;
53
/***************************************************************************
57
***************************************************************************/
61
void io_generic_close(struct io_generic *generic);
62
void io_generic_read(struct io_generic *generic, void *buffer, UINT64 offset, size_t length);
63
void io_generic_write(struct io_generic *generic, const void *buffer, UINT64 offset, size_t length);
64
void io_generic_write_filler(struct io_generic *generic, UINT8 filler, UINT64 offset, size_t length);
65
UINT64 io_generic_size(struct io_generic *generic);
69
#endif /* IOPROCS_H */