From 366e5004e6f09f69d945a1f41816cef08e442a2b Mon Sep 17 00:00:00 2001 From: littleblack111 Date: Sun, 15 Jun 2025 14:23:00 +0800 Subject: fix: server types --- include/libsock/server/client.hpp | 28 +++++++++++++++------------- include/libsock/server/server.hpp | 8 +++++--- 2 files changed, 20 insertions(+), 16 deletions(-) (limited to 'include/libsock/server') diff --git a/include/libsock/server/client.hpp b/include/libsock/server/client.hpp index ec5c6bc..eb528a2 100644 --- a/include/libsock/server/client.hpp +++ b/include/libsock/server/client.hpp @@ -1,6 +1,7 @@ #pragma once #include "../types.hpp" +#include "server.hpp" #include #include #include @@ -11,7 +12,7 @@ #include namespace LibSock { -namespace Client { +namespace Server { struct SRecvData { std::string data; @@ -29,9 +30,12 @@ enum eEventType : std::uint8_t { WRITE }; +class Clients; +inline SP pClients; + class Client { public: - Client(bool track = false, bool oneShot = true); + Client(SP server = SP(pServer), SP clients = pClients, bool track = false, bool oneShot = true); ~Client(); const std::string &getName() const; @@ -49,15 +53,15 @@ class Client { bool isValid(); private: - WP self; + WP self; SP m_sockfd; - sockaddr_in m_addr; - socklen_t m_addrLen = sizeof(m_addr); - std::string m_name; - std::string m_ip; - int m_port; - bool m_track; - bool m_oneShot; + sockaddr_in m_addr; + socklen_t m_addrLen = sizeof(m_addr); + std::string m_name; + std::string m_ip; + int m_port; + bool m_track; + bool m_oneShot; std::optional m_szReading = std::nullopt; @@ -98,7 +102,5 @@ class Clients { std::vector>> m_vClients; std::vector m_vDatas; }; -inline SP pClients; - -} // namespace Client +} // namespace Server } // namespace LibSock diff --git a/include/libsock/server/server.hpp b/include/libsock/server/server.hpp index d831fd8..1b52e2f 100644 --- a/include/libsock/server/server.hpp +++ b/include/libsock/server/server.hpp @@ -1,7 +1,9 @@ #pragma once + #include "../types.hpp" #include #include +#include namespace LibSock { namespace Server { @@ -14,11 +16,11 @@ class Server { private: SP m_sockfd; - sockaddr_in m_addr; - uint16_t m_port; + sockaddr_in m_addr; + uint16_t m_port; mutable std::mutex m_mutex; }; -inline UP pServer; +inline SP pServer; } // namespace Server } // namespace LibSock -- cgit v1.2.3