Public Member Functions | |
NetworkModuleTCP (NetworkManager *pNetworkManager) | |
virtual | ~NetworkModuleTCP () |
virtual eError | GetInfo (NetworkModuleInfo_t *pOutput) const |
virtual NetworkEndpoint * | NewEndpoint (void) |
virtual NetworkModuleSettings * | NewSettings (uint32_t uGameID, const char *pGameName) |
virtual eError | NotificationLock (eSocketFlags uFlags) |
Obtain the module lock. | |
virtual eError | NotificationUnlock (eSocketFlags uFlags) |
Release the module lock. | |
void | PingHostSocket (void) |
Public Member Functions inherited from Burger::NetworkModule | |
const Burger::StaticRTTI * | get_StaticRTTI (void) const noexcept override |
Get the description to the class. | |
NetworkModule (NetworkManager *pNetworkManager, eNetworkProtocol uType) | |
Base constructor for a NetworkModule. | |
virtual | ~NetworkModule () |
Base destructor for a NetworkModule. | |
ForwardLink * | GetForwardLink (void) |
uint_t | IsAllocated (void) const |
eNetworkProtocol | GetType (void) const |
NetworkManager * | GetNetworkManager (void) const |
void | Poll (void) noexcept |
Public Member Functions inherited from Burger::Base | |
const char * | get_class_name (void) const noexcept |
Get the name of the class. | |
virtual | ~Base () noexcept=default |
Destructor. | |
Static Public Member Functions | |
static NetworkModuleTCP * | New (NetworkManager *pNetworkManager) |
Static Public Member Functions inherited from Burger::NetworkModule | |
static NetworkModule * | Fixup (ForwardLink *pInput) |
Public Attributes | |
Mutex | m_NotificationLock |
Message lock. | |
Mutex | m_ListLock |
Linked list lock. | |
Mutex | m_WaitLock |
Event reply lock. | |
Thread | m_WorkerThread |
Background thread. | |
SocketType | m_uSocketServer |
Host socket. | |
SocketType | m_uSocketWakeupServer |
Special socket that can send messages to the server to cancel select() calls. | |
NetworkEndpointInstanceTCP * | m_pActiveEndpointList |
Linked list of active endpoints. | |
uint32_t | m_uEndpointListState |
Increment every time m_pActiveEndpointList is modified. | |
uint_t | m_uServerPort |
Port for the server. | |
uint_t | m_uMinimumPort |
Lowest port to scan for. | |
uint_t | m_uMaximumPort |
Highest port to scan for. | |
uint_t | m_bStartedNetworkManager |
TRUE if the NetworkManager.Init() call was issued | |
volatile uint32_t | m_bAbortThread |
Set to TRUE to have the background thread to shut down. | |
Static Public Attributes | |
static const uint_t | kMaxDatagamSize = 65507 |
static const uint_t | kDefaultServerPort = 20764 |
static const uint_t | kDefaultMinimumPort = 2300 |
Default DirectPlay minimum listen port. | |
static const uint_t | kDefaultMaximumPort = 2400 |
Default DirectPlay maximum listen port. | |
Static Public Attributes inherited from Burger::NetworkModule | |
static const Burger::StaticRTTI | g_StaticRTTI |
static const uint32_t | kVersion = 0x100 |
Version 1.0. | |
Static Public Attributes inherited from Burger::Base | |
static const Burger::StaticRTTI | g_StaticRTTI |
The global description of the class. | |
Protected Member Functions | |
eError | InitPingSockets (void) |
void | ShutdownPingSockets (void) |
eError | InitBackgroundThread (void) |
void | ShutdownBackgroundThread (void) |
Static Protected Member Functions | |
static uintptr_t | WorkerThread (void *pThis) |
Private Member Functions | |
NetworkModuleTCP (const NetworkModuleTCP &)=delete | |
NetworkModuleTCP & | operator= (const NetworkModuleTCP &)=delete |
NetworkModuleTCP (NetworkModuleTCP &&)=delete | |
NetworkModuleTCP & | operator= (NetworkModuleTCP &&)=delete |
Additional Inherited Members | |
Protected Attributes inherited from Burger::NetworkModule | |
ForwardLink | m_NextModule |
Next module in the linked list. | |
NetworkManager * | m_pNetworkManager |
Parent network manager. | |
uint_t | m_bAllocated |
Was allocated using New() | |
eNetworkProtocol | m_uType |
Module type. | |
|
privatedelete |
|
privatedelete |
Burger::NetworkModuleTCP::NetworkModuleTCP | ( | NetworkManager * | pNetworkManager | ) |
|
virtual |
|
virtual |
Implements Burger::NetworkModule.
|
protected |
|
protected |
|
static |
|
virtual |
Implements Burger::NetworkModule.
|
virtual |
Implements Burger::NetworkModule.
|
virtual |
Obtain the module lock.
uFlags | Which lock is requested, the datagram or the stream? |
Reimplemented from Burger::NetworkModule.
|
virtual |
Release the module lock.
uFlags | Which lock is requested, the datagram or the stream? |
Reimplemented from Burger::NetworkModule.
|
privatedelete |
|
privatedelete |
void Burger::NetworkModuleTCP::PingHostSocket | ( | void | ) |
|
protected |
|
protected |
|
staticprotected |
|
static |
Default DirectPlay maximum listen port.
|
static |
Default DirectPlay minimum listen port.
|
static |
|
static |
volatile uint32_t Burger::NetworkModuleTCP::m_bAbortThread |
Set to TRUE to have the background thread to shut down.
uint_t Burger::NetworkModuleTCP::m_bStartedNetworkManager |
TRUE if the NetworkManager.Init() call was issued
Mutex Burger::NetworkModuleTCP::m_ListLock |
Linked list lock.
Mutex Burger::NetworkModuleTCP::m_NotificationLock |
Message lock.
NetworkEndpointInstanceTCP* Burger::NetworkModuleTCP::m_pActiveEndpointList |
Linked list of active endpoints.
uint32_t Burger::NetworkModuleTCP::m_uEndpointListState |
Increment every time m_pActiveEndpointList is modified.
uint_t Burger::NetworkModuleTCP::m_uMaximumPort |
Highest port to scan for.
uint_t Burger::NetworkModuleTCP::m_uMinimumPort |
Lowest port to scan for.
uint_t Burger::NetworkModuleTCP::m_uServerPort |
Port for the server.
SocketType Burger::NetworkModuleTCP::m_uSocketServer |
Host socket.
SocketType Burger::NetworkModuleTCP::m_uSocketWakeupServer |
Special socket that can send messages to the server to cancel select() calls.
Mutex Burger::NetworkModuleTCP::m_WaitLock |
Event reply lock.
Thread Burger::NetworkModuleTCP::m_WorkerThread |
Background thread.