# DomainParticipantFactory
DomainParticipantFactory(域参与者工厂)是中间件中预先存在的单例对象,用于创建和销毁域参与者。DomainParticipantFactory 的主要接口如下表所示,本文只对常用接口进行详细说明,其他可参考 DDS 规范。
表 1 DomainParticipantFactory 接口
接口函数 | 接口功能 |
---|---|
create_participant | 创建域参与者 |
delete_participant | 删除域参与者 |
# Create_participant
1) 函数原型
DomainParticipant* create_participant(_DOMAINID_T DomainId,
const DomainParticipantQos& QoS,
DomainParticipantListener* pDomainParticipantListener,
StatusMask mask);
1
2
3
4
2
3
4
2) 功能简介
通过传入的域,Qos 和监听器参数来创建唯一的域参与者,创建完成后可用于后续对 Publisher 和 Subscriber 的管理。
3) 输入参数
_DOMAINID_T DomainId [in]:域 ID,域参与者所在的域的唯一标识。
DomainParticipantQos& QoS [in]:域参与者 QoS,表示本域参与者采用的 QoS 策略。
DomainParticipantListener* pDomainParticipantListener [in]:域参与者监听器,当域参与者发生特定事件时,监听器将调用回调函数进行响应。
StatusMask mask[in]:状态掩码,用于指定哪些特定事件会触发监听器的回调。
4) 输出参数
无。
5) 返回值
若成功执行则返回创建成功的域参与者对象的指针,否则返回空指针 NULL。
# Delete_participant
1) 函数原型
ReturnCode_t delete_participant(
DomainParticipant* & pDomainParticipant);
1
2
2
2) 功能简介
删除域参与者。注意删除域参与者之前需要首先删除该域参与者创建的所有实体。
3) 输入参数
DomainParticipant* & pDomainParticipant [in]:要删除的域参与者对象。
4) 输出参数
无。
5) 返回值
若成功执行则返回创建 0(RETCODE_OK),否则返回错误码。
← 概述 DomainParticipant →