00001
00002
00003
00004
00005
00006
00007 #ifndef __WVFILE_H
00008 #define __WVFILE_H
00009
00010 #include "wvfdstream.h"
00011 #include <fcntl.h>
00012
00013 #ifdef _WIN32
00014 #define O_NONBLOCK 0
00015 #define O_LARGEFILE 0
00016 #define fcntl(a,b,c)
00017 #endif
00018
00028 class WvFile : public WvFDStream
00029 {
00030 public:
00032 WvFile();
00033
00035 WvFile(int rwfd);
00036
00038 WvFile(WvStringParm filename, int mode, int create_mode = 0666);
00039 bool open(WvStringParm filename, int mode, int create_mode = 0666);
00040 bool open(int _rwfd);
00041
00042 bool readable, writable;
00043
00044 virtual void pre_select(SelectInfo &si);
00045 virtual bool post_select(SelectInfo &si);
00046
00047 public:
00048 const char *wstype() const { return "WvFile"; }
00049 };
00050
00051 #endif // __WVFILE_H