|
| cXProtocolServerStreamImpl (cXProtocolFactory *pProtocolFactory, IUnkObject *pServerConnection, cStreamInput *pStreamInp, cStreamOutput *pStreamOut) |
|
| IUNKNOWN_DISAMBIG (cRefBase) |
|
| cXProtocolServerStream (cXProtocolFactory *pProtocolFactory, IUnkObject *pServerConnection, cStreamInput *pStreamInp, cStreamOutput *pStreamOut) |
|
virtual | ~cXProtocolServerStream () |
|
HASHCODE_t | get_HashCode () const noexcept |
|
virtual bool | isClientSide () const override |
|
| STDMETHOD_ (cString, get_Name)() const override |
|
| STDMETHOD_ (PLEVEL_TYPE, get_PrivLevel)() const override |
|
| STDMETHOD_ (bool, CanBeDetectedBy)(const IAuthUser *pViewer) const override |
|
virtual HRESULT | DisposeThis () override |
|
virtual HRESULT | ProcessStreamPacket () override |
|
virtual HRESULT | WriteString (const char *pszStr) override |
|
virtual HRESULT | OnTickStream () override |
|
| cProtocolStream (IProtocolFactory *pProtocolFactory, IUnkObject *pServerConnection, cStreamInput *pStreamInp, cStreamOutput *pStreamOut) |
|
virtual | ~cProtocolStream () |
|
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 override |
|
bool | isConnected () const |
|
cStreamInput * | get_StreamInp () const |
|
cStreamOutput * | get_StreamOut () const |
|
virtual size_t | get_ProtocolMaxMessageSize () const |
|
| cXProtocolBase (cXProtocolDataMgr *pProtocolDataMgr) |
|
virtual | ~cXProtocolBase () |
|
cXProtocolDataMgr * | get_DataMgr () const |
|
| cXProtocolServerTx (cXProtocolBase &rBase, cStreamOutput *pOut) |
|
virtual | ~cXProtocolServerTx () |
|
HRESULT | Send_Interfaces (cXObject *pObj) |
|
HRESULT | Send_InterfaceDef (const cScriptableInterfaceDef *pInterfaceDef) |
|
HRESULT | Send_InterfaceDef (SCRIPTINTERFACEID_t bInterfaceID) |
|
HRESULT | Send_InterfaceDefs (cXObject *pObj) |
|
HRESULT | Send_InterfaceDefs (UID_t uid) |
|
HRESULT | Send_TagDef (cAtomRef atomref) |
|
HRESULT | Send_PropsI (cXObject *pObj, const cScriptableInterfaceDef *pInterfaceDef) |
|
HRESULT | Send_Props (cXObject *pObj, const cScriptableInterfaceDef *pInterfaceDef) |
|
HRESULT | Send_Props (cXObject *pObj, SCRIPTINTERFACEID_t bInterfaceID) |
|
HRESULT | Send_Prop (UID_t uid, SCRIPTINTERFACEID_t bInterfaceID, SCRIPTPROPID_t bPropIndex, const cVariant &vVal) |
|
HRESULT | Send_Prop (cXObject *pObj, const cScriptableProp *pProp, const cVariant &vVal) |
|
HRESULT | Send_PropGet (cXObject *pObj, const cScriptableProp *pProp) |
|
HRESULT | Send_InvokeResponse (UID_t uid, SCRIPTINTERFACEID_t bInterfaceID, SCRIPTPROPID_t bMethodIndex, const cVariant &vValRet) |
|
HRESULT | Send_InvokeResponse (cXObject *pObj, const cScriptableMethod *pMethod, const cVariant &vValRet) |
|
HRESULT | Send_Tags (cXObject *pObj, bool bSendIfEmpty) |
|
HRESULT | Send_InvokeResponseV (const cVariant &vValRet) |
|
| cStreamOutput () noexcept |
|
virtual | ~cStreamOutput () |
|
virtual HRESULT | WriteX (const void *pData, size_t nDataSize) |
|
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 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 () |
|
virtual | ~cStreamBase () |
|
virtual STREAM_SEEKRET_t | Seek (STREAM_OFFSET_t iOffset, SEEK_ORIGIN_TYPE eSeekOrigin=SEEK_Set) |
|
void | SeekToBegin () |
|
STREAM_POS_t | SeekToEnd () |
|
virtual STREAM_POS_t | GetPosition () const |
|
virtual STREAM_POS_t | GetLength () const |
|
| 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 cStringA GRAYCALL | GetMsgName (XPROTO_t bMsg) |
|
cTimeSys | m_timePing |
| last time i got a ping from this client More...
|
|
IProtocolFactory *const | m_pProtocolFactory |
| What IProtocolFactory produced this? More...
|
|
IUnkObject *const | m_pServerConnection |
| the cNetServerConnection or other top level parent for this protocol. More...
|
|
HASHCODE_t const | m_nHashCode |
| the m_pClient->get_HashCode() id for this client connection/stream. More...
|
|
cXProtocolDataMgr *const | m_pProtocolDataMgr |
| Point back to the protocol singleton. More...
|
|
bool | m_bUseHashPropName |
| for stuff i send, should i hash the prop names ? XPROTO_HashProp More...
|
|
cFile | m_FileWork |
| The local file we are reading or writing for XPROTO_File. More...
|
|
static const size_t | k_Packet_Size_Max = cStream::k_FILE_BLOCK_SIZE + 16 |
|
static const BYTE | k_SIZE_MASK = 0x80 |
| Used for WriteSize() More...
|
|
static const size_t | k_FILE_BLOCK_SIZE = (32 * 1024) |
| default arbitrary transfer block size. more than this is NOT more efficient. More...
|
|
HRESULT | onReq_Error () |
|
HRESULT | onReq_Interfaces () |
| Request a list of cXObject definitions. More...
|
|
HRESULT | onReq_InterfaceDef () |
| Request the interface definition information from the server. More...
|
|
HRESULT | onReq_Prop () |
| Request prop. More...
|
|
HRESULT | onReq_Props () |
| Request props. More...
|
|
HRESULT | onReq_Invoke () |
| Client Requests a method invocation. More...
|
|
HRESULT | onReq_Tags () |
|
HRESULT | onReq_TagDef () |
|
HRESULT | onReq_File () |
|
virtual HRESULT | onReq_File (const FILECHAR_t *pszReqName, size_t nFilePos) |
|
HRESULT | onReq_Ping () |
|
virtual HRESULT | onX_Error (HRESULT hResRet, const cVariant &vVal) override |
|
HRESULT | onSet_Prop () |
| Client wants to set a prop on some object. More...
|
|
HRESULT | onSet_Tag () |
| Client wants to set a tag on some object. More...
|
|
HRESULT | onSet_TagDef () |
|
HRESULT | onSet_File () |
|
virtual HRESULT | ProcessStreamRxMsg () override |
|
| cXProtocolRx (cXProtocolBase &rBase, cStreamInput *pStreamRx) |
|
virtual | ~cXProtocolRx () |
|
virtual HRESULT | onXSet_Prop (cXObject *pObj, const cScriptableProp *pProp, const cVariant &vVal) |
|
virtual HRESULT | onXReq_Invoke (cXObject *pObj, const cScriptableMethod *pMethod, const cVariant &vArgs, OUT cVariant &vValRet) |
|
virtual HRESULT | onXSet_PropN (UID_t uidLastRx, const ATOMCHAR_t *pszPropName, ATOMCODE_t nPropName, const cVariant &vVal) |
|
virtual HRESULT | onXReq_InvokeN (UID_t uidLastRx, const ATOMCHAR_t *pszMethodName, ATOMCODE_t nMethodName, const cVariant &vArgs) |
|
virtual HRESULT | onXSet_File (const FILECHAR_t *pszReqName, size_t dwTotalLen) |
|
void | InitRx () |
|
HRESULT | ReadUID () |
|
HRESULT | on_Error () |
|
HRESULT | onSet_PropN () |
|
HRESULT | onReq_InvokeN () |
|
HRESULT | onSet_File () |
|
HRESULT | onSet_FileNext () |
|
cStreamInput & | get_StreamRx () |
|
void | InitTx () |
|
HRESULT | Send_MsgPropName (const ATOMCHAR_t *pszPropName) |
|
cStreamOutput & | get_StreamTx () const |
|
| cXProtocolTx (cXProtocolBase &rBase, cStreamOutput *pStreamTx) |
|
virtual | ~cXProtocolTx () |
|
bool | IsTxMsgBuilding () const |
|
HRESULT | Send_MsgHeader (XPROTO_t bMsg) |
|
HRESULT | Send_MsgHeaderUID (XPROTO_t bMsg, UID_t uid) |
|
void | Send_MsgEnd () |
|
HRESULT | Send_Error (HRESULT hResRet, const cVariant &vVal) |
|
HRESULT | Send_PropN (UID_t uid, const ATOMCHAR_t *pszPropName, const cVariant &vVal) |
|
HRESULT | Send_PropN (cXObject *pObj, const ATOMCHAR_t *pszPropName, const cVariant &vValRet) |
|
HRESULT | Send_PropN (cXObject *pObj, const cScriptableProp *pProp, const cVariant &vValRet) |
|
HRESULT | Request_InvokeN (UID_t uid, const ATOMCHAR_t *pszPropName, const cVariant &vArgs) |
|
HRESULT | Request_InvokeN (UID_t uid, const ATOMCHAR_t *pszPropName) |
|
HRESULT | Request_InvokeN (cXObject *pObj, const ATOMCHAR_t *pszPropName, const cVariant &vArgs) |
|
HRESULT | Request_InvokeN (cXObject *pObj, const ATOMCHAR_t *pszPropName) |
|
HRESULT | Request_InvokeN (cXObject *pObj, const cScriptableMethod *pMethod, const cVariant &vArgs) |
|
HRESULT | Send_FileChecked (const FILECHAR_t *pszSrcPath, const FILECHAR_t *pszDestName) |
|
HRESULT | Send_File (const FILECHAR_t *pszSrcPath, const FILECHAR_t *pszDestName, FILE_SIZE_t nOffsetStart, FILE_SIZE_t nSize) |
|
HRESULT | Send_FileNext () |
|
cStreamInput * | m_pStreamInp |
| for use with ProcessStreamPacket() More...
|
|
cStreamOutput * | m_pStreamOut |
| TX responses back to the remote client go here. (e.g. cNetServerConnection->cNetStream) More...
|
|
cString | m_sName |
| a user readable name. Usually the IP address or reverse DNS lookup. can be upgraded as lookup or login becomes avail. m_pClient->get_Name() More...
|
|
cXProtocolBase & | m_rBase |
| Input stream. More...
|
|
cStreamInput * | m_pStreamRx |
| Where to RX from. More...
|
|
SCRIPTINTERFACEID_t | m_bInterfaceIDUnk |
| An interface received that I don't understand (yet)! client only. More...
|
|
XPROTO_t | m_bMsgReading |
| We are in the process of reading/dispatching a message. More...
|
|
XPROTO_t | m_bMsgReadPrev |
| Last message i got and understood. for debug. More...
|
|
int | m_iMsgNumRx |
| Count the messages we received. More...
|
|
UID_t | m_uidLastRx |
| Last UID sent from client. ( be careful order of messages does not change!) More...
|
|
cXProtocolBase & | m_rBase |
| My parent. dumb pointer. More...
|
|
cStreamOutput * | m_pStreamTx |
| Where to TX to. More...
|
|
XPROTO_t | m_bMsgBuilding |
| We are in the process of building a message. not called Send_MsgEnd() yet. More...
|
|
bool | m_bFileSending |
| Must call Send_FileNext() until done. More...
|
|
int | m_iMsgNumTx |
| Count the messages we transmit. More...
|
|
UID_t | m_uidLastTx |
| Last UID i sent. Periodically resend this just in case the other side gets out of sync ? More...
|
|