Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cXProtocolServerTx Class Reference

#include <cXProtocolServer.h>

Inheritance diagram for GrayLib::cXProtocolServerTx:
GrayLib::cXProtocolTx GrayLib::cXProtocolServerStream GrayLib::cXProtocolServerStreamImpl

Public Member Functions

 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)
 

Additional Inherited Members

- Protected Member Functions inherited from GrayLib::cXProtocolTx
void InitTx ()
 
HRESULT Send_MsgPropName (const ATOMCHAR_t *pszPropName)
 
cStreamOutputget_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 ()
 
- Protected Attributes inherited from GrayLib::cXProtocolTx
cXProtocolBasem_rBase
 My parent. dumb pointer. More...
 
cStreamOutputm_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...
 

Detailed Description

Messages the server is sending. I can send these packets to multiple clients. (non encrypted yet)

Constructor & Destructor Documentation

◆ cXProtocolServerTx()

GrayLib::cXProtocolServerTx::cXProtocolServerTx ( cXProtocolBase rBase,
cStreamOutput pOut 
)

◆ ~cXProtocolServerTx()

GrayLib::cXProtocolServerTx::~cXProtocolServerTx ( )
virtual

Member Function Documentation

◆ Send_InterfaceDef() [1/2]

HRESULT GrayLib::cXProtocolServerTx::Send_InterfaceDef ( const cScriptableInterfaceDef pInterfaceDef)

bInterfaceID = SCRIPTINTERFACEID_MAX means nothing to me ? Send the interfaces list of methods and props. filter these by the privlevel i have.

◆ Send_InterfaceDef() [2/2]

HRESULT GrayLib::cXProtocolServerTx::Send_InterfaceDef ( SCRIPTINTERFACEID_t  bInterfaceID)

bInterfaceID = SCRIPTINTERFACEID_MAX means nothing to me here

◆ Send_InterfaceDefs() [1/2]

HRESULT GrayLib::cXProtocolServerTx::Send_InterfaceDefs ( cXObject pObj)

Send all the interface defs for the object.

◆ Send_InterfaceDefs() [2/2]

HRESULT GrayLib::cXProtocolServerTx::Send_InterfaceDefs ( UID_t  uid)

◆ Send_Interfaces()

HRESULT GrayLib::cXProtocolServerTx::Send_Interfaces ( cXObject pObj)

Client requested interfaces for an object. Send them.

◆ Send_InvokeResponse() [1/2]

HRESULT GrayLib::cXProtocolServerTx::Send_InvokeResponse ( cXObject pObj,
const cScriptableMethod pMethod,
const cVariant vValRet 
)

XPROTO_Invoke some methods send a response if ! vValRet.isEmptyVar()

◆ Send_InvokeResponse() [2/2]

HRESULT GrayLib::cXProtocolServerTx::Send_InvokeResponse ( UID_t  uid,
SCRIPTINTERFACEID_t  bInterfaceID,
SCRIPTPROPID_t  bMethodIndex,
const cVariant vValRet 
)

XPROTO_Invoke some methods send a response if ! vValRet.isEmptyVar()

◆ Send_InvokeResponseV()

HRESULT GrayLib::cXProtocolServerTx::Send_InvokeResponseV ( const cVariant vValRet)

Send unrequested data to the client. Send this as no particular interface or method response.

Note
server uses this to send log messages back to the client ?

◆ Send_Prop() [1/2]

HRESULT GrayLib::cXProtocolServerTx::Send_Prop ( cXObject pObj,
const cScriptableProp pProp,
const cVariant vVal 
)

Request a prop and get a response

◆ Send_Prop() [2/2]

HRESULT GrayLib::cXProtocolServerTx::Send_Prop ( UID_t  uid,
SCRIPTINTERFACEID_t  bInterfaceID,
SCRIPTPROPID_t  bPropIndex,
const cVariant vVal 
)

Send the property to the client that requested it.

◆ Send_PropGet()

HRESULT GrayLib::cXProtocolServerTx::Send_PropGet ( cXObject pObj,
const cScriptableProp pProp 
)

XPROTO_Prop Send objects prop value to the client. request a prop and get a response this possibly because it has been triggers to send on change.

◆ Send_Props() [1/2]

HRESULT GrayLib::cXProtocolServerTx::Send_Props ( cXObject pObj,
const cScriptableInterfaceDef pInterfaceDef 
)

XPROTO_Props Send this possibly because it has been triggers to send on change. Send a group of props. Does client have PLEVEL_TYPE for this ?

◆ Send_Props() [2/2]

HRESULT GrayLib::cXProtocolServerTx::Send_Props ( cXObject pObj,
SCRIPTINTERFACEID_t  bInterfaceID 
)

◆ Send_PropsI()

HRESULT GrayLib::cXProtocolServerTx::Send_PropsI ( cXObject pObj,
const cScriptableInterfaceDef pInterfaceDef 
)

Consumed by on_Props(). send all props for an interface on an object.

◆ Send_TagDef()

HRESULT GrayLib::cXProtocolServerTx::Send_TagDef ( cAtomRef  atomref)

◆ Send_Tags()

HRESULT GrayLib::cXProtocolServerTx::Send_Tags ( cXObject pObj,
bool  bSendIfEmpty 
)

XPROTO_Tags Send a request for tag defs.


The documentation for this class was generated from the following files: