| 
    rmw_fastrtps_shared_cpp
    master
    
   Code shared on static and dynamic type support of rmw_fastrtps_cpp. 
   | 
 
 
 
 
Go to the documentation of this file.
   15 #ifndef RMW_FASTRTPS_SHARED_CPP__CUSTOM_PUBLISHER_INFO_HPP_ 
   16 #define RMW_FASTRTPS_SHARED_CPP__CUSTOM_PUBLISHER_INFO_HPP_ 
   20 #include <condition_variable> 
   23 #include "fastrtps/publisher/Publisher.h" 
   24 #include "fastrtps/publisher/PublisherListener.h" 
   55   : deadline_changes_(false),
 
   56     liveliness_changes_(false),
 
   57     conditionMutex_(nullptr),
 
   58     conditionVariable_(nullptr)
 
   67     eprosima::fastrtps::Publisher * pub, eprosima::fastrtps::rtps::MatchingInfo & info) 
final 
   71     if (eprosima::fastrtps::rtps::MATCHED_MATCHING == info.status) {
 
   72       subscriptions_.insert(info.remoteEndpointGuid);
 
   73     } 
else if (eprosima::fastrtps::rtps::REMOVED_MATCHING == info.status) {
 
   74       subscriptions_.erase(info.remoteEndpointGuid);
 
   80   on_offered_deadline_missed(
 
   81     eprosima::fastrtps::Publisher * publisher,
 
   82     const eprosima::fastrtps::OfferedDeadlineMissedStatus & status) 
final;
 
   87     eprosima::fastrtps::Publisher * publisher,
 
   88     const eprosima::fastrtps::LivelinessLostStatus & status) 
final;
 
  104     return subscriptions_.size();
 
  111     conditionMutex_ = conditionMutex;
 
  112     conditionVariable_ = conditionVariable;
 
  119     conditionMutex_ = 
nullptr;
 
  120     conditionVariable_ = 
nullptr;
 
  129   std::atomic_bool deadline_changes_;
 
  130   eprosima::fastrtps::OfferedDeadlineMissedStatus offered_deadline_missed_status_
 
  133   std::atomic_bool liveliness_changes_;
 
  134   eprosima::fastrtps::LivelinessLostStatus liveliness_lost_status_
 
  141 #endif  // RMW_FASTRTPS_SHARED_CPP__CUSTOM_PUBLISHER_INFO_HPP_ 
  
const void * type_support_impl_
Definition: custom_publisher_info.hpp:42
 
rmw_fastrtps_shared_cpp::TypeSupport * type_support_
Definition: custom_publisher_info.hpp:41
 
#define RCPPUTILS_TSA_GUARDED_BY(x)
 
Definition: TypeSupport.hpp:41
 
#define RMW_FASTRTPS_SHARED_CPP_PUBLIC
Definition: visibility_control.h:50
 
virtual ~CustomPublisherInfo()=default
 
Definition: custom_publisher_info.hpp:35
 
EventListenerInterface * getListener() const final
 
PubListener * listener_
Definition: custom_publisher_info.hpp:40
 
Definition: custom_publisher_info.hpp:51
 
void detachCondition()
Unset the information from attachCondition.
Definition: custom_publisher_info.hpp:116
 
const char * typesupport_identifier_
Definition: custom_publisher_info.hpp:44
 
eprosima::fastrtps::Publisher * publisher_
Definition: custom_publisher_info.hpp:39
 
size_t subscriptionCount()
Definition: custom_publisher_info.hpp:101
 
void attachCondition(std::mutex *conditionMutex, std::condition_variable *conditionVariable)
Connect a condition variable so a waiter can be notified of new data.
Definition: custom_publisher_info.hpp:108
 
rmw_gid_t publisher_gid
Definition: custom_publisher_info.hpp:43
 
PubListener(CustomPublisherInfo *info)
Definition: custom_publisher_info.hpp:54
 
void onPublicationMatched(eprosima::fastrtps::Publisher *pub, eprosima::fastrtps::rtps::MatchingInfo &info) final
Definition: custom_publisher_info.hpp:66
 
Definition: custom_event_info.hpp:98
 
Definition: custom_event_info.hpp:39