WvStreams
wvmagicloopback.h
1 /* -*- Mode: C++ -*-
2  * Worldvisions Weaver Software:
3  * Copyright (C) 1997-2004 Net Integration Technologies, Inc.
4  */
5 #ifndef __WVMAGICLOOPBACK_H
6 #define __WVMAGICLOOPBACK_H
7 
8 #include "wvmagiccircle.h"
9 #include "wvloopback.h"
10 
11 class WvMagicLoopback : public WvStream
12 {
13 public:
14 
15  WvMagicLoopback(size_t size);
16 
17  virtual void pre_select(SelectInfo &si);
18  virtual bool post_select(SelectInfo &si);
19 
20  virtual size_t uread(void *buf, size_t len);
21  virtual size_t uwrite(const void *buf, size_t len);
22 
23 private:
24 
25  WvMagicCircle circle;
26  WvLoopback loop;
27 
28 public:
29  const char *wstype() const { return "WvMagicLoopback"; }
30 };
31 
32 #endif // __WVMAGICLOOPBACK_H