diff options
Diffstat (limited to 'src/lib/encode_server_finder.cc')
| -rw-r--r-- | src/lib/encode_server_finder.cc | 114 |
1 files changed, 57 insertions, 57 deletions
diff --git a/src/lib/encode_server_finder.cc b/src/lib/encode_server_finder.cc index d2ecd03b7..a873b258a 100644 --- a/src/lib/encode_server_finder.cc +++ b/src/lib/encode_server_finder.cc @@ -54,69 +54,69 @@ using namespace boost::placeholders; EncodeServerFinder* EncodeServerFinder::_instance = 0; -EncodeServerFinder::EncodeServerFinder () - : _stop (false) +EncodeServerFinder::EncodeServerFinder() + : _stop(false) { - Config::instance()->Changed.connect (boost::bind (&EncodeServerFinder::config_changed, this, _1)); + Config::instance()->Changed.connect(boost::bind(&EncodeServerFinder::config_changed, this, _1)); } void -EncodeServerFinder::start () +EncodeServerFinder::start() { - _search_thread = boost::thread (boost::bind(&EncodeServerFinder::search_thread, this)); - _listen_thread = boost::thread (boost::bind(&EncodeServerFinder::listen_thread, this)); + _search_thread = boost::thread(boost::bind(&EncodeServerFinder::search_thread, this)); + _listen_thread = boost::thread(boost::bind(&EncodeServerFinder::listen_thread, this)); #ifdef DCPOMATIC_LINUX - pthread_setname_np (_search_thread.native_handle(), "encode-server-search"); - pthread_setname_np (_listen_thread.native_handle(), "encode-server-listen"); + pthread_setname_np(_search_thread.native_handle(), "encode-server-search"); + pthread_setname_np(_listen_thread.native_handle(), "encode-server-listen"); #endif } -EncodeServerFinder::~EncodeServerFinder () +EncodeServerFinder::~EncodeServerFinder() { - stop (); + stop(); } void -EncodeServerFinder::stop () +EncodeServerFinder::stop() { boost::this_thread::disable_interruption dis; _stop = true; - _search_condition.notify_all (); + _search_condition.notify_all(); try { _search_thread.join(); } catch (...) {} _listen_io_context.stop(); try { - _listen_thread.join (); + _listen_thread.join(); } catch (...) {} - boost::mutex::scoped_lock lm (_servers_mutex); - _servers.clear (); + boost::mutex::scoped_lock lm(_servers_mutex); + _servers.clear(); } void -EncodeServerFinder::search_thread () +EncodeServerFinder::search_thread() try { - start_of_thread ("EncodeServerFinder-search"); + start_of_thread("EncodeServerFinder-search"); boost::system::error_code error; dcpomatic::io_context io_context; boost::asio::ip::udp::socket socket(io_context); - socket.open (boost::asio::ip::udp::v4(), error); + socket.open(boost::asio::ip::udp::v4(), error); if (error) { - throw NetworkError ("failed to set up broadcast socket"); + throw NetworkError("failed to set up broadcast socket"); } - socket.set_option (boost::asio::ip::udp::socket::reuse_address(true)); - socket.set_option (boost::asio::socket_base::broadcast(true)); + socket.set_option(boost::asio::ip::udp::socket::reuse_address(true)); + socket.set_option(boost::asio::socket_base::broadcast(true)); string const data = DCPOMATIC_HELLO; int const interval = 10; @@ -125,8 +125,8 @@ try if (Config::instance()->use_any_servers()) { /* Broadcast to look for servers */ try { - boost::asio::ip::udp::endpoint end_point (boost::asio::ip::address_v4::broadcast(), HELLO_PORT); - socket.send_to (boost::asio::buffer(data.c_str(), data.size() + 1), end_point); + boost::asio::ip::udp::endpoint end_point(boost::asio::ip::address_v4::broadcast(), HELLO_PORT); + socket.send_to(boost::asio::buffer(data.c_str(), data.size() + 1), end_point); } catch (...) { } @@ -152,14 +152,14 @@ try /* Discard servers that we haven't seen for a while */ bool removed = false; { - boost::mutex::scoped_lock lm (_servers_mutex); + boost::mutex::scoped_lock lm(_servers_mutex); auto i = _servers.begin(); while (i != _servers.end()) { if (i->last_seen_seconds() > 2 * interval) { auto j = i; ++j; - _servers.erase (i); + _servers.erase(i); i = j; removed = true; } else { @@ -169,49 +169,49 @@ try } if (removed) { - emit (boost::bind(boost::ref(ServersListChanged))); + emit(boost::bind(boost::ref(ServersListChanged))); } - boost::mutex::scoped_lock lm (_search_condition_mutex); - _search_condition.timed_wait (lm, boost::get_system_time() + boost::posix_time::seconds(interval)); + boost::mutex::scoped_lock lm(_search_condition_mutex); + _search_condition.timed_wait(lm, boost::get_system_time() + boost::posix_time::seconds(interval)); } } catch (...) { - store_current (); + store_current(); } void -EncodeServerFinder::listen_thread () +EncodeServerFinder::listen_thread() try { - start_of_thread ("EncodeServerFinder-listen"); + start_of_thread("EncodeServerFinder-listen"); using namespace boost::asio::ip; try { - _listen_acceptor.reset ( + _listen_acceptor.reset( new tcp::acceptor(_listen_io_context, tcp::endpoint(tcp::v4(), is_batch_converter ? BATCH_SERVER_PRESENCE_PORT : MAIN_SERVER_PRESENCE_PORT)) ); } catch (...) { boost::throw_exception(NetworkError(variant::insert_dcpomatic(_("Could not listen for remote encode servers. Perhaps another instance of {} is running.")))); } - start_accept (); + start_accept(); _listen_io_context.run(); } catch (...) { - store_current (); + store_current(); } void -EncodeServerFinder::start_accept () +EncodeServerFinder::start_accept() { _accept_socket = make_shared<Socket>(); - _listen_acceptor->async_accept ( + _listen_acceptor->async_accept( _accept_socket->socket(), boost::bind(&EncodeServerFinder::handle_accept, this, boost::asio::placeholders::error) ); @@ -219,10 +219,10 @@ EncodeServerFinder::start_accept () void -EncodeServerFinder::handle_accept (boost::system::error_code ec) +EncodeServerFinder::handle_accept(boost::system::error_code ec) { if (ec) { - start_accept (); + start_accept(); return; } @@ -230,8 +230,8 @@ EncodeServerFinder::handle_accept (boost::system::error_code ec) try { uint32_t length; - _accept_socket->read (reinterpret_cast<uint8_t*>(&length), sizeof(uint32_t)); - length = ntohl (length); + _accept_socket->read(reinterpret_cast<uint8_t*>(&length), sizeof(uint32_t)); + length = ntohl(length); if (length > 65536) { start_accept(); @@ -239,7 +239,7 @@ EncodeServerFinder::handle_accept (boost::system::error_code ec) } scoped_array<char> buffer(new char[length]); - _accept_socket->read (reinterpret_cast<uint8_t*>(buffer.get()), length); + _accept_socket->read(reinterpret_cast<uint8_t*>(buffer.get()), length); server_available = buffer.get(); } catch (NetworkError&) { /* Maybe the server went away; let's just try again */ @@ -253,7 +253,7 @@ EncodeServerFinder::handle_accept (boost::system::error_code ec) auto const ip = _accept_socket->socket().remote_endpoint().address().to_string(); bool changed = false; { - boost::mutex::scoped_lock lm (_servers_mutex); + boost::mutex::scoped_lock lm(_servers_mutex); auto i = _servers.begin(); while (i != _servers.end() && i->host_name() != ip) { ++i; @@ -262,26 +262,26 @@ EncodeServerFinder::handle_accept (boost::system::error_code ec) if (i != _servers.end()) { i->set_seen(); } else { - EncodeServerDescription sd (ip, xml->number_child<int>("Threads"), xml->optional_number_child<int>("Version").get_value_or(0)); - _servers.push_back (sd); + EncodeServerDescription sd(ip, xml->number_child<int>("Threads"), xml->optional_number_child<int>("Version").get_value_or(0)); + _servers.push_back(sd); changed = true; } } if (changed) { - emit (boost::bind(boost::ref (ServersListChanged))); + emit(boost::bind(boost::ref(ServersListChanged))); } - start_accept (); + start_accept(); } EncodeServerFinder* -EncodeServerFinder::instance () +EncodeServerFinder::instance() { if (!_instance) { - _instance = new EncodeServerFinder (); - _instance->start (); + _instance = new EncodeServerFinder(); + _instance->start(); } return _instance; @@ -289,7 +289,7 @@ EncodeServerFinder::instance () void -EncodeServerFinder::drop () +EncodeServerFinder::drop() { delete _instance; _instance = nullptr; @@ -297,22 +297,22 @@ EncodeServerFinder::drop () list<EncodeServerDescription> -EncodeServerFinder::servers () const +EncodeServerFinder::servers() const { - boost::mutex::scoped_lock lm (_servers_mutex); + boost::mutex::scoped_lock lm(_servers_mutex); return _servers; } void -EncodeServerFinder::config_changed (Config::Property what) +EncodeServerFinder::config_changed(Config::Property what) { if (what == Config::USE_ANY_SERVERS || what == Config::SERVERS) { { - boost::mutex::scoped_lock lm (_servers_mutex); - _servers.clear (); + boost::mutex::scoped_lock lm(_servers_mutex); + _servers.clear(); } - ServersListChanged (); - _search_condition.notify_all (); + ServersListChanged(); + _search_condition.notify_all(); } } |
