# Subscriber
Subscriber(订阅者)用于创建和管理一组DataReader的活动。Subscriber的主要接口如下表所示,本文只对常用接口进行详细说明,其他可参考DDS规范。
表 1 Subscriber 接口
接口函数 | 接口功能 |
---|---|
create_datareader | 创建DataReader |
delete_datareader | 删除DataReader |
# Create_datareader
1) 函数原型
DataReader* create_datareader(TopicDescription* pTopic,
const DataReaderQos& Qos,
DataReaderListener* pDataReaderListener,
StatusMask mask);
1
2
3
4
5
2
3
4
5
2) 功能简介
创建DataReader,指定要订阅的主题,并绑定参数中的QoS和监听器。创建完成的DataReader可用于主题数据的按需接收。
3) 输入参数
Topic* pTopic [in]:要订阅的主题对象指针。
const DataReaderQos & Qos [in]:DataReader QoS,表示本DataReader采用的QoS策略。
DataReaderListener * pDataReaderListener [in]:DataReader监听器,当DataReader发生特定事件时,监听器将调用回调函数进行响应。
StatusMask mask [in]:状态掩码,用于指定哪些特定事件会触发监听器的回调。
4) 输出参数
无。
5) 返回值
若成功执行则返回创建成功的DataReader对象的指针,否则返回空指针NULL。
# Delete_datareader
1) 函数原型
ReturnCode_t delete_datareader(DataReader* pDataReader);
1
2) 功能简介
删除指定的DataReader对象。
3) 输入参数
DataReader* pDataReader [in]:要删除的DataReader对象。
4) 输出参数
无。
5) 返回值
若成功执行则返回创建0(RETCODE_OK),否则返回错误码。
← DataWriter DataReader →