📄 nwiocpserver.h
字号:
#pragma once
#ifdef NWSERVER_EXPORTS
#define NWSERVER_API __declspec(dllexport)
#else
#define NWSERVER_API __declspec(dllimport)
#endif
//一个比较上层的类,主要是控制网络模块,并为上层提供服务。
#include "SocketServer.h"
#include "NWClientConnectionInfo.h"
class NWSERVER_API NWIocpServer :public CSocketServer
{
public:
NWIocpServer(void);
~NWIocpServer(void);
/************************************************
函数原型:InitServer();
参数:
返回值:
功能: 初始化服务器,
************************************************/
int InitServer(USHORT usServerPort, IMessageProcess* pfnMsgNotify);
/************************************************
函数原型:UninitServer();
参数:
返回值:
功能: 反初始化服务器,
************************************************/
int UninitServer();
/************************************************
函数原型:StartServer();
参数:
返回值:
功能: 启动服务器,
仅用于windows中。
************************************************/
int StartServer( );//启动
/************************************************
函数原型:StopServer();
参数:
返回值:
功能: 停止服务器,
************************************************/
int StopServer();
/************************************************
函数原型:RegisterMsgFilter();
参数:
返回值:
功能: 注册消息输出函数,
************************************************/
int RegisterMsgFilter( IMessageProcess* pfnMsgNotify );
/************************************************
函数原型:SendData();
参数:
返回值:
功能: 发送数据,
************************************************/
int SendData (const CLIENTKEY &ulnClientID,
const void * pData,
const size_t &datalength );
int ShutdownClient(const CLIENTKEY ulClientID );
/************************************************
函数原型:GetClientCount();
参数:
返回值:
功能: 得到当前连接的数据,
************************************************/
UINT64 GetClientCount( )
{
return m_pcClientManager->GetClientCount();
}
int PreparePackSink();//将上层的数据包转化成本模块能理解的数据包
int PackDataToClient( const CLIENTKEY &ulnClientID,
const void * const pData,
const size_t &datalength );
int SendPackToClient( const CLIENTKEY &ulnClientID /* -1 */ );
const char * GetClientInfo( const CLIENTKEY & ulnClientID );
void OnStartAcceptingConnections();//无数这样的函数,用来和上层交付
//static NWIocpServer * GetInstance()
//{
// return & m_Instance ;
//}
protected:
// MyMSGProcessThreadList m_lsMSGProcessThreadList ;
//static NWIocpServer m_Instance;
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -