00001
00002
00003
00004 #ifndef __XVR2_OLD_UDP_SERVER_SOCKET_H__
00005 #define __XVR2_OLD_UDP_SERVER_SOCKET_H__
00006 #include<xvr2/String.h>
00007 #include<xvr2/Net/OldSocket.h>
00008 #include<xvr2/Net/OldUDPSocket.h>
00009 #include<xvr2/Net/IPv4Address.h>
00010 #include<xvr2/Net/NetworkExceptions.h>
00011
00012 namespace xvr2 {
00013 namespace Net {
00019 class OldUDPServerSocket : public OldSocket {
00020 private:
00021 protected:
00022 int flags;
00023 void bind();
00024 public:
00025 OldUDPServerSocket(int _port);
00026 OldUDPServerSocket(const IPv4Address &addr, int _port);
00027 OldUDPServerSocket(const String &addr, int _port);
00028 static void setRecvTimeout(int t);
00029 static int getRecvTimeout();
00030 int peek(void *buf, int size);
00031 virtual int receive(void *buf, int size);
00032 template<class T>
00033 int receive(T *buf){
00034 return receive((void *)buf, sizeof(T));
00035 }
00036 template<class T>
00037 int peek(T *buf){
00038 return peek((void *)buf, sizeof(T));
00039 }
00040 };
00041 };
00042 };
00043 #endif
00044