思澈科技软件开发工具包  2.20
Data service Subscriber functions

Data Service subscriber function API. More...

Macros

#define datac_subscribe(handle, service_name, cbk, user_data)   datac_subscribe_ex(handle,service_name,cbk,user_data,NULL)
 Subscribe to service. More...
 
#define datac_unsubscribe(handle)   datac_unsubscribe_ex(handle, false)
 Unsubscribe to service. More...
 

Functions

datac_handle_t datac_open (void)
 Allocate data client handle. More...
 
rt_err_t datac_close (datac_handle_t handle)
 Close data client handle. More...
 
void datac_subscribe_ex (datac_handle_t handle, char *service_name, data_callback_t cbk, uint32_t user_data, rt_mq_t mq)
 Subscribe to service. More...
 
rt_err_t datac_unsubscribe_ex (datac_handle_t handle, bool force)
 Unsubscribe to service. More...
 
void datac_delayed_usr_cbk (data_service_mq_t *arg_msg)
 Delayed subscriber call back, this will trigger subscriber callback from user defined task. More...
 
rt_err_t datac_config (datac_handle_t handle, uint16_t len, uint8_t *config)
 Configure the specific data provider,. More...
 
rt_err_t datac_send_msg (datac_handle_t handle, data_msg_t *msg)
 Send message to service provider. More...
 
rt_err_t datac_tx (datac_handle_t handle, uint16_t len, uint8_t *data)
 Send data to service provider. More...
 
rt_err_t datac_rx (datac_handle_t handle, uint16_t len, uint8_t *data)
 Read data from service provider. More...
 
rt_err_t datac_ping (datac_handle_t handle, uint8_t mode)
 ping device from service provider More...
 

Detailed Description

Data Service subscriber function API.

Macro Definition Documentation

◆ datac_subscribe

#define datac_subscribe (   handle,
  service_name,
  cbk,
  user_data 
)    datac_subscribe_ex(handle,service_name,cbk,user_data,NULL)

Subscribe to service.

Parameters
[in]handleHandle of data service
[in]service_nameService name
[in]cbkCallbacks to handel data service
[in]user_dataCallbacks context, transparent to service provider.
Return values
void

◆ datac_unsubscribe

#define datac_unsubscribe (   handle)    datac_unsubscribe_ex(handle, false)

Unsubscribe to service.

Parameters
[in]handleHandle of data service
Return values
RT_EOKif successful, otherwise return error number < 0.

Function Documentation

◆ datac_close()

rt_err_t datac_close ( datac_handle_t  handle)

Close data client handle.

Parameters
[in]handleHandle of data service

If service is subscribed by the handle, it's unsubscribed autuomatically

Return values
RT_EOKif successful, otherwise return error number < 0.

◆ datac_config()

rt_err_t datac_config ( datac_handle_t  handle,
uint16_t  len,
uint8_t *  config 
)

Configure the specific data provider,.

Note
data provider will decide which config will be used compare to existing configs.
Parameters
[in]handleHandle of data service
[in]lenLength of config
[in]configConfiguration content
Return values
RT_EOKif successful, otherwise return error number < 0.

◆ datac_delayed_usr_cbk()

void datac_delayed_usr_cbk ( data_service_mq_t arg_msg)

Delayed subscriber call back, this will trigger subscriber callback from user defined task.

Parameters
[in]arg_msgmsg

◆ datac_open()

datac_handle_t datac_open ( void  )

Allocate data client handle.

Returns
data client handle

◆ datac_ping()

rt_err_t datac_ping ( datac_handle_t  handle,
uint8_t  mode 
)

ping device from service provider

Parameters
[in]handleHandle of data service
[in]modeping mode
Return values
RT_EOKif successful, otherwise return error number < 0.

◆ datac_rx()

rt_err_t datac_rx ( datac_handle_t  handle,
uint16_t  len,
uint8_t *  data 
)

Read data from service provider.

Parameters
[in]handleHandle of data service
[in]lenLength of data
[in,out]dataservice data content readback
Return values
RT_EOKif successful, otherwise return error number < 0.

◆ datac_send_msg()

rt_err_t datac_send_msg ( datac_handle_t  handle,
data_msg_t msg 
)

Send message to service provider.

Parameters
[in]handleHandle of data service
[in]msgMessage send to service provider
Return values
RT_EOKif successful, otherwise return error number < 0.

◆ datac_subscribe_ex()

void datac_subscribe_ex ( datac_handle_t  handle,
char *  service_name,
data_callback_t  cbk,
uint32_t  user_data,
rt_mq_t  mq 
)

Subscribe to service.

Parameters
[in]handleHandle of data service
[in]service_nameService name
[in]cbkCallbacks to handel data service
[in]user_dataCallbacks context, transparent to service provider.
[in]mqinstead of callback directly, send message to mq to issue callback from different task.
Return values
void

◆ datac_tx()

rt_err_t datac_tx ( datac_handle_t  handle,
uint16_t  len,
uint8_t *  data 
)

Send data to service provider.

Parameters
[in]handleHandle of data service
[in]lenLength of data
[in]dataservice data content
Return values
RT_EOKif successful, otherwise return error number < 0.

◆ datac_unsubscribe_ex()

rt_err_t datac_unsubscribe_ex ( datac_handle_t  handle,
bool  force 
)

Unsubscribe to service.

Parameters
[in]handleHandle of data service
[in]forceif true, will immediatly stop all callbacks to subscriber, including unsubscribe response.
Return values
RT_EOKif successful, otherwise return error number < 0.