Skip to content

Commit 7efb9f0

Browse files
Extend DomainParticipantFactory.i API
Signed-off-by: Lucia Echevarria <luciaechevarria@eprosima.com>
1 parent 8c1455a commit 7efb9f0

1 file changed

Lines changed: 28 additions & 0 deletions

File tree

fastdds_python/src/swig/fastdds/dds/domain/DomainParticipantFactory.i

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,34 @@
4848
return self->create_participant(domain_id, qos, listener, mask);
4949
}
5050

51+
/**
52+
* Create a Participant.
53+
*
54+
* @param extended_qos DomainParticipantExtendedQos Reference.
55+
* @param listener DomainParticipantListener Pointer (default: nullptr)
56+
* @param mask StatusMask Reference (default: all)
57+
* @return DomainParticipant pointer. (nullptr if not created.)
58+
*/
59+
DomainParticipant* create_participant(
60+
const DomainParticipantExtendedQos& extended_qos,
61+
DomainParticipantListener* listener = nullptr,
62+
const StatusMask& mask = eprosima::fastdds::dds::StatusMask::all())
63+
{
64+
if (nullptr != listener)
65+
{
66+
Swig::Director* director = SWIG_DIRECTOR_CAST(listener);
67+
68+
if (nullptr != director)
69+
{
70+
SWIG_PYTHON_THREAD_BEGIN_BLOCK;
71+
Py_INCREF(director->swig_get_self());
72+
SWIG_PYTHON_THREAD_END_BLOCK;
73+
}
74+
}
75+
76+
return self->create_participant(extended_qos.domainId(), extended_qos, listener, mask);
77+
}
78+
5179
/**
5280
* Create a Participant.
5381
*

0 commit comments

Comments
 (0)