XWOS API  4.0
XWOS C/C++ API参考手册
载入中...
搜索中...
未找到
XwsscProxy.hxx
浏览该文件的文档.
1
13#ifndef __xwmd_isc_xwssc_cxx_XwsscProxy_hxx__
14#define __xwmd_isc_xwssc_cxx_XwsscProxy_hxx__
15
16extern "C" {
17#include "xwmd/isc/xwssc/mi.h"
18}
19
20namespace xwisc {
21
33{
34 private:
35 struct xwssc * mProxy;
40 public:
41 XwsscProxy(struct xwssc * xwssc, xwu8_t port, xwu8_t default_priority, xwu8_t default_qos);
42 XwsscProxy() = delete;
44
62 xwer_t write(const xwu8_t data[], xwsz_t * size);
63
83 xwer_t write(const xwu8_t data[], xwsz_t * size, xwu8_t pri, xwu8_t qos);
84
108 xwer_t write(const xwu8_t data[], xwsz_t * size, xwtm_t to);
109
135 xwer_t write(const xwu8_t data[], xwsz_t * size, xwu8_t pri, xwu8_t qos, xwtm_t to);
136
148 xwer_t asyncWrite(const xwu8_t data[], xwsz_t * size, xwssc_txh_t * txhbuf);
149
163 xwer_t asyncWrite(const xwu8_t data[], xwsz_t * size,
164 xwu8_t pri, xwu8_t qos, xwssc_txh_t * txhbuf);
165
180 xwer_t abortAsyncWrite(xwssc_txh_t txh);
181
189 enum xwssc_carrier_state_em getAsyncWriteState(xwssc_txh_t txh) {
190 return (enum xwssc_carrier_state_em)xwssc_get_txstate(txh);
191 }
192
208 xwer_t read(xwu8_t rxbuf[], xwsz_t * size);
209
231 xwer_t read(xwu8_t rxbuf[], xwsz_t * size, xwu8_t * qos, xwtm_t to);
232
248 xwer_t tryRead(xwu8_t rxbuf[], xwsz_t * size);
249
266 xwer_t tryRead(xwu8_t rxbuf[], xwsz_t * size, xwu8_t * qos);
267
268 protected:
269 virtual void onAsyncWrited(xwssc_txh_t txh, xwer_t rc);
270
271
272 private:
273 static void sOnAsyncWrited(struct xwssc * xwssc, xwssc_txh_t txh,
274 xwer_t rc, void * arg);
275};
276
281} // namespace xwisc
282
283#endif /* xwmd/isc/xwssc/cxx/XwsscProxy.hxx */
XWSSC端口代理
static void sOnAsyncWrited(struct xwssc *xwssc, xwssc_txh_t txh, xwer_t rc, void *arg)
virtual void onAsyncWrited(xwssc_txh_t txh, xwer_t rc)
xwer_t asyncWrite(const xwu8_t data[], xwsz_t *size, xwssc_txh_t *txhbuf)
异步发送数据
xwer_t write(const xwu8_t data[], xwsz_t *size)
发送数据,并同步等待发送结果
xwer_t read(xwu8_t rxbuf[], xwsz_t *size)
接收数据,若数据为空,就无限等待
enum xwssc_carrier_state_em getAsyncWriteState(xwssc_txh_t txh)
获取异步发送状态
xwer_t tryRead(xwu8_t rxbuf[], xwsz_t *size)
尝试接收消息,若接收队列为空,立即返回错误码
struct xwssc * mProxy
xwer_t abortAsyncWrite(xwssc_txh_t txh)
中断异步发送
xws64_t xwtm_t
XWOS系统时间 (有符号)
Definition type.h:742
signed long xwer_t
Definition type.h:554
unsigned long xwsz_t
Definition type.h:339
uint8_t xwu8_t
Definition type.h:194
Definition Xwcq.hxx:20
XWSSC对象
Definition protocol.h:156