WvStreams
|
00001 /* -*- Mode: C++ -*- 00002 * Worldvisions Weaver Software: 00003 * Copyright (C) 1997-2002 Net Integration Technologies, Inc. 00004 * 00005 * A buffered loopback stream. 00006 */ 00007 #ifndef __WVBUFSTREAM_H 00008 #define __WVBUFSTREAM_H 00009 00010 #include "wvstream.h" 00011 00031 class WvBufStream : public WvStream 00032 { 00033 bool dead, 00034 eof; 00036 public: 00037 WvBufStream(); 00038 virtual ~WvBufStream(); 00039 00040 virtual void close(); 00041 00042 virtual size_t uread(void *buf, size_t size); 00043 virtual size_t uwrite(const void *buf, size_t size); 00044 virtual bool isok() const; 00045 virtual void pre_select(SelectInfo &si); 00046 virtual bool post_select(SelectInfo &si); 00047 00048 void seteof() { eof = true; } 00049 }; 00050 00051 00052 #endif // __WVBUFSTREAM_H