[asperl] integrate latest win32 branch
[p5sagit/p5-mst-13.2.git] / iplio.h
CommitLineData
76e3520e 1/*
2
3 iplio.h
4 Interface for perl Low IO functions
5
6*/
7
8#ifndef __Inc__IPerlLIO___
9#define __Inc__IPerlLIO___
10
11class IPerlLIO
12{
13public:
14 virtual int Access(const char *path, int mode, int &err) = 0;
15 virtual int Chmod(const char *filename, int pmode, int &err) = 0;
16 virtual int Chsize(int handle, long size, int &err) = 0;
17 virtual int Close(int handle, int &err) = 0;
18 virtual int Dup(int handle, int &err) = 0;
19 virtual int Dup2(int handle1, int handle2, int &err) = 0;
20 virtual int Flock(int fd, int oper, int &err) = 0;
21 virtual int FStat(int handle, struct stat *buffer, int &err) = 0;
22 virtual int IOCtl(int i, unsigned int u, char *data, int &err) = 0;
23 virtual int Isatty(int handle, int &err) = 0;
24 virtual long Lseek(int handle, long offset, int origin, int &err) = 0;
25 virtual int Lstat(const char *path, struct stat *buffer, int &err) = 0;
26 virtual char *Mktemp(char *Template, int &err) = 0;
27 virtual int Open(const char *filename, int oflag, int &err) = 0;
28 virtual int Open(const char *filename, int oflag, int pmode, int &err) = 0;
29 virtual int Read(int handle, void *buffer, unsigned int count, int &err) = 0;
30 virtual int Rename(const char *oldname, const char *newname, int &err) = 0;
31 virtual int Setmode(int handle, int mode, int &err) = 0;
32 virtual int STat(const char *path, struct stat *buffer, int &err) = 0;
33 virtual char *Tmpnam(char *string, int &err) = 0;
34 virtual int Umask(int pmode, int &err) = 0;
35 virtual int Unlink(const char *filename, int &err) = 0;
36 virtual int Utime(char *filename, struct utimbuf *times, int &err) = 0;
37 virtual int Write(int handle, const void *buffer, unsigned int count, int &err) = 0;
38};
39
40#endif /* __Inc__IPerlLIO___ */