MCPcopy Create free account
hub / github.com/ObEngine/ObEngine / update

Method update

src/Core/Network/TcpServer.cpp:23–64  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

21 }
22
23 void TcpServer::update()
24 {
25 if (m_listener.accept(*m_clients.back()) == sf::Socket::Done)
26 {
27 if (m_socketTriggers)
28 {
29 m_socketTriggers->pushParameter(
30 "Connected", "client", m_clients.back().get());
31 m_socketTriggers->pushParameter(
32 "Connected", "ip", m_clients.back()->getRemoteAddress().toString());
33 m_socketTriggers->trigger("Connected");
34 }
35 Debug::Log->debug("<TcpServer> New client connected to server "
36 "listening at port {}",
37 m_listener.getLocalPort());
38 m_clients.push_back(std::make_unique<sf::TcpSocket>());
39 }
40 for (auto& client : m_clients)
41 {
42 std::size_t receivedDataSize = 0;
43 m_status = client->receive(m_data.data(), m_maxBufferSize, receivedDataSize);
44 if (m_status == sf::Socket::Done)
45 {
46 if (m_socketTriggers)
47 {
48 m_socketTriggers->pushParameter("DataReceived", "content",
49 std::string(m_data.begin(), m_data.end())
50 .substr(0, receivedDataSize));
51 m_socketTriggers->pushParameter(
52 "DataReceived", "client", client.get());
53 m_socketTriggers->trigger("DataReceived");
54 }
55 }
56 else if (m_status == sf::Socket::Disconnected)
57 {
58 if (m_socketTriggers)
59 {
60 m_socketTriggers->trigger("Disconnected");
61 }
62 }
63 }
64 }
65
66 void TcpServer::setBufferSize(unsigned int maxBufferSize)
67 {

Callers

nothing calls this directly

Calls 10

debugMethod · 0.80
substrMethod · 0.80
stringClass · 0.50
pushParameterMethod · 0.45
getMethod · 0.45
toStringMethod · 0.45
push_backMethod · 0.45
dataMethod · 0.45
beginMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected