1 #ifndef NETWORKINTERFACE_H_
2 #define NETWORKINTERFACE_H_
4 #include <msp/core/thread.h>
5 #include <msp/io/eventdispatcher.h>
6 #include <msp/io/pipe.h>
7 #include <msp/net/datagramsocket.h>
8 #include <msp/net/streamserversocket.h>
13 class NetworkInterface
16 class NetworkThread: public Msp::Thread
19 NetworkInterface &network;
20 Msp::IO::Pipe wakeup_pipe;
24 NetworkThread(NetworkInterface &);
33 Msp::Net::StreamServerSocket *server_sock;
34 Msp::Net::DatagramSocket *discover_sock;
35 Msp::IO::EventDispatcher event_disp;
36 NetworkThread *thread;
37 std::list<Client *> clients;
40 NetworkInterface(Xinema &);
44 void connection_available();
45 void discover_request();