Divide Framework 0.1
A free and open-source 3D Framework under heavy development
Loading...
Searching...
No Matches
Divide::LocalClient Class Referencefinal

#include <LocalClient.h>

+ Inheritance diagram for Divide::LocalClient:

Public Member Functions

 LocalClient (Kernel &parent)
 
- Public Member Functions inherited from Divide::ASIO
virtual bool sendPacket (WorldPacket &p) const
 Send a packet to the target server.
 
virtual bool init (const string &address, U16 port)
 Init a connection to the target address:port.
 
virtual bool connect (const string &address, U16 port)
 
virtual void disconnect ()
 Disconnect from the server.
 
virtual bool isConnected () const noexcept
 Check connection state;.
 
virtual void toggleDebugOutput (bool debugOutput) noexcept
 Toggle the printing of debug information.
 
virtual ~ASIO ()
 
- Public Member Functions inherited from Divide::KernelComponent
 KernelComponent (Kernel &parent) noexcept
 
virtual ~KernelComponent ()=default
 
Kernelparent () noexcept
 
const Kernelparent () const noexcept
 
- Public Member Functions inherited from Divide::NonCopyable
 NonCopyable (const NonCopyable &)=delete
 
NonCopyableoperator= (const NonCopyable &)=delete
 
 NonCopyable (NonCopyable &&)=default
 
NonCopyableoperator= (NonCopyable &&)=default
 

Private Member Functions

void handlePacket (WorldPacket &p) override
 
void HandlePongOpCode (WorldPacket &p) const
 
void HandleHeartBeatOpCode (WorldPacket &p)
 
void HandleDisconnectOpCode (WorldPacket &p)
 
void HandleGeometryAppendOpCode (WorldPacket &p)
 

Additional Inherited Members

- Public Types inherited from Divide::ASIO
using LOG_CBK = DELEGATE< void, std::string_view, bool >
 
- Static Public Member Functions inherited from Divide::ASIO
static void SET_LOG_FUNCTION (const LOG_CBK &cbk)
 
static void LOG_PRINT (const char *msg, bool error=false)
 
- Protected Member Functions inherited from Divide::ASIO
 ASIO () noexcept=default
 
void close ()
 
virtual void handlePacket (WorldPacket &p)=0
 
- Protected Member Functions inherited from Divide::NonCopyable
 NonCopyable ()=default
 
 ~NonCopyable ()=default
 
- Protected Attributes inherited from Divide::ASIO
boost::asio::io_context _ioService
 
std::unique_ptr< boost::asio::io_context::work > _work
 
std::unique_ptr< std::thread > _thread
 
Client_uptr _localClient
 
bool _connected {false}
 
bool _debugOutput {true}
 
string _address
 
string _port
 
- Protected Attributes inherited from Divide::KernelComponent
Kernel_parent
 
- Static Protected Attributes inherited from Divide::ASIO
static LOG_CBK s_logCBK
 

Detailed Description

Definition at line 41 of file LocalClient.h.

Constructor & Destructor Documentation

◆ LocalClient()

Divide::LocalClient::LocalClient ( Kernel parent)
explicit

Definition at line 13 of file LocalClient.cpp.

Member Function Documentation

◆ HandleDisconnectOpCode()

void Divide::LocalClient::HandleDisconnectOpCode ( WorldPacket p)
private

Definition at line 49 of file LocalClient.cpp.

◆ HandleGeometryAppendOpCode()

void Divide::LocalClient::HandleGeometryAppendOpCode ( WorldPacket p)
private

Definition at line 57 of file LocalClient.cpp.

◆ HandleHeartBeatOpCode()

void Divide::LocalClient::HandleHeartBeatOpCode ( WorldPacket p)
private

nothing. Heartbeats keep us alive \:D/

Definition at line 80 of file LocalClient.cpp.

◆ handlePacket()

void Divide::LocalClient::handlePacket ( WorldPacket p)
overrideprivatevirtual

Define this functions to implement various packet handling (a switch statement for example) switch(p.getOpcode()) { case SMSG_XXXXX: bla bla bla break; case MSG_HEARTBEAT: break;}

Implements Divide::ASIO.

Definition at line 17 of file LocalClient.cpp.

◆ HandlePongOpCode()

void Divide::LocalClient::HandlePongOpCode ( WorldPacket p) const
private

Definition at line 37 of file LocalClient.cpp.


The documentation for this class was generated from the following files: