diff options
| author | Carl Hetherington <cth@carlh.net> | 2015-12-06 19:59:47 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2015-12-11 11:56:22 +0000 |
| commit | 17df947ac256397311a11894062070f8069c7e75 (patch) | |
| tree | bb84d231ae31cab2e7e4d6546c62fcd88150b4d8 /src/lib/server.h | |
| parent | d499ec381ea5fbbae954531be9d66c9cc723c230 (diff) | |
Rename Server -> EncodeServer, ServerFinder -> EncodeServerFinder, ServerDescription -> EncodeServerDescription.
Diffstat (limited to 'src/lib/server.h')
| -rw-r--r-- | src/lib/server.h | 85 |
1 files changed, 0 insertions, 85 deletions
diff --git a/src/lib/server.h b/src/lib/server.h deleted file mode 100644 index 97bc26fd8..000000000 --- a/src/lib/server.h +++ /dev/null @@ -1,85 +0,0 @@ -/* - Copyright (C) 2012 Carl Hetherington <cth@carlh.net> - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -*/ - -#ifndef DCPOMATIC_SERVER_H -#define DCPOMATIC_SERVER_H - -/** @file src/server.h - * @brief Server class. - */ - -#include "exception_store.h" -#include <boost/thread.hpp> -#include <boost/asio.hpp> -#include <boost/thread/condition.hpp> -#include <string> - -class Socket; -class Log; - -/** @class Server - * @brief A class to run a server which can accept requests to perform JPEG2000 - * encoding work. - */ -class Server : public ExceptionStore, public boost::noncopyable -{ -public: - Server (boost::shared_ptr<Log> log, bool verbose); - ~Server (); - - void run (int num_threads); - -private: - void worker_thread (); - int process (boost::shared_ptr<Socket> socket, struct timeval &, struct timeval &); - void broadcast_thread (); - void broadcast_received (); - void start_accept (); - void handle_accept (boost::shared_ptr<Socket>, boost::system::error_code const &); - - bool _terminate; - - std::vector<boost::thread *> _worker_threads; - std::list<boost::shared_ptr<Socket> > _queue; - boost::mutex _worker_mutex; - boost::condition _full_condition; - boost::condition _empty_condition; - boost::shared_ptr<Log> _log; - bool _verbose; - - boost::asio::io_service _io_service; - boost::asio::ip::tcp::acceptor _acceptor; - - struct Broadcast { - - Broadcast () - : thread (0) - , socket (0) - {} - - boost::thread* thread; - boost::asio::ip::udp::socket* socket; - char buffer[64]; - boost::asio::ip::udp::endpoint send_endpoint; - boost::asio::io_service io_service; - - } _broadcast; -}; - -#endif |
