![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cNetSystem.h>
Public Member Functions | |
bool | isInitNet () const noexcept |
const WSADATA * | get_NetData () const noexcept |
![]() | |
virtual | ~CObject () |
virtual bool | isValidCheck () const noexcept |
< memory allocation and structure definitions are valid. More... | |
virtual void | AssertValid () const |
< memory allocation and structure definitions are valid. More... | |
virtual void | Serialize (cArchive &a) |
![]() | |
cHeapObject () | |
virtual | ~cHeapObject () |
bool | IsValidInsideN (INT_PTR index) const |
bool | IsValidInsidePtr (void const *pTest) const |
virtual size_t | GetHeapStatsThis (OUT ITERATE_t &iAllocCount) const |
virtual bool | isValidCheck () const noexcept |
![]() | |
cRefBase (int iRefCount=0) noexcept | |
virtual | ~cRefBase () |
int | get_RefCount () const noexcept |
HASHCODE_t | get_HashCode () const noexcept |
STDMETHOD_ (HASHCODE_t, get_HashCodeX)() const noexcept | |
virtual void | onFinalRelease () |
bool | isValidObj () const noexcept |
STDMETHOD_ (ULONG, AddRef)(void) override | |
STDMETHOD_ (ULONG, Release)(void) override | |
STDMETHOD() | QueryInterface (const IID &riid, void __RPC_FAR *__RPC_FAR *ppvObject) override |
void | IncRefCount () |
void | DecRefCount () |
bool | isStaticConstruct () const noexcept |
void | StaticConstruct () |
void | StaticDestruct () |
bool | isDestructing () noexcept |
void | SetDestructing () |
Static Public Member Functions | |
static bool | IsInitNetCalls () |
static HRESULT | GetLastError () |
static HRESULT | GetLastErrorDef (HRESULT hResDef=E_FAIL) |
![]() | |
static TYPE *__stdcall | get_Single () |
template<class TYPE2 > | |
static TYPE2 *__stdcall | get_SingleT () |
static TYPE &__stdcall | I () |
![]() | |
static bool | isSingleCreated () noexcept |
static TYPE * | get_SingleU () noexcept |
static TYPE * | get_Single () |
template<class TYPE2 > | |
static TYPE2 *__stdcall | get_SingleCast () |
static TYPE & | I () noexcept |
![]() | |
static void __stdcall | ReleaseModule (HMODULE hMod) |
Protected Member Functions | |
cNetSystem () | |
~cNetSystem () | |
![]() | |
cSingletonSmart (cNetSystem *pObject, const TYPEINFO_t &rAddrCode, int iRefCountStart=0) | |
const void * | get_HeapPtr () const noexcept override |
Get the top level (outermost, freeable) class pointer. I can delete get_HeapPtr(). More... | |
![]() | |
cSingleton (TYPE *pObject, const TYPEINFO_t &rAddrCode=typeid(TYPE)) noexcept | |
virtual | ~cSingleton () |
![]() | |
cSingletonStatic (TYPE *pObject) noexcept | |
virtual | ~cSingletonStatic () noexcept |
![]() | |
cSingletonRegister (const TYPEINFO_t &rAddrCode) noexcept | |
virtual | ~cSingletonRegister () |
void | RegisterSingleton () |
Friends | |
class | cSingleton< cNetSystem > |
Additional Inherited Members | |
![]() | |
static cThreadLockFast | sm_LockSingle |
common lock for all cSingleton. More... | |
![]() | |
HMODULE | m_hModuleLoaded |
What modules loaded this ? So singletons can be destroyed if DLL/SO unloads. More... | |
![]() | |
static TYPE * | sm_pThe = nullptr |
pointer to the one and only object of this TYPE. ASSUME automatically init to = nullptr. More... | |
Must call WSAStartup() for any of the network code to work. (cNetSocket or cNetHost lookup) Must use cNetSystemPtr to reference this. Only does something for _WIN32. linux doesn't need this.
|
protected |
WSAStartup() calls are counted under the hood. _WIN32 only!
sm_nInitNetCalls is not really needed.
|
protected |
_WIN32 only! counted exit calls.
|
inlinenoexcept |
|
inlinestatic |
Get last network error for this thread. _WIN32 needs different call for last error. WSAGetLastError!=normal GetLastError, no idea why. I hear under the hood is just forwarded to GetLastError.
An error occurred. try to find out why.
|
inlinenoexcept |
relevant for _WIN32 only! Init Failed!
|
inlinestatic |
global check for anyone calling cNetSystem relevant for _WIN32 only!
|
friend |