DDNet documentation
Loading...
Searching...
No Matches
local_server.h
Go to the documentation of this file.
1#ifndef GAME_CLIENT_COMPONENTS_LOCAL_SERVER_H
2#define GAME_CLIENT_COMPONENTS_LOCAL_SERVER_H
3
4#include <base/types.h>
5
7
9
10#include <chrono>
11
13{
14public:
15 bool RunServer(const std::vector<const char *> &vpArguments);
16 void KillServer();
17 bool IsServerRunning();
18 bool IsStarting() const { return m_WaitingForPort; }
19 void Update();
20 void RconAuthIfPossible();
21 void Connect();
22 void CancelConnect();
23
24private:
25 void Reset();
26 void WaitForPort();
27 void OnServerStarted();
28
30 // Port that the server reported after binding its socket, 0 until then
31 int m_Port = 0;
32 bool m_WaitingForPort = false;
33 std::chrono::nanoseconds m_StartTime{0};
34 std::chrono::nanoseconds m_NextPortCheck{0};
35 bool m_ConnectRequested = false;
36
37#if !defined(CONF_PLATFORM_ANDROID)
39#endif
40};
41
42#endif
Definition component.h:15
char m_SvRconPassword[128]
Definition config.h:482
Definition local_server.h:13
void KillServer()
Definition local_server.cpp:117
void RconAuthIfPossible()
Definition local_server.cpp:149
bool RunServer(const std::vector< const char * > &vpArguments)
Definition local_server.cpp:54
bool IsStarting() const
Definition local_server.h:18
void Update()
Definition local_server.cpp:175
void WaitForPort()
Definition local_server.cpp:41
bool m_ConnectRequested
Definition local_server.h:35
std::chrono::nanoseconds m_NextPortCheck
Definition local_server.h:34
void Connect()
Definition local_server.cpp:160
std::chrono::nanoseconds m_StartTime
Definition local_server.h:33
PROCESS m_Process
Definition local_server.h:38
void CancelConnect()
Definition local_server.cpp:170
bool IsServerRunning()
Definition local_server.cpp:132
char m_aRconPassword[sizeof(g_Config.m_SvRconPassword)]
Definition local_server.h:29
bool m_WaitingForPort
Definition local_server.h:32
void Reset()
Definition local_server.cpp:30
int m_Port
Definition local_server.h:31
void OnServerStarted()
Definition local_server.cpp:48
CConfig g_Config
Definition config.cpp:16
constexpr PROCESS INVALID_PROCESS
Definition types.h:223
pid_t PROCESS
Definition types.h:217