#ifndef HEADER_NET_CACCEPTSOCKET #define HEADER_NET_CACCEPTSOCKET #include #include #include #include "Buffer.h" #include "SocketBase.h" #include "PoolSharedPtr.h" namespace cppnet { class CAcceptEventHandler; class CAcceptSocket : public CSocketBase, public base::CEnableSharedFromThis { public: CAcceptSocket(std::shared_ptr& event_actions, uint32_t net_index, std::shared_ptr& call_back_handle); ~CAcceptSocket(); bool Bind(uint16_t port, const std::string& ip = ""); bool Listen(); void SyncAccept(); public: void _Accept(base::CMemSharePtr& event); public: base::CMemSharePtr _accept_event; }; } #endif