WvStreams
|
00001 /* -*- Mode: C++ -*- 00002 * Worldvisions Weaver Software: 00003 * Copyright (C) 1997-2004 Net Integration Technologies, Inc. 00004 */ 00005 #ifndef __WVMAGICLOOPBACK_H 00006 #define __WVMAGICLOOPBACK_H 00007 00008 #include "wvmagiccircle.h" 00009 #include "wvloopback.h" 00010 00011 class WvMagicLoopback : public WvStream 00012 { 00013 public: 00014 00015 WvMagicLoopback(size_t size); 00016 00017 virtual void pre_select(SelectInfo &si); 00018 virtual bool post_select(SelectInfo &si); 00019 00020 virtual size_t uread(void *buf, size_t len); 00021 virtual size_t uwrite(const void *buf, size_t len); 00022 00023 private: 00024 00025 WvMagicCircle circle; 00026 WvLoopback loop; 00027 00028 public: 00029 const char *wstype() const { return "WvMagicLoopback"; } 00030 }; 00031 00032 #endif // __WVMAGICLOOPBACK_H