Files
CppNet/net/CppNet.cpp
2019-08-10 14:12:21 +08:00

71 lines
2.1 KiB
C++

#include "CppNet.h"
#include "PoolSharedPtr.h"
#include "EventHandler.h"
#include "MemaryPool.h"
#include "Timer.h"
#include "CppNetImpl.h"
#include "Log.h"
void cppnet::Init(int32_t thread_num, bool log) {
if (log) {
base::CLog::Instance().SetLogLevel(base::LOG_WARN_LEVEL);
base::CLog::Instance().SetLogName("CppNet.txt");
base::CLog::Instance().Start();
}
cppnet::CCppNetImpl::Instance().Init(thread_num);
}
void cppnet::Dealloc() {
cppnet::CCppNetImpl::Instance().Dealloc();
}
void cppnet::Join() {
if (!base::CLog::Instance().GetStop()) {
base::CLog::Instance().Join();
}
cppnet::CCppNetImpl::Instance().Join();
}
void cppnet::SetReadCallback(const read_call_back& func) {
cppnet::CCppNetImpl::Instance().SetReadCallback(func);
}
void cppnet::SetWriteCallback(const write_call_back& func) {
cppnet::CCppNetImpl::Instance().SetWriteCallback(func);
}
void cppnet::SetDisconnectionCallback(const connection_call_back& func) {
cppnet::CCppNetImpl::Instance().SetDisconnectionCallback(func);
}
//timer
uint64_t cppnet::SetTimer(int32_t interval, const timer_call_back& func, void* param, bool always) {
return cppnet::CCppNetImpl::Instance().SetTimer(interval, func, param, always);
}
void cppnet::RemoveTimer(uint64_t timer_id) {
cppnet::CCppNetImpl::Instance().RemoveTimer(timer_id);
}
//server
void cppnet::SetAcceptCallback(const connection_call_back& func) {
cppnet::CCppNetImpl::Instance().SetAcceptCallback(func);
}
bool cppnet::ListenAndAccept(int16_t port, std::string ip, uint32_t listen_num) {
return cppnet::CCppNetImpl::Instance().ListenAndAccept(port, ip, listen_num);
}
//client
void cppnet::SetConnectionCallback(const connection_call_back& func) {
cppnet::CCppNetImpl::Instance().SetConnectionCallback(func);
}
cppnet::Handle cppnet::Connection(int16_t port, std::string ip, const char* buf, int32_t buf_len) {
return cppnet::CCppNetImpl::Instance().Connection(port, ip, buf, buf_len);
}
cppnet::Handle cppnet::Connection(int16_t port, std::string ip) {
return cppnet::CCppNetImpl::Instance().Connection(port, ip);
}