-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathCTestServer.cpp
More file actions
60 lines (47 loc) · 1.36 KB
/
Copy pathCTestServer.cpp
File metadata and controls
60 lines (47 loc) · 1.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include "CTestServer.h"
#include "LBTcpHandler.h"
LBNet::ErrCode Echo(LBNet::CPacketHeader* pHeader, LBNet::Size pSize, LBNet::SharedObject<LBNet::CGameObject>& pObject)
{
auto aEchoPacket = reinterpret_cast<CPacketEcho*>(pHeader);
LBNet::CConsoleLog(LBNet::ELogType::eLogInfo) << "Echo Data : " << aEchoPacket->mData;
// 패킷 Send를 위해 Send에서 메모리 버퍼를 받아 사용한다.
auto aSender = LBNet::CSender::Allocate<CPacketEcho>();
auto aPacket = aSender->GetWritePointer<CPacketEcho>();
aPacket->mMessage = 1;
aPacket->mData = aEchoPacket->mData;
return pObject->Send(aSender);
}
void CTestObject::OnAccept()
{
LBNet::CConsoleLog(LBNet::ELogType::eLogInfo) << "On Accept";
}
void CTestObject::OnDisconnect()
{
LBNet::CConsoleLog(LBNet::ELogType::eLogInfo) << "On Disconnect";
}
CTestServer::~CTestServer()
{
}
LBNet::ErrCode CTestServer::Initialize()
{
LBNet::ErrCode aErrCode = __super::Initialize();
if (aErrCode != 0)
return aErrCode;
LBNet::CSender::Initialize(30000);
// 패킷 이벤트 추가
aErrCode = LBNet::CTcpHandler::Instance().Register(1, &Echo);
if (aErrCode != 0)
return aErrCode;
return 0;
}
LBNet::ErrCode CTestServer::LazyInitialize()
{
LBNet::ErrCode aErrCode = __super::LazyInitialize();
if (aErrCode != 0)
return aErrCode;
return 0;
}
LBNet::ErrCode CTestServer::Close()
{
return __super::Close();
}