DragonNest/Common/NetworkLib/NetSocketUDP.h
Cussrro 47f7895977 Revert "修复编码问题"
This reverts commit 9e69c01767.
2024-12-21 10:04:04 +08:00

43 lines
No EOL
1 KiB
C++

#pragma once
#include <winsock.h>
#include "thread.h"
#include "CryptPacket.h"
#include "RUDPCommonDef.h"
#include "CryptPacket.h"
#include "Buffer.h"
class CNetSocketRUDP;
class CRUDPReceiver;
class CNetSocketUDP : public Thread, public CCryptoPacket
{
public:
CNetSocketUDP(const char * szNick, CNetSocketRUDP * pSocket);
~CNetSocketUDP();
void DetectAddr(const char * ip, int port);
void SetReciever(CRUDPReceiver * pReciever);
bool Create(int port = 0);
int Send(unsigned int main_header, unsigned int sub_header, void * data, int size, unsigned long addr, unsigned short port);
void Receive(void * data, int size, _ADDR * addr);
unsigned short GetPort();
unsigned long GetIP();
private:
int SendTo(void * data, int size, SOCKADDR_IN * addr);
void SetDirection(unsigned long iIP, unsigned short iPort);
void Run();
SOCKADDR_IN m_DirectionAddr;
SOCKET m_hSocket;
_ADDR m_DetectAddr;
unsigned long m_UDPIP;
unsigned short m_UDPPort;
CRUDPReceiver * m_pReciever;
CNetSocketRUDP * m_pNetSocket;
};