WvStreams
wvudp.h
1 /* -*- Mode: C++ -*-
2  * Worldvisions Weaver Software:
3  * Copyright (C) 1997-2002 Net Integration Technologies, Inc.
4  *
5  */
6 #ifndef __WVUDP_H
7 #define __WVUDP_H
8 
9 #include "wvfdstream.h"
10 #include "wvaddr.h"
11 
31 class WvUDPStream : public WvFDStream
32 {
33 public:
35  WvUDPStream(const WvIPPortAddr &_local, const WvIPPortAddr &_rem);
36  virtual ~WvUDPStream();
37 
38  const WvAddr *local() const;
39 
45  virtual const WvAddr *src() const;
46  void setdest(const WvIPPortAddr &_remaddr)
47  { remaddr = _remaddr; }
48 
49  void enable_broadcasts();
50 
51 protected:
52  WvIPPortAddr localaddr, remaddr;
53 
54  virtual size_t uread(void *buf, size_t count);
55  virtual size_t uwrite(const void *buf, size_t count);
56 
57 public:
58  const char *wstype() const { return "WvUDPStream"; }
59 };
60 
61 
62 #endif // __WVUDP_H
WvUDPStream::src
virtual const WvAddr * src() const
return the remote address (source of incoming packets, target of outgoing packets).
Definition: wvudp.cc:79
WvUDPStream::uread
virtual size_t uread(void *buf, size_t count)
unbuffered I/O functions; these ignore the buffer, which is handled by read().
Definition: wvudp.cc:91
WvUDPStream::uwrite
virtual size_t uwrite(const void *buf, size_t count)
unbuffered I/O functions; these ignore the buffer, which is handled by write().
Definition: wvudp.cc:107
WvIPPortAddr
An IP+Port address also includes a port number, with the resulting form www.xxx.yyy....
Definition: wvaddr.h:393
WvAddr
Base class for different address types, each of which will have the ability to convert itself to/from...
Definition: wvaddr.h:118
WvFdStream
Base class for streams built on Unix file descriptors.
Definition: wvfdstream.h:20
WvUDPStream
WvUDPStream can send and receive packets on a connectionless UDP socket.
Definition: wvudp.h:31
WvUDPStream::WvUDPStream
WvUDPStream(const WvIPPortAddr &_local, const WvIPPortAddr &_rem)
connect a new socket
Definition: wvudp.cc:26