|
| cNetServerConnection (cNetServerGroup *pServerGroup, cNetServerPort *pListenPort, SOCKET hSocket, const cNetAddress &addrPeer, cProtocolStream *pProtocol=nullptr) |
|
virtual | ~cNetServerConnection () |
|
const char * | get_ServerName () const |
|
HASHCODE_t | get_HashCode () const noexcept |
|
| STDMETHOD_ (HASHCODE_t, get_HashCodeX)() const noexcept override |
|
| STDMETHOD_ (cString, get_Name)() const override |
|
| STDMETHOD_ (cStringA, get_SymName)() const |
|
HRESULT | ProcessStreamInp () |
|
virtual HRESULT | onEventRead () override |
| FD_WRITE similar to MFC OnReceive. More...
|
|
virtual HRESULT | OnTickStream () |
|
virtual void | Close () override |
|
| IUNKNOWN_DISAMBIG (cRefBase) |
|
| 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 () |
|
| cNetStream (SOCKET hSocket=INVALID_SOCKET, bool bAsync=false, size_t nRxBufferLimit=(cStream::k_FILE_BLOCK_SIZE/2)) |
|
virtual | ~cNetStream (void) |
|
bool | isConnected () const |
|
bool | isConnecting () const noexcept |
|
bool | isValidSocket () const noexcept |
|
HASHCODE_t | get_HashCode () const noexcept |
|
bool | isInputDesired () const |
|
bool | isInputEmpty () const |
|
bool | isOutputEmpty () const |
|
ITERATE_t | get_InputQty () const |
|
ITERATE_t | get_OutputQty () const |
|
virtual HRESULT | onEventWrite () |
| override these if we want to know if data is ready to TX or RX More...
|
|
HRESULT | UpdateQWrite () |
|
HRESULT | UpdateQRead () |
|
cStreamOutput * | get_StreamOut () |
|
cStreamInput * | get_StreamInp () |
|
virtual HRESULT | WriteX (const void *pData, size_t nDataSize) override |
|
virtual HRESULT | ReadX (void *pData, size_t nDataSize) override |
|
virtual size_t | SetSeekSizeMin (size_t nSizeMin=k_FILE_BLOCK_SIZE) override |
|
virtual STREAM_SEEKRET_t | Seek (STREAM_OFFSET_t iOffset, SEEK_ORIGIN_TYPE eSeekOrigin) override |
| Disambiguate Seek for cStreamBase to cStreamInput for stupid compiler. More...
|
|
void | SetStateEstablished () |
|
| UNITTEST_FRIEND (cNetStream) |
|
virtual STREAM_POS_t | GetPosition () const override |
|
virtual STREAM_POS_t | GetLength () const override |
|
void | SeekToBegin () |
|
STREAM_POS_t | SeekToEnd () |
|
| cStreamInput () noexcept |
|
virtual | ~cStreamInput () |
|
virtual HRESULT | ReadX (OUT void *pData, size_t nDataSize) |
|
HRESULT | ReadAll (OUT cHeapBlock &block, size_t nSizeExtra=0) |
|
virtual HRESULT | ReadStringLine (OUT char *pszBuffer, StrLen_t iSizeMax) |
|
virtual HRESULT | ReadStringLine (OUT wchar_t *pszBuffer, StrLen_t iSizeMax) |
|
HRESULT | ReadT (OUT void *pVal, size_t nSize) |
|
template<typename TYPE > |
HRESULT | ReadT (OUT TYPE &val) |
|
template<typename TYPE > |
HRESULT | ReadTN (OUT TYPE &val) |
|
HRESULT | ReadSize (OUT size_t &nSize) |
|
template<typename TYPE > |
HRESULT | ReadSizeT (OUT TYPE &n) |
|
HRESULT | ReadHashCode (OUT UINT32 &nHashCode) |
|
HRESULT | ReadHashCode (OUT UINT64 &nHashCode) |
|
HRESULT | ReadN (OUT BYTE *pBuffer, size_t nSizeMax) |
|
template<typename _CH > |
HRESULT | ReadStringN (OUT _CH *pszStr, StrLen_t iSizeMax) |
|
virtual HRESULT | ReadPeek (void *pData, size_t nDataSize) |
|
virtual | ~cStreamBase () |
|
void | SeekToBegin () |
|
STREAM_POS_t | SeekToEnd () |
|
| cStreamOutput () noexcept |
|
virtual | ~cStreamOutput () |
|
HRESULT | WriteT (const void *pVal, size_t nDataSize) |
|
template<typename TYPE > |
HRESULT | WriteT (TYPE val) |
|
HRESULT | WriteSize (size_t nSize) |
|
HRESULT | WriteHashCode (HASHCODE_t nHashCode) |
|
HRESULT | WriteN (const void *pBuffer, size_t nSize) |
|
template<typename _CH > |
HRESULT | WriteStringN (const _CH *pszStr) |
|
template<typename _CH > |
HRESULT | WriteCharRepeat (_CH nChar, int nCount=1) |
|
virtual HRESULT | WriteString (const char *pszStr) |
|
virtual HRESULT | WriteString (const wchar_t *pszStr) |
|
StrLen_t | VPrintf (const char *pszFormat, va_list args) |
|
StrLen_t | VPrintf (const wchar_t *pszFormat, va_list args) |
|
StrLen_t _cdecl | Printf (const char *pszFormat,...) |
|
StrLen_t _cdecl | Printf (const wchar_t *pszFormat,...) |
|
HRESULT | WriteStream (cStreamInput &sInp, STREAM_POS_t nSizeMax=k_FILE_BLOCK_SIZE, IStreamProgressCallback *pProgress=nullptr, TIMESYSD_t nTimeout=0) |
| Copy cStreamInput to this stream. More...
|
|
virtual HRESULT | FlushX () |
|
void | Add (const cStreamStats &n) |
|
a single client/connection/socket to the cNetServer. Raw Stream. used as opaque holder class for a cProtocolStream for the server. connected via cNetStream/cNetSocket
- Note
- Isolates cProtocolStream from cNetSocket/cNetStream. e.g. pProtocol = cHttpProtocolStream