8 #ifndef OPENDDS_DCPS_REPLAYERIMPL_H 9 #define OPENDDS_DCPS_REPLAYERIMPL_H 21 #ifndef OPENDDS_NO_CONTENT_SUBSCRIPTION_PROFILE 28 #include <dds/DdsDcpsDomainC.h> 29 #include <dds/DdsDcpsTopicC.h> 37 #if !defined (ACE_LACKS_PRAGMA_ONCE) 48 class SendStateDataSampleList;
49 class DataSampleElement;
93 const RawDataSampleList& samples );
104 virtual GUID_t get_guid()
const;
113 bool dropped_by_transport);
117 bool dropped_by_transport);
119 virtual void notify_publication_disconnected(
const ReaderIdSeq& subids);
120 virtual void notify_publication_reconnected(
const ReaderIdSeq& subids);
121 virtual void notify_publication_lost(
const ReaderIdSeq& subids);
128 virtual void retrieve_inline_qos_data(
InlineQosData& qos_data)
const;
131 virtual void add_association(
const GUID_t& yourId,
135 virtual void remove_associations(
const ReaderIdSeq& readers,
142 virtual void update_subscription_params(
const GUID_t& readerId,
145 void remove_all_associations();
147 virtual void register_for_reader(
const GUID_t& participant,
153 virtual void unregister_for_reader(
const GUID_t& participant,
162 return participant_servant_;
177 bool content_filter);
178 bool need_sequence_repair()
const;
181 void lookup_instance_handles(
const ReaderIdSeq& ids,
213 void association_complete_i(
const GUID_t& remote_id);
215 friend class ::DDS_TEST;
Implements the OpenDDS::DCPS::DomainParticipant interfaces.
Defines the interface for Discovery callbacks into the DataWriter.
Implements the OpenDDS::DCPS::Entity interfaces.
DDS::DomainId_t domain_id() const
sequence< InstanceHandle_t > InstanceHandleSeq
Send raw data samples in the system.
unique_ptr< DataBlockAllocator > db_allocator_
Base class to hold configuration settings for TransportImpls.
DDS::DataWriterQos qos_
The qos policy list of this datawriter.
#define OpenDDS_Dcps_Export
RepoIdToHandleMap id_to_handle_map_
unique_ptr< DataSampleElementAllocator > sample_list_element_allocator_
PublisherImpl * publisher_servant_
The publisher servant which creates this datawriter.
sequence< TransportLocator > TransportLocatorSeq
ACE_Recursive_Thread_Mutex lock_
The sample data container.
unique_ptr< DataSampleHeaderAllocator > header_allocator_
RepoIdToSequenceMap idToSequence_
Implementation of Replayer functionality.
size_t association_chunk_multiplier_
The multiplier for allocators affected by associations.
TopicDescriptionPtr< TopicImpl > topic_servant_
The topic servant.
Implements the OpenDDS::DCPS::Publisher interfaces.
DomainParticipantImpl * participant()
Implements the DDS::Topic interface.
sequence< GUID_t > ReaderIdSeq
RepoIdToReaderInfoMap reader_info_
DOMAINID_TYPE_NATIVE DomainId_t
unique_ptr< MessageBlockAllocator > mb_allocator_
GUID_t publication_id_
The repository id of this datawriter/publication.
DDS::PublicationMatchedStatus publication_match_status_
SequenceNumber get_max_sn() const
typedef OPENDDS_MAP_CMP(GUID_t, WriterCoherentSample, GUID_tKeyLessThan) GroupCoherentSamples
DomainParticipantImpl * participant_servant_
CORBA::String_var type_name_
The type name of associated topic.
DDS::DataWriterQos passed_qos_
int data_dropped_count_
Statistics counter.
size_t n_chunks_
The number of chunks for the cached allocator.
GUID_t topic_id_
The associated topic repository id.
DDS::StatusMask listener_mask_
HANDLE_TYPE_NATIVE InstanceHandle_t
Mix-in class for DDS entities which directly use the transport layer.
virtual void replay_durable_data_for(const GUID_t &)
SequenceNumber sequence_number_
The sequence number unique in DataWriter scope.
DDS::PublisherQos publisher_qos_
Sequence number abstraction. Only allows positive 64 bit values.
virtual DCPS::WeakRcHandle< ICE::Endpoint > get_ice_endpoint()
DDS::Topic_var topic_objref_
The object reference of the associated topic.
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
::DDS::ReturnCode_t write(in<%SCOPED%> instance_data, in ::DDS::InstanceHandle_t handle)
SequenceNumber expected_sequence_
ReplayerListener_rch listener_
Used to notify the entity for relevant events.
DDS::DomainId_t domain_id_
The domain id.
int data_delivered_count_
ConditionVariable< ACE_Recursive_Thread_Mutex > empty_condition_
bool is_bit_
The time interval for sending liveliness message.
The Internal API and Implementation of OpenDDS.
Defines the interface that allows DataWriters (and lower levels) to inform discovery.
CORBA::String_var topic_name_
The name of associated topic.
DDS::OfferedIncompatibleQosStatus offered_incompatible_qos_status_
Status conditions.
sequence< string > StringSeq