#include <C4InteractiveThread.h>
Classes | |
class | Callback |
Public Member Functions | |
C4InteractiveThread () | |
~C4InteractiveThread () | |
bool | AddProc (StdSchedulerProc *pProc) |
void | RemoveProc (StdSchedulerProc *pProc) |
bool | PushEvent (C4InteractiveEventType eEventType, void *pData=nullptr) |
void | ProcessEvents () |
bool | ThreadLog (const char *szMessage,...) GNUC_FORMAT_ATTRIBUTE_O |
bool | ThreadLogFatal (const char *szMessage,...) GNUC_FORMAT_ATTRIBUTE_O |
bool | ThreadLogS (const char *szMessage,...) GNUC_FORMAT_ATTRIBUTE_O |
bool | ThreadLogDebug (const char *szMessage,...) GNUC_FORMAT_ATTRIBUTE_O |
template<typename RType = void, typename Functor > | |
bool | ThreadPostAsync (Functor function) |
void | SetCallback (C4InteractiveEventType eEvent, Callback *pnNetworkCallback) |
void | ClearCallback (C4InteractiveEventType eEvent, Callback *pnNetworkCallback) |
Definition at line 59 of file C4InteractiveThread.h.
C4InteractiveThread::C4InteractiveThread | ( | ) |
Definition at line 23 of file C4InteractiveThread.cpp.
References StdScheduler::Add(), Application, Ev_None, C4InteractiveThreadNotifyProc::SetNotify(), and ZeroMem().
C4InteractiveThread::~C4InteractiveThread | ( | ) |
Definition at line 36 of file C4InteractiveThread.cpp.
References Application, and StdScheduler::Remove().
bool C4InteractiveThread::AddProc | ( | StdSchedulerProc * | pProc | ) |
Definition at line 48 of file C4InteractiveThread.cpp.
References StdSchedulerThread::Add(), StdScheduler::getProcCnt(), and StdSchedulerThread::Start().
Referenced by C4StartupNetDlg::CheckVersionUpdate(), C4Network2IO::Init(), C4ChatControl::OnConnectBtn(), and C4StartupNetListEntry::SetRefQuery().
|
inline |
Definition at line 122 of file C4InteractiveThread.h.
Referenced by C4Network2IO::Clear(), C4Network2IO::Init(), C4ChatControl::~C4ChatControl(), C4StartupModsDlg::~C4StartupModsDlg(), and C4StartupNetDlg::~C4StartupNetDlg().
void C4InteractiveThread::ProcessEvents | ( | ) |
Definition at line 121 of file C4InteractiveThread.cpp.
References DebugLog(), Ev_Function, Ev_Last, Ev_Log, Ev_LogDebug, Ev_LogFatal, Ev_LogSilent, Ev_None, StdStrBuf::getData(), Log(), LogFatal(), LogSilent(), C4InteractiveThread::Callback::OnThreadEvent(), and StdStrBuf::Take().
Referenced by C4Network2IO::Clear(), C4InteractiveThreadNotifyProc::Execute(), and C4Network2UPnPP::~C4Network2UPnPP().
bool C4InteractiveThread::PushEvent | ( | C4InteractiveEventType | eEventType, |
void * | pData = nullptr |
||
) |
Definition at line 72 of file C4InteractiveThread.cpp.
References CStdLock::Clear(), CStdNotifyProc::Notify(), and C4TimeMilliseconds::Now().
Referenced by C4HTTPClient::Execute(), C4Network2IO::HandlePacket(), C4Network2IO::OnDisconn(), ThreadLog(), ThreadLogDebug(), ThreadLogFatal(), ThreadLogS(), and ThreadPostAsync().
void C4InteractiveThread::RemoveProc | ( | StdSchedulerProc * | pProc | ) |
Definition at line 60 of file C4InteractiveThread.cpp.
References StdScheduler::getProcCnt(), StdScheduler::hasProc(), StdSchedulerThread::Remove(), and StdSchedulerThread::Stop().
Referenced by C4Network2IO::Clear(), C4StartupNetListEntry::ClearRef(), and C4StartupNetDlg::~C4StartupNetDlg().
|
inline |
Definition at line 120 of file C4InteractiveThread.h.
Referenced by C4ChatControl::C4ChatControl(), C4StartupModsDlg::C4StartupModsDlg(), C4StartupNetDlg::C4StartupNetDlg(), and C4Network2IO::Init().
bool C4InteractiveThread::ThreadLog | ( | const char * | szMessage, |
... | |||
) |
Definition at line 165 of file C4InteractiveThread.cpp.
References Ev_Log, FormatStringV(), StdStrBuf::GrabPointer(), and PushEvent().
Referenced by C4Network2ResList::AddLoad(), C4GameControlNetwork::DoInput(), C4Network2IO::HandlePacket(), C4Network2IO::OnError(), and C4Network2IO::OnPacket().
bool C4InteractiveThread::ThreadLogDebug | ( | const char * | szMessage, |
... | |||
) |
Definition at line 192 of file C4InteractiveThread.cpp.
References Ev_LogDebug, FormatStringV(), StdStrBuf::GrabPointer(), and PushEvent().
bool C4InteractiveThread::ThreadLogFatal | ( | const char * | szMessage, |
... | |||
) |
Definition at line 174 of file C4InteractiveThread.cpp.
References Ev_LogFatal, FormatStringV(), StdStrBuf::GrabPointer(), and PushEvent().
bool C4InteractiveThread::ThreadLogS | ( | const char * | szMessage, |
... | |||
) |
Definition at line 183 of file C4InteractiveThread.cpp.
References Ev_LogSilent, FormatStringV(), StdStrBuf::GrabPointer(), and PushEvent().
Referenced by C4Network2ResList::AddByCore(), C4Network2ResList::AddLoad(), C4Network2ResChunk::AddTo(), C4GameControlNetwork::CheckCompleteCtrl(), C4Network2IO::CheckTimeout(), C4Network2Res::Derive(), C4Network2IO::HandlePacket(), C4Network2Res::OnChunk(), C4Network2IO::OnConn(), C4Network2IO::OnDisconn(), C4Network2IO::OnPacket(), C4Network2::OnPuncherConnect(), C4Network2ResList::OnResComplete(), C4Network2Res::SetLoad(), and C4Network2Res::StartLoad().
|
inline |
Definition at line 114 of file C4InteractiveThread.h.
References Ev_Function, and PushEvent().
Referenced by C4Network2IRCClient::Join().