23 #include <fastdds/dds/topic/TopicDataType.hpp>
24 #include <fastrtps/attributes/ParticipantAttributes.h>
27 #ifdef USE_DEPRECATION
28 #if defined(__GNUC__) || defined(__clang__)
29 #define DEPRECATED __attribute__ ((deprecated))
30 #elif defined(_MSC_VER)
31 #define DEPRECATED __declspec(deprecated)
42 class ParticipantListener;
44 class ParticipantImpl;
46 class PublisherAttributes;
47 class PublisherListener;
49 class SubscriberAttributes;
50 class SubscriberListener;
70 const std::string& participant_profile,
95 const std::string& publisher_profile,
122 const std::string& subscriber_profile,
170 const char* typeName,
171 fastdds::dds::TopicDataType** type);
181 fastdds::dds::TopicDataType * type);
201 const char* typeName);
217 typedef std::pair<Participant*,ParticipantImpl*> t_p_Participant;
223 static std::mutex m_mutex;
225 static std::vector<t_p_Participant> m_participants;
227 static bool default_xml_profiles_loaded;
Class Domain, use to interact with the Publisher Subscriber API of the Fast RTPS implementation.
Definition: Domain.h:61
static RTPS_DllAPI Publisher * createPublisher(Participant *part, const std::string &publisher_profile, PublisherListener *listen=nullptr)
Create a Publisher in a Participant from a profile name.
RTPS_DllAPI static DEPRECATED Participant * createParticipant(const ParticipantAttributes &att, ParticipantListener *listen=nullptr)
Create a Participant.
static RTPS_DllAPI void getDefaultParticipantAttributes(ParticipantAttributes &participant_attributes)
Fills participant_attributes with the default values.
static RTPS_DllAPI Subscriber * createSubscriber(Participant *part, const std::string &subscriber_profile, SubscriberListener *listen=nullptr)
Create a Subscriber in a Participant from a profile name.
static RTPS_DllAPI Subscriber * createSubscriber(Participant *part, const SubscriberAttributes &att, SubscriberListener *listen=nullptr)
Create a Subscriber in a Participant.
static RTPS_DllAPI bool removeParticipant(Participant *part)
Remove a Participant and all associated publishers and subscribers.
static RTPS_DllAPI bool removePublisher(Publisher *pub)
Remove a Publisher.
static RTPS_DllAPI Publisher * createPublisher(Participant *part, const PublisherAttributes &att, PublisherListener *listen=nullptr)
Create a Publisher in a Participant.
static RTPS_DllAPI void getDefaultPublisherAttributes(PublisherAttributes &publisher_attributes)
Fills publisher_attributes with the default values.
static RTPS_DllAPI bool registerType(Participant *part, fastdds::dds::TopicDataType *type)
Register a type in a participant.
static RTPS_DllAPI bool getRegisteredType(Participant *part, const char *typeName, fastdds::dds::TopicDataType **type)
Return a registered type.
static RTPS_DllAPI void getDefaultSubscriberAttributes(SubscriberAttributes &subscriber_attributes)
Fills subscriber_attributes with the default values.
RTPS_DllAPI static DEPRECATED Participant * createParticipant(const std::string &participant_profile, ParticipantListener *listen=nullptr)
Create a Participant from a profile name.
static RTPS_DllAPI bool loadXMLProfilesFile(const std::string &xml_profile_file)
Load profiles from XML file.
static RTPS_DllAPI bool removeSubscriber(Subscriber *sub)
Remove a Subscriber.
static RTPS_DllAPI void stopAll()
Stop and remove all participants, publishers and subscribers in this Domain.
static RTPS_DllAPI bool registerDynamicType(Participant *part, types::DynamicPubSubType *type)
Register a type in a participant.
static RTPS_DllAPI bool unregisterType(Participant *part, const char *typeName)
Unregister a type in a participant.
Class ParticipantAttributes, used by the user to define the attributes of a Participant.
Definition: ParticipantAttributes.h:35
Class Participant used to group Publishers and Subscribers into a single working unit.
Definition: Participant.h:47
Class ParticipantListener, overrides behaviour towards certain events.
Definition: ParticipantListener.h:37
Class PublisherAttributes, used by the user to define the attributes of a Publisher.
Definition: PublisherAttributes.h:40
Class Publisher, used to send data to associated subscribers.
Definition: Publisher.h:47
Class PublisherListener, allows the end user to implement callbacks triggered by certain events.
Definition: PublisherListener.h:37
Class SubscriberAttributes, used by the user to define the attributes of a Subscriber.
Definition: SubscriberAttributes.h:41
Class Subscriber, contains the public API that allows the user to control the reception of messages.
Definition: Subscriber.h:43
Class SubscriberListener, it should be used by the end user to implement specific callbacks to certai...
Definition: SubscriberListener.h:41
Definition: DynamicPubSubType.h:29
eProsima namespace.
Definition: LibrarySettingsAttributes.h:23