Files
Tower-Defense2/include/server/Server.h
2025-08-06 12:53:33 +02:00

31 lines
568 B
C++

#pragma once
#include <memory>
#include <server/IServerSocket.h>
#include <server/IServerState.h>
namespace td {
namespace server {
class Server {
private:
std::shared_ptr<IServerState> m_State;
std::unique_ptr<IServerSocket> m_Socket;
public:
Server(std::unique_ptr<IServerSocket>&& a_Socket) : m_Socket(std::move(a_Socket)) {}
void Update(float a_Delta) {
m_State->Update(a_Delta);
}
void UpdateState(const std::shared_ptr<IServerState>& a_State) {
m_State = a_State;
m_State->SetServer(this);
}
};
} // namespace server
} // namespace td