📄 sockets.h
字号:
/* by My Destiny Team */#ifndef __GAMESERVER_SOCKETS_H__
#define __GAMESERVER_SOCKETS_H__
#ifdef FD_SETSIZE
# undef FD_SETSIZE
#endif
#ifdef __FD_SETSIZE
# undef __FD_SETSIZE
#endif
#define FD_SETSIZE 1024
#define __FD_SETSIZE 1024
#ifdef WIN32
# include <winsock2.h>
# define sError WSAGetLastError()
# define socklen_t int
# define sIoctl ioctlsocket
#else /* Linux */
# include <errno.h>
# include <unistd.h>
# include <sys/types.h>
# include <arpa/inet.h>
# include <sys/socket.h>
# include <netinet/in.h>
# define sError errno
# define sIoctl ioctl
# define closesocket(s) close(s)
# define SOCKET_ERROR (-1)
# define INVALID_SOCKET (-1)
typedef int SOCKET;
#endif
#include <base.h>
#include "Main.h"
struct sSocket {
SOCKET Sock;
u32 clientID;
time_t lastPacket;
sockaddr_in socketInfo; union uInfo { u32 x; struct sFlag { bool sHello; } Flag; } Info;
};
class cSocket
{
public:
// Constructor
cSocket();
// Destructor
virtual ~cSocket();
// Inicia a conexao do socket do server
//
// Retorna false se ocorreu um erro durante a cricao do socket
// Retorna true se o socket foi iniciado com sucesso
bool StartServer();
// Verifica se o socket esta inativo
void CheckSockets();
// Aceita novos clients no socket do servidor
//
// Retorna false se o socket do servidor
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -