Code cleanup branch (#618)

* Make height map fallback layer work again
  * Add documentation to joystick button bindings
  * Removed grouped property headers
  * Add new version number constant generated by CMake
  * Make Joystick deadzone work properly
  * Change the startup date on Earth to today
  * Fix key modifier handling
  * Add debugging indices for TreeNodeDebugging
  * Fix script schedule for OsirisRex
  * Do not open Mission schedule automatically
  * Upload default projection texture automatically

  * General code cleanup
  * Fix check_style_guide warnings
  * Remove .clang-format
  * MacOS compile fixes
  * Clang analyzer fixes
This commit is contained in:
Alexander Bock
2018-06-10 04:47:34 +00:00
committed by GitHub
parent 5de728442d
commit 4952f8f977
796 changed files with 22428 additions and 24063 deletions
+29 -22
View File
@@ -23,16 +23,14 @@
****************************************************************************************/
#include <modules/server/include/connectionpool.h>
#include <ghoul/io/socket/socket.h>
#include <vector>
#include <ghoul/io/socket/socketserver.h>
#include <algorithm>
namespace openspace {
ConnectionPool::ConnectionPool(
std::function<void(std::shared_ptr<ghoul::io::Socket> socket)> handleSocket)
ConnectionPool::ConnectionPool(SocketHandleFunc handleSocket)
: _handleSocket(std::move(handleSocket))
{}
@@ -41,13 +39,20 @@ ConnectionPool::~ConnectionPool() {
}
void ConnectionPool::addServer(std::shared_ptr<ghoul::io::SocketServer> server) {
_socketServers.push_back(server);
_socketServers.push_back(std::move(server));
}
void ConnectionPool::removeServer(ghoul::io::SocketServer* server) {
std::remove_if(_socketServers.begin(), _socketServers.end(), [server](const auto& s) {
return s.get() == server;
});
_socketServers.erase(
std::remove_if(
_socketServers.begin(),
_socketServers.end(),
[server](const std::shared_ptr<ghoul::io::SocketServer>& s) {
return s.get() == server;
}
),
_socketServers.end()
);
}
void ConnectionPool::clearServers() {
@@ -60,27 +65,30 @@ void ConnectionPool::updateConnections() {
}
void ConnectionPool::acceptNewSockets() {
for (auto& server : _socketServers) {
std::shared_ptr<ghoul::io::Socket> socket;
while (socket = server->nextPendingSocket()) {
_handleSocket(socket);
_sockets.push_back(socket);
for (std::shared_ptr<ghoul::io::SocketServer>& server : _socketServers) {
std::unique_ptr<ghoul::io::Socket> socket;
while ((socket = server->nextPendingSocket())) {
_handleSocket(*socket);
_sockets.push_back(std::move(socket));
}
}
}
void ConnectionPool::removeDisconnectedSockets() {
std::remove_if(
_sockets.begin(),
_sockets.end(),
[](const std::shared_ptr<ghoul::io::Socket> socket) {
return !socket || !socket->isConnected();
}
_sockets.erase(
std::remove_if(
_sockets.begin(),
_sockets.end(),
[](const std::unique_ptr<ghoul::io::Socket>& socket) {
return !socket || !socket->isConnected();
}
),
_sockets.end()
);
}
void ConnectionPool::disconnectAllConnections() {
for (auto& socket : _sockets) {
for (const std::unique_ptr<ghoul::io::Socket>& socket : _sockets) {
if (socket && socket->isConnected()) {
socket->disconnect();
}
@@ -88,5 +96,4 @@ void ConnectionPool::disconnectAllConnections() {
_sockets.clear();
}
} // namespace openspace