CVCMIServer.h 754 B

12345678910111213141516171819202122232425262728293031
  1. #pragma once
  2. #include "../global.h"
  3. #include <set>
  4. namespace boost
  5. {
  6. namespace asio
  7. {
  8. class io_service;
  9. namespace ip
  10. {
  11. class tcp;
  12. }
  13. template <typename Protocol> class socket_acceptor_service;
  14. template <typename Protocol,typename SocketAcceptorService>
  15. class basic_socket_acceptor;
  16. }
  17. };
  18. class CVCMIServer
  19. {
  20. boost::asio::io_service *io;
  21. boost::asio::basic_socket_acceptor<boost::asio::ip::tcp, boost::asio::socket_acceptor_service<boost::asio::ip::tcp> > * acceptor;
  22. std::map<int,CConnection*> connections;
  23. std::set<CConnection*> conns;
  24. public:
  25. CVCMIServer();
  26. ~CVCMIServer();
  27. void setUpConnection(CConnection *c, std::string mapname, si32 checksum);
  28. void newGame(CConnection &c);
  29. void start();
  30. };